| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
28.10.2011, 16:03 | #1 | |
AutoLisp. Аналог команды Change или Сhprop
Регистрация: 01.07.2010
Сообщений: 521
|
||
Просмотров: 4877
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Попробуй либо bind, либо его аналог от VVA (поищи по форуму, тема "Express Bugs" - кажется, так). Ну или свою обработку писать...
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
burst. bind - это к xref.
Zaghim, BGBLEXP - Взрывает блок и все блоки, входящие в него, превращая видимые атрибуты в текст
__________________
Как использовать код на Лиспе читаем здесь |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Ну звиняйте, господа хорошие... Голова с трудом варит...
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
Zaghim, Чем тебя BGBLEXP не устраивает? Зачем заново писать собственный Автокад?
По поводу BURST - там есть много недоработок. Можешь почитать здесь Express Tools Bugs ( Ошибки Express Tools ) пост #2 К этому добавлю только, что 1. если блок подрезан, то применив burst сильно удивишься результату 2. если используешь маскировку, она вылезет наверх 3. если в динамическом блоке ты visibility скрываешь часть атрибутов, то после burst увидишь их все 4. если в атрибуте были поля, ты их потеряешь ... Если хочестя самому взрывать из лиспа, то используй ф-цию bg:explode-block из bgtools Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
|
||||
Регистрация: 01.07.2010
Сообщений: 521
|
VVA, пишет вот что - ; error: unable to get ObjectID: nil
Вываливается здесь: (setq blk_obj (if (= (type blk) 'ENAME)(vlax-ename->vla-object blk) blk))) blk имеет вид <Entity name: 7e8c0420> А точнее это происходит на каком-то блоке. Они все динамические кстати с атрибутами... НО некоторые не динамические это имеет значение? Последний раз редактировалось Zaghim, 28.10.2011 в 17:59. |
|||
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
1. Сделай _audit чертежу
2. Что возвращает (entget blk) и (vlax-ename->vla-object blk)? 3. Выложи чертеж с проблемным блоком или вышли почтой
__________________
Как использовать код на Лиспе читаем здесь |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Конструирование в области нефтеразведки Регистрация: 10.02.2006
Гомель
Сообщений: 321
|
Обрисуй полную картину того, что ты хочешь получить после взрыва блока, какую цель ты преследуешь взрывом блока, что из себя представляют блоки? Сильно много непоняток. Например - есть блок с атрибутом. После explode блока - value атрибута превращается в tag - это нормально или как?
__________________
Никогда не спорьте с дураками - они опустят Вас до своего уровня и победят за счет опыта |
|||
|
||||
Регистрация: 01.07.2010
Сообщений: 521
|
Такс...автокад 32-разрядный, на каком блоке вылетает, сейчас посмотрим и выложу блоки.
По поводу целей. У меня есть чертеж, состоит исключительно из блоков, мне нужно сделать из него аксонометрию, дабы это сделать нужно вначале все взорвать, т.к. блок положить по 45 на мой взгляд нереально. Взрываю, соответственно атрибуты вылазят наружу и слой всего внутри уходит в 0. То что вылезли атрибуты - не проблема, ибо выбирают их в цикле и по одному удаляю, работает быстро. А вот восстановить слой нужно обязательно и моим кодом в шапке темы - это как то очень тормазно и ругательно)) Блоки практически все динамические и с атрибутами с визибл сетами. Но есть и просто блоки не динамические, но все с атрибутами. Вылетает на этом блоке и еще на некоторых других. И еще прога чувствительна к блокам, которые в базе есть, а на чертеже нет по-моему... 321.dwg - общая картина Последний раз редактировалось Zaghim, 31.10.2011 в 12:09. |
|||
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
Без ошибок взорвались твои блоки командой BGBLEXP.
__________________
Как использовать код на Лиспе читаем здесь |
|||
|
||||
Регистрация: 01.07.2010
Сообщений: 521
|
А как мне соединить теперь мою команду и эту команду?
Просто мне нужно не все взрывать, а только некоторые блоки... У меня есть только имя переменной, которую нужно взорвать. Почему не получается если сразу идти на bg:explode-block не понятно(( Последний раз редактировалось Zaghim, 31.10.2011 в 15:00. |
|||
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
BGBLEXP обрабатывает предварительный выбор.
Пример. Взорвать блоки с именем TEST Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
|
||||
Регистрация: 01.07.2010
Сообщений: 521
|
VVA, нет так не прокатит, потому что у динамических блоков, когда их много, имена такого типа *U31 и тд...
Но я тут что-то наковырял, вроде сработало...а запарывалась она похоже из-за того, что и правда блоков физически не было, а определения хранились... |
|||
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
Цитата:
Код:
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
не знаю почему, но у меня код LeeMac вываливает ошибку с завидным постоянством. Разбираться как-то лень.
P.S. Я пользуюсь таким кодом - пока устраивает... Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
запуск программы из AutoCADа | kminas | Программирование | 19 | 15.06.2012 13:42 |
Аналог lisp команды command в .net | xsakabsx | LISP | 3 | 18.11.2010 23:31 |
Аналог команды Slice в Solid | Taracka | SolidWorks | 12 | 24.09.2010 23:50 |
Аналог команды "_Fillet" | Mazai | Программирование | 5 | 15.04.2008 21:36 |