| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
12.03.2009, 16:38 | 1 | | #1 |
LISP. Очистка рисунка от "пустых" блоков
Инженер-строитель
Киров
Регистрация: 15.08.2007
Сообщений: 2,204
|
||
Просмотров: 10244
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Инженер-строитель Регистрация: 15.08.2007
Киров
Сообщений: 2,204
|
Цитата:
PS Немного изменил код в первом посте. Добавил вывод в ком. строку результатов работы программы. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Makswell, ну извини. Я хотел показать некоторые дополнительные моменты.
Кстати! А как ты собираешься поступать с блоками, у которых есть только атрибут, а его значение не заполнено? А что делать, если "пустой" блок входит внутрь другого? И почему б не провести дополнительную фильтрацию на внешние ссылки? А что делать, если внутри блока текст (однострочный или многострочный) с пустым содержанием или сплошными пробелами? А если внутри блока только "пустой" блок? Так что тут, мне думается, задачка будет достаточно сложной в результате...
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Добавлю: для многострочных текстов и атрибутов придется по ходу дела сносить форматирование тоже задачка не самая элементарная (хотя на форуме решения были).
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Цитата:
__________________
Чем гениальнее ваш план, тем меньше людей с ним будут согласны. /Сунь Цзы/ |
||||
|
||||
Регистрация: 14.03.2010
Сообщений: 2
|
Все отлично работает! еще раз спасибо
----- добавлено через ~12 мин. ----- А есть еще такая возможность чтобы он вначале выводил список всех блоков в том числе пустых и не пустых их количество, а потом предлагал выбрать и удалить из чертежа, включая модель и листы? |
|||
|
||||
Инженер-проектировщик Регистрация: 07.07.2016
Санкт-Петербург
Сообщений: 723
|
Возможно ли изменить код из поста 1 так, чтобы ещё удалялись пустые анонимные блоки?
Попробовал убрать (= (substr blk_name 1 1) "*"). Блоки удаляет, но выдаёт "Настройка переменной AutoCAD отвергнута: "CMDECHO" nil". Предполагаю что загвоздка где-то в (vla-get-EffectiveName ent). Что делать дальше, не знаю. В лиспе практически не разбираюсь. ) |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Как вариант, без очистки описаний блоков. И если внутри какого-то блока было одно вхождение пустого блока, то после удаления такой блок становится пустым. Я не стал делать обработку такого варианта. Лень.
P.S. Код не проверял и не тестировал. Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Импорт палитры блоков при помощи LISP | TwoZero | LISP | 13 | 31.01.2019 17:38 |
Lisp. Расстановка блоков на пересечении линий. | wetr | LISP | 22 | 03.04.2018 10:54 |
LISP. Нормализация блоков текущего файла. | Кулик Алексей aka kpblc | Готовые программы | 82 | 06.07.2016 20:38 |
загрузка DOS прог через LISP | Gaa | LISP | 15 | 12.08.2005 19:19 |