慢速地慢速地到了那里,使用Mac Lee函数,我达到了这一点:
- (defun c:testx1 ( / ent )
-
- (if (setq ent (car (entsel "\nSelect Attributed Block: ")))
- (princ
- (LM:setdynpropvalue
- (vlax-ename->vla-object ent)
- "value_a" ; custom_property
- (atof
- (LM:GetAttributeValue
- (vlax-ename->vla-object ent)
- "value_a"
- )
- )
- )
- )
- )
- (princ)
- )
这样,我就可以在选定的块上设置自定义属性“value\u a”和属性“value\u a”的值!
下一步是。。。如何选择多个不同的块并在其上运行相同的函数?
我试过:
- (defun c:a1(/ ss i obj j k mt)
- (if (setq ss (ssget "_:L" '((0 . "INSERT") (66 . 1))))
- (repeat (setq i (sslength ss))
- (setq obj (vlax-ename->vla-object (ssname ss (setq i (1- i)))))
- (princ(LM:GetAttributeValue(obj) "Matricola"))
- )
- )
- (princ)
- )(vl-load-com)
但失败了。。。有什么提示吗? |