|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
Регистрация: 13.02.2009
Воронеж
Сообщений: 39
|
Кулик Алексей aka kpblc, Во-первых, маску для wcmatch я у кого-то подсмотрела
Во-вторых, имя у блока меняется, после запуска программы В-третьих, это для наглядности я беру один блок, но планируется выбирать все анонимные блоки и всем менять имя на EffectiveName. |
|||
|
||||
Цитата:
Цитата:
Или в этой теме смотри команды Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
Регистрация: 13.02.2009
Воронеж
Сообщений: 39
|
VVA, Спасибо огромное! Функции BGCB и BGRB, работают отлично! Но конечный результат - все блоки переименовать. Поэтому в этой теме http://forum.dwg.ru/showthread.php?p=577878#post577878 я почти нашла то, что мне нужно!
Но возник вопрос к Кулик Алексей aka kpblc. Программа в посте #3 из темы "LISP: Переименование одного из вхождений блока" меняет у всех динамических блоков EffectiveName? Или я может чего не так поняла? |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787
|
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
А для чего все это нужно?
Эти команды не подойдут? Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
Регистрация: 13.02.2009
Воронеж
Сообщений: 39
|
VVA, Это все не просто
Цель в итоге такая: когда приходят чертежи от смежников (архитекторов), чертежи скажем так, не очень высокого качества, и для того, чтобы продолжить с ними работу, необходима первоначальная чистка, которая на один проект приходится 10-20 раз. Т.е. каждый раз, когда по одному проекту приходит измененный чертеж от смежников, приходиться чистить одно и тоже. Так вот написана программа, которая запоминает удаление объектов, записывает их, а потом при последующих чертежах с изменениями запускается. Что экономит время на чистку. Но для того, чтобы правильно происходила повторная чистка применительно к блокам, необходимо, чтобы у всех динамических блоков были одинаковые имена. Вот отсюда и необходимость привести все блоки в порядок. |
|||
|
||||
Каким образом запоминает? Если речь идет про один и тот же чертеж, то метка примитива (dxf группа 5) будет уникальна в этом чертеже. Вполне достаточно. Чтобы отследить изменение геометрии, или других свойств (слой, цвет, вес) можно сравнивать (хранить) подсчитанную хеш-сумму строки entget примитива (можно набор только конкретных полей) Это обсуждалось в теме Lisp. Выделение нового в чертеже Там же есть и готовые примеры
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
Регистрация: 13.02.2009
Воронеж
Сообщений: 39
|
VVA, к сожалению метка примитива (dxf группа 5) не подходит, так как чаще всего все чертежи от архитектора собираются в один чертеж, а при вставке чертежа как блок и последующей его разбивке, метка примитива меняется. Также рассматривали вариант копирования и вставки, но при этом handle тоже меняется. Т.е. каждый раз, когда приходят чертежи, они собираются в один и проходит чистка, т.е. удаление примитивов и разбивка блоков. Определенные признаки (в зависимости от типа примитива) записываются в текстовый файл, а при последующей чистке считываются строчки из файла и повторно удаляются.
За ссылку большое спасибо! Обязательно изучу ее |
|||
|
||||
Регистрация: 06.04.2012
Львов
Сообщений: 47
|
Какой командой можно взорвать динамический блок, чтобы видимые атрибуты преобразовались в текст. Дело в том, что один из атрибутов содержит поле. Команды BGBLEXP1 и BGBLDYNEXP1 при взрыве удаляют его. С остальными атрибутами все отлично.
|
|||
|
||||
проектирование а/дорог Регистрация: 03.07.2013
СПб
Сообщений: 376
|
Burst из express tools
Последний раз редактировалось Linkshunter, 24.03.2016 в 15:45. Причина: прочитал лицензию к ET |
|||
|
||||
Сделал, чтобы не удаляли. См. #1
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
В определении атрибута "ФАЙЛ" (в редакторе блока) включен режим "постоянный" и "установленный".
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 24.03.2016 в 20:46. |
||||
|
||||
Регистрация: 06.04.2012
Львов
Сообщений: 47
|
Цитата:
Отключение режима "установленный" ничего не меняет - атрибут слетает. А вот если отключить режим "постоянный", тогда, да, атрибут ФАЙЛ остается после взрыва. Но он становится бесполезным. В этом блоке он после регенерации отражал имя файла, в который был вставлен. А при отключенном режиме "постоянный" он показывает имя файла, в котором создан блок и не обновляется при регенерации. Существуют ли команды, которые могут чисто разбить такой блок? |
|||
|
||||
У меня отображает имя файла, в который вставлен
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
Регистрация: 06.04.2012
Львов
Сообщений: 47
|
Если просто открыть файл, скопировать и вставить блоком в чертеж - тогда имя файла чертежа отображает. Но если вставлять через команду Веткада (что намного быстрее), то отображается имя файла блока и не меняется при регенерации. Если втавить блок повторно Веткадом - только тогда отображается имя текущего чертежа. Получается, это баг Веткада.
А почему режим "Постоянный" так не "нравится" этим командам? |
|||
|
Опции темы | Поиск в этой теме |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Научите лиспу на примере (или как kpblc, VVA и компания пытаются обучить чайника лиспу) | Red Nova | LISP | 4555 | 24.03.2024 13:44 |
{Конкурс} Lisp. Задачки для студентов | gomer | LISP | 10 | 05.01.2011 16:33 |
LISP на команду 3dcorbit | Малюк | LISP | 2 | 30.09.2009 14:18 |
Запуск Lisp команды в новом документе | BlackHarp | LISP | 1 | 26.03.2009 23:06 |
загрузка DOS прог через LISP | Gaa | LISP | 15 | 12.08.2005 19:19 |