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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как обратиться к последнему созданному набору примитивов

Как обратиться к последнему созданному набору примитивов

Ответ
Поиск в этой теме
Непрочитано 29.08.2015, 15:49 #1
Как обратиться к последнему созданному набору примитивов
granit201z
 
Проектировщик
 
Камышин
Регистрация: 17.08.2014
Сообщений: 118

Такая ситуация: несколько примитивов были объединены в набор и помещены в буфер обмена посредством функции:

(vl-cmdf "_copybase" 1_base_t nabor_dla_copy "")

далее, открыв другой чертеж я вставил в него содержимое буфера обмена посредством функции:

(vl-cmdf "_pasteclip" 1_base_t)

таким образом в новом чертеже получился некоторый новый набор примитивов. Мне его нужно теперь отмасштабировать с коеффициентом масштабирования 2,5 - но вопрос весь в том, что я не знаю нового имени нового набора
Просмотров: 2903
 
Непрочитано 30.08.2015, 00:24
#2
Александр Ривилис

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


Цитата:
Сообщение от granit201z Посмотреть сообщение
но вопрос весь в том, что я не знаю нового имени нового набора
А его (т.е. набора) нет. Тут нужен совсем другой подход. Например, до _pasteclip выполняешь (setq enLast (entlast)), а после (setq enNewLast (entlast)). Ну и проходишься при помощи (entnext) по всем вставленным примитивам. Ну и добавляешь их в набор. Только нужно пропускать неосновные примитивы (вершины 2d- и 3d-полилиний, начало и конец блока и т.п.)

Последний раз редактировалось Александр Ривилис, 30.08.2015 в 00:32.
Александр Ривилис вне форума  
 
Непрочитано 30.08.2015, 12:57
#3
Сергей812


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


Вот как решается подобная задача на Net Api

Как получить идентификаторы всех объектов (ObjectId), вставленных через буфер обмена.

Реакторы в лиспе есть, а вот можно ли реализовать подобное - это к местным Гуру лиспа)
Сергей812 вне форума  
 
Непрочитано 30.08.2015, 14:14
#4
frostmourn


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


Если нужно только масштабировать, то можно совсем просто - вместо (vl-cmdf "_pasteclip" 1_base_t) во втором чертеже делать _pasteblock. Потом это всё выделяется одним (entlast), и далее по желанию.
frostmourn вне форума  
 
Непрочитано 30.08.2015, 16:04
#5
Александр Ривилис

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


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
Вот как решается подобная задача на Net Api
Ну такие "сложности" я не предлагал...
Александр Ривилис вне форума  
 
Непрочитано 31.08.2015, 18:17
#6
VVA

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


Похожая тема Отслеживание объектов появившихся после pasteclip
Там то, что предлагал Александр Ривилис в #2 оформлено в виде функций с примером
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как обратиться к последнему созданному набору примитивов