|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Имена динамических блоков
Регистрация: 01.07.2010
Сообщений: 521
|
||
Просмотров: 10718
|
|
||||
Программист-энтузиаст Регистрация: 17.07.2009
Воронеж
Сообщений: 575
|
Цитата:
Код:
__________________
cadtools |
|||
![]() |
|
||||
Программист-энтузиаст Регистрация: 17.07.2009
Воронеж
Сообщений: 575
|
Zaghim, походу в Твоем коде надо убрать ; в строке
Код:
__________________
cadtools |
|||
![]() |
|
||||
Аргументом функции vlax-ename->vla-object должен быть приметив, а ты ей список подсовываешь, он риугаеться примерно так:
не верный тип аргумента: lentitype ((-1 . <Имя ...
__________________
Почему все вдруг становятся умными, когда уже не надо? |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Код:
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 07.04.2011 в 13:53. Причина: Новая версия |
|||
![]() |
|
||||
Как показала практика, наличие 360 группы в entget-листе вставки блока не является достаточным условием для того, что в тех недрах, куда мы этим лиспом залазим, окажется имя блока... Так что, Владимир, Ваша функция из #17 для динамического блока, который еще не подвергался изменениям, имя не находит и выдет ошибку
![]()
__________________
Толковый выбор приходит с опытом, а к нему приводит выбор бестолковый. (The Mechanic) |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Вполне может быть. Я у себя делаю как в #2
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Do$, Блоки с именем *U# не обязательно динамические. Это могут быть и обычные, т.е vla-get-EffectiveName вернет ошибку
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Свойство EffectiveName есть у любого блока, а не только динамического,
поэтому достаточно такого будет: Код:
![]()
__________________
Толковый выбор приходит с опытом, а к нему приводит выбор бестолковый. (The Mechanic) Последний раз редактировалось Do$, 24.03.2011 в 13:06. Причина: Столько фигни понаписал, а самое главное - сделал... |
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Новые наблюдения ![]() Код:
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Только диву даюсь: каким образом можно было докопаться до такого решения?
![]() Я, кстати, когда тестировал, проверял на трех разных блоках: - обычный "статический" - динамический, только что вставленный - динамический, у которого значения параметров менялись после вставки Результаты были сильно разные... |
||||
![]() |
|
||||
Регистрация: 17.07.2008
Сообщений: 75
|
А есть ли возможность в код представленный тут http://www.jefferypsanders.com/autolisp_AttInc.html добавить возможность работы с дин.блоками?
|
|||
![]() |
|
||||
Цитата:
А что, есть такое? ![]() |
||||
![]() |
|
||||
Регистрация: 17.07.2008
Сообщений: 75
|
Функционал следующий:
В чертёж ставм блок с атрибутами Вызов команды На запрос указать блок для дальнейших операций указываем нужный блок В появившемся окне доступны операции выбора атрибутов, определения начального значения нумерации, направление нумерации Далее если блок не *U, каждый следующий клик мышкой в чертеже ставит ранее указанный блок, с нумерацией в теге указанного атрибута, с ранее указанного стартового значения, в ранее указанном направлении. Но вот весь вопрос в том, что данный код не работает с *U-именоваными блоками |
|||
![]() |
|
||||
Программист-энтузиаст Регистрация: 17.07.2009
Воронеж
Сообщений: 575
|
Цитата:
__________________
cadtools |
|||
![]() |
|
||||
Программист-энтузиаст Регистрация: 17.07.2009
Воронеж
Сообщений: 575
|
Цитата:
Walkmax, выложи чертеж на котором так получается (в версии не выше 2008 ACAD'а). Да, и кстати какой у Тебя ACAD.
__________________
cadtools |
|||
![]() |
|
||||
Регистрация: 17.07.2008
Сообщений: 75
|
Вот чертёж и блок в нём
Чертеж1.dwg |
|||
![]() |
|
||||
Программист-энтузиаст Регистрация: 17.07.2009
Воронеж
Сообщений: 575
|
Walkmax, судя по всему Ты не обновил свои файлы на те, которые я выложил в посте #34. На всякий случай выкладываю только lisp-файл. На Твоем чертеже у меня все отработало
__________________
cadtools |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
vla-указатель на вхождение блока.
P.S. gomer, по-моему, ты со скобками напутал... ИМХО должно быть нечто типа Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. Последний раз редактировалось Кулик Алексей aka kpblc, 31.05.2011 в 20:42. |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Сквозная нумерация динамических блоков | zenon | Программирование | 214 | 28.08.2020 08:45 |
подсчет динамических блоков | AAI | Программирование | 37 | 25.06.2012 15:05 |
Тормозит команда расчленения набора блоков | batmax | Программирование | 4 | 31.08.2010 17:37 |
Подсчет и сортировка блоков на текущем слое. Помогите отредактировать. | Kortes | Программирование | 17 | 26.03.2010 18:46 |
Проблема вставки Динамических блоков | Владимир М | Программирование | 11 | 12.09.2007 15:42 |