[求助]如何由点选得知对象贴付了甚么反应器!
如何由点选得知对象贴付了甚么反应器!难道只能用(vlr-reactors)遍历比对吗?
下列为贴付反应器程序,截取自帮助档
(defun C:TTT ()
(setq MYCIRCLE
;; 提示输入中心点与半径:
(progn (setq CTRPT(getpoint "\nCircle center point: ")
RADIUS (distance CTRPT
(getpoint CTRPT "\nRadius: ")
)
)
;; 加入圆周到图面模型空间。巢状化函数
;; 呼叫以取得到目前图面之模型的路径
;; space: AcadObject > ActiveDocument > ModelSpace
(vla-addcircle
(vla-get-modelspace
(vla-get-activedocument (vlax-get-acad-object))
)
(vlax-3d-point CTRPT)
RADIUS
)
)
)
(setq CIRCLEREACTOR
(vlr-object-reactor
(list MYCIRCLE)
"Circle Reactor"
'((:vlr-modified . PRINT-RADIUS))
)
)
)
;;下列程序代码定义名为 print-radius 的回复函数。这个函数可以用来打印一个圆周的半径:
(defun PRINT-RADIUS (NOTIFIER-OBJECT REACTOR-OBJECT PARAMETER-LIST)
(vl-load-com)
(cond
((vlax-property-available-p
NOTIFIER-OBJECT
"Radius"
)
(princ "The radius is ")
(princ (vla-get-radius NOTIFIER-OBJECT))
)
)
) 估计没有别的办法了,对象反应器好象并不是真正附着在对象上面,可能是CAD的消息处理时通过某些链接指向这个对象,如果真正是附着的,复制对象后应该也存在反应器。。。 1,反应器是对应特定对象的,复制对象产生了一个新的对象,新对象应该和源对象的反应器没有关系
2,2000版本使用反应器本人感觉很危险,2004则较稳定 sieben发表于2003-12-22 22:31:00static/image/common/back.gif1,反应器是对应特定对象的,复制对象产生了一个新的对象,新对象应该和源对象的反应器没有关系
2,2000版本使用反应器本人感觉很危险,2004则较稳定
如果是真的附着,复制就应该同样复制附着的东西,如颜色、扩展数据等,这些都是真附着在对象上的。。。
页:
[1]