| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Удаление маскировки в блоках и вложенных блоках

Удаление маскировки в блоках и вложенных блоках

Ответ
Поиск в этой теме
Непрочитано 03.12.2019, 18:43 #1
Удаление маскировки в блоках и вложенных блоках
chon
 
Регистрация: 10.05.2010
Сообщений: 220

Есть скрипт HatchDel удаляет штриховки. Все Ок. Взял здесь.
Необходимо удалить таким же методом маскировки во вложенных блоках.
Код:
[Выделить все]
 (vlax-for Obj Blk
	  (if (= (vla-get-ObjectName Obj) "AcDbHatch")
            (vl-catch-all-apply 'vla-delete (list Obj))
	  ) ;_ end of if
	) ;_ end of vlax-for

Насколько понял штриховка ищется через AcDbEntity объект AcDbHatch.
Для маскировки не нашел класса AcDbEntity.

Как удалить маскировки?
Просмотров: 1355
 
Непрочитано 03.12.2019, 19:05
1 | #2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,833


Нарисуй маскировку и получи имя объекта:
(vla-get-objectname (vlax-ename->vla-object (car (entsel))))
И подставь вместо "AcDbHatch"
Правда, код убивает штриховки, похоже, вообще везде - но не затрагивает элементы на блокированных и замороженных слоях. Тоже вариант, конечно.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 03.12.2019, 19:05
#3
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,038


Насколько помню, маскировка связана со словарем ACAD_WIPEOUT_VARS
Сергей812 вне форума  
 
Непрочитано 03.12.2019, 19:18
1 | #4
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,833


Если не ошибаюсь, то этот словарь просто регулирует показ рамок. Но это не точно
А так...
Код:
[Выделить все]
Command: WIPEOUT Specify first point or [Frames/Polyline] <Polyline>:
Specify next point:
Specify next point or [Undo]:
Specify next point or [Close/Undo]:
Command: (vla-get-objectname (vlax-ename->vla-object (car (entsel))))

Select object: "AcDbWipeout"
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 04.12.2019, 08:58
#5
chon


 
Регистрация: 10.05.2010
Сообщений: 220


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Command: (vla-get-objectname (vlax-ename->vla-object (car (entsel))))
Select object: "AcDbWipeout"[/code]
Спасибо! За простую идею
chon вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Удаление маскировки в блоках и вложенных блоках

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ФАТАЛЬНАЯ ОШИБКА: Unhandled Access Violation Reading 0x0000 Exception at 3d4a0045h AutoCAD 2011русский Nikolays AutoCAD 13 13.10.2015 14:57
Как удалить тип линии Tolyanovich AutoCAD 48 20.11.2014 09:24
Проблема с чисткой чертежа AntonFox AutoCAD 33 20.02.2013 13:00
Вставка и удаление пробелов в надписях и блоках Janna_R Программирование 7 05.06.2011 18:58
AutoCAD 2011 при копировании не вставляет в другой чертеж Maxxwell AutoCAD 7 07.05.2010 14:44