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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Передать в команду _updatefield набор примитивов (SelectionSets)

Передать в команду _updatefield набор примитивов (SelectionSets)

Ответ
Поиск в этой теме
Непрочитано 19.04.2025, 08:19 #1
Передать в команду _updatefield набор примитивов (SelectionSets)
Марк_Филипыч
 
Регистрация: 27.04.2014
Сообщений: 7

Хочу отдельной кнопкой создать ИМЕНОВАННЫЙ набор примитов (текстовые объекты) и потом передавать этот набор команде _updatefield
p.s. обновлять сразу все объекты слишком долго.

код на лиспе с передачей значений из набора тоже подойдет.

On Error Resume Next
ThisDrawing.SelectionSets.item("ПОЛЯ").Delete ' удаляем набор
Set objSelSet = ThisDrawing.SelectionSets.Add("ПОЛЯ") ' создаем набор заново
On Error GoTo 0

Dim ftype(0) As Integer
Dim fdata(0) As Variant
Dim dxfCode, dxfValue

ftype(0) = 0: fdata(0) = "MTEXT"
dxfCode = ftype: dxfValue = fdata

objSelSet.SelectOnScreen dxfCode, dxfValue ' выделяем объекты


ThisDrawing.SendCommand "_updatefield" & vbCr
Просмотров: 302
 
Автор темы   Непрочитано 20.04.2025, 09:07
#2
Марк_Филипыч


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


нашел два варианта решения:
Lisp oм выделять именованный набор и запускать команду обновить поле
;_подсветка набора "Подсветка" - название именнового набора
(defun ss-gripset (/ SS SR SSN I)
(vl-load-com)
(setq SS (vla-get-selectionsets
(vla-get-activedocument (vlax-get-acad-object))
) ;_ end of vla-get-SelectionSets
) ;_ end of setq
(setq SSN (vla-item SS "Подсветка") SR (ssadd))
(vlax-for I SSN
(ssadd (vlax-vla-object->ename I) SR)
) ;_ end of vlax-for
(sssetfirst nil SR)
(princ)
) ;_ end of defun

или использовать select _P (предыдущий выбор)
Марк_Филипыч вне форума  
 
Непрочитано 21.04.2025, 11:18
#3
Автон

СЦБ
 
Регистрация: 09.03.2006
Сообщений: 89


Или не выходя из VBA
Код:
[Выделить все]
objSelSet.SelectOnScreen dxfCode, dxfValue ' выделяем объекты

ThisDrawing.SendCommand "(sssetfirst nil (ssget " & Chr(34) & "_P" & Chr(34) & ")) "

ThisDrawing.SendCommand "_updatefield" & vbCr
Автон вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Передать в команду _updatefield набор примитивов (SelectionSets)



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сохранить набор изолированных объектов для определенного файла? Alexander Stepanov AutoCAD 2 25.07.2019 10:40
Помогите найти ошибку с Lisp "автонумерацией листов" tujn08 LISP 14 12.05.2015 17:20
Как получить набор текста не в области видимости? prajdziswet Программирование 13 05.05.2015 08:14
Набор объектов DEM Программирование 21 26.03.2014 19:11
Как применить именнованый набор параметров листа к листу игорёк Программирование 2 08.09.2008 11:54