| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588
|
Вот собственно в этом вся и разница: у Вас учебный пример, у меня просто решение задачи автора.
Думаете автору, который за чертову уйму времени не нашел этого самого времени на изучение любого ЯП нужен учебный пример, к тому же в ветке форума посвященной НЕ программированию? Цитата:
Цитата:
https://github.com/BoxaShu/dynIN_dyn..._2017/DynIN.cs строка 312 |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,006
|
Разница в том, что мой код решает задачу без дополнительных телодвижений и костылей в виде файлов, которые потом еще надо обрабатывать и вручную удалять (чтобы не скапливался мусор на диске). Универсальность не всегда нужна - зачастую надо выполнение определенной задачи по "нажатию кнопки".
|
|||
|
||||
Цитата:
Задачу темы Ваша программа решает. Особенно она хороша в случаях, когда нужно сразу изменить несколько разных параметров и значений разных атрибутов. Но, действительно, для задачи этой темы Ваше решение сложновато. Во-первых, пользователь средней кривизны рук легко может что-то не так сделать с CSV. Во-вторых, если нужно изменить только один параметр, то было бы достаточно это сделать прямо, без внешних файлов - как это делает 99.9% всех лиспов и т.п.
__________________
количество моих сообщений не говорит о знании Автокада |
||||
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588
|
Цитата:
В любом случае, оффтоп это, автору предложено два решения, а спор Универсальный VS Специализированный инструмент тут не уместен, да и мне не интересен. |
|||
|
||||
Я не умаляю Вашего решения! Только что порекомендовал его еще раз.
Просто всему свое место.
__________________
количество моих сообщений не говорит о знании Автокада |
||||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,006
|
Offtop:
Цитата:
Цитата:
ну может кому то из менее ленивых поможет мой код-пример) |
|||
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588
|
Offtop:
Цитата:
Да и я уже большой мальчик, прекрасно знаю чего стою, так что самоутверждаться нужды нет. |
|||
|
||||
Регистрация: 15.02.2017
Сообщений: 47
|
Цитата:
Скйчас мучаюсь с динамическим блоком окна - надо чтобы ширина, задаваемая динамическим блоком автоматически брала значение сатрибута этого же блока |
|||
|
||||
Цитата:
Кроме этого dynIN, dynOUT от Boxa. Но для оперативных и многократных действий это сложновато. Эти dynIN, dynOUT отличны для разового и оптового действия. И не ограничены только передачей значений атрибутов в параметры. ----- добавлено через ~12 ч. ----- Для быстрой и удобной работы было бы лучше вроде этого: Цитата:
1. Обрабатывается предварительный выбор. 2. Если нет выбранного, то запрашивается: Выбрать динамические блоки одного названия. 3. Если в выборке динблоки с разными названиями, то пишется: Выбраны динамические блоки с разными названиями. Опять запрашивается: Выбрать динамические блоки одного названия. Если в выборке не только динблоки, другие типы примитивов, то они игнорируются. 4. Для выбранных вхождений динамического блока выводится список его атрибутов с запросом: Введите название нужного атрибута. 5. Выводится список динамических параметров с запросом: Введите название нужного параметра. 6. Значения из указанного атрибута передаются в значения параметра. Если в атрибутах не числовые значения, то они не передаются. 7. Выводится отчет: Изменены параметры: N/M. Где N - число замененных значений параметров, M - число выбранных динблоков. Лучше, конечно, не вводить вручную названия атрибутов-параметров, а выбирать из списков, но это, наверное, сложнее написать.
__________________
количество моих сообщений не говорит о знании Автокада Последний раз редактировалось АлексЮстасу, 10.05.2019 в 15:32. |
||||
|
||||
Регистрация: 15.02.2017
Сообщений: 47
|
Конечная цель:
1. Вставляю блок 2. В окне атрибутов прописиваю: маркировка, ширина, высота 3. Динамическими свойствами блоков выставляю в нужное место и положение 4. В свойствах динамического блока опять прописиваю ширину-высоту, используя "растяжение" и получаю нужноегеометрическое изображение. НО: получаеться что ширину-высоту я ввожу ДВА раза: сначала для надписи в атрибуте, а второй раз - для изменения геометрии в свойствах. Это мне кажеться не логичнным, и хочеться вводить один раз. ----- добавлено через ~6 мин. ----- Цитата:
А как это вызвать? |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,006
|
а почему не вставить в атрибут поле с ссылкой на динпараметр (только делайте через местозаменитель блока вставку поля), потом сразу ручками выполняете п.3 после п.1 и обновляете чертеж - чтобы поля обновились.
|
|||
|
||||
У меня ничего. И я не программист.
С тех пор я к этому не возвращался. Время от времени подобные темы проглядывал, но мельком. Например, сходу: https://forums.autodesk.com/t5/visua...nt/m-p/8581332 Но даже не проверял.
__________________
количество моих сообщений не говорит о знании Автокада |
||||
|
||||
Регистрация: 15.02.2011
Сообщений: 40
|
Цитата:
1. Берете Ваш файл с динамическими блоками и устанавливаете желаемое значение атрибута, возможно имеет смысл ввести атрибут с порядковым номером. См. Image 1. 2. Скачиваете примочку от Воха, как описано в инструкции https://github.com/BoxaShu/dynIN_dyn...aster/_Release 3. При помощи этой примочки и команды DYNOUT генерируете файл *_out.CSV 4. Переходите в Excel через данные/ получить внешние данные/ из текста открываете этот файл. Нужно поставить галочку (разделитель - ; точка с запятой) См. Image 2. 5. Производите необходимые манипуляции с данными См. Image 3, можете использовать формулы. 6. Теперь нужно сохранить это в том же формате *_out.CSV с разделителями ; (точка с запятой) для этого нужно изменить стандартный разделитель , (запятая) на ; (точка с запятой). Смотрим этот сайт как сделать (https://www.koskila.net/how-to-chang...sv-from-excel/). См. Image 4. 7. Сохранив файл *_in.CSV, открываем его в автокаде через функцию DYNIN. 8. Загрузив файлы, значение параметра динамического блока меняется (См. Image 5), но я не стал разбираться в причинах несоответствия значений атрибута и динамического блока. Для моих задач с диаметром крон деревьев все работало. В Вашем случае углов нужно немного поэкспериментировать, но думаю, что у Вас все получится. |
|||
|
Опции темы | Поиск в этой теме |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Diesel. Как передать значение атрибута? | DANZZ | Программирование | 2 | 21.12.2023 14:23 |
Вставка значения атрибута блока в поле в блоке | Prying | AutoCAD | 28 | 08.09.2020 17:51 |
Как присвоить тексту в блоке значение атрибута? | Engineer_Sergii | AutoCAD | 1 | 14.04.2015 18:48 |
Проблема при использовании в динамическом блоке атрибута | Даниил | Динамические блоки | 13 | 31.05.2013 09:16 |
Динамический блок и значение атрибута | _Andre_ | Динамические блоки | 15 | 08.12.2006 23:55 |