Создание Wipeout в существующем блоке (Autocad)
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Создание Wipeout в существующем блоке (Autocad)

Создание Wipeout в существующем блоке (Autocad)

Ответ
Поиск в этой теме
Непрочитано 03.03.2015, 16:41 #1
Создание Wipeout в существующем блоке (Autocad)
Psyakrev
 
Регистрация: 17.06.2010
Сообщений: 438

Столкнулся с такой задачей - необходимо в блоках заменить штриховку на маскировку (dwg файл получается экспортом из другого САПР). С удивлением выяснил, что такого com-метода нет Нашел лисп, который создает маскировку через entmake, но он работает только в текущем пространстве . Командные методы тоже работают только в текущем пространстве. Дальше мысли кончились. Есть какие-либо варианты решения этой проблемы?
Просмотров: 3169
 
Непрочитано 03.03.2015, 17:08
#2
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Ну один из вариантов:
1) Создаёшь в текущем пространстве.
2) Используешь метод CopyObjects для копирования в нужный блок.
3) Оригинал удаляешь.
Александр Ривилис вне форума  
 
Автор темы   Непрочитано 03.03.2015, 17:38
#3
Psyakrev


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


Посмотрел описание метода - он пригоден только для xref-блоков, а у меня простые блоки.


RetVal = object.CopyObjects(Objects[, Owner][, IDPairs])

Object
Database, Document
The objects this method applies to.

Psyakrev вне форума  
 
Непрочитано 03.03.2015, 17:45
#4
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Еще раз смотри описание метода. Где ты тут увидел Xref-блоки?
Александр Ривилис вне форума  
 
Автор темы   Непрочитано 03.03.2015, 18:07
#5
Psyakrev


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


Может неправильно понял, но копировать можно в Document или Database. Document - он и есть документ, а Database - "This object provides access to the contents of an external reference block. It is only available on blocks whose IsXRef property is equal to TRUE. "
Или все не так и нужно просто подставить в Owner objectid изменяемого блока?
Psyakrev вне форума  
 
Непрочитано 03.03.2015, 18:16
#6
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от Psyakrev Посмотреть сообщение
Может неправильно понял
Именно. В качестве Owner задаёшь блок (не ObjectId, а сам объект), в который нужно копировать.
Александр Ривилис вне форума  
 
Непрочитано 04.03.2015, 22:09
#7
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Примеры
Все выбранное в блок. Напомните ЛИСП
что не так с (vla-copyobjects)?
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Создание Wipeout в существующем блоке (Autocad)



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В динамическом блоке wipeout при array не хочет идти на задний план Red Nova Динамические блоки 8 18.09.2016 12:14
AutoCAD MAP 3D 2011: создание план-схемы местности pashicha Вертикальные решения на базе AutoCAD 7 01.07.2011 09:19
создание макросов в AutoCAD 2009 Jоhnny AutoCAD 5 12.02.2010 14:14
AutoCAD Architecture 2010. Создание стеновых панелей на базе серии 1.090 Botan Вертикальные решения на базе AutoCAD 3 01.02.2010 22:54
Одна из целей: Создание экспертных систем на базе AutoCAD. Сергей Юрьевич Программирование 9 01.01.2005 15:17