提取块的信息。
一个程序里中间的某个模块,需要提取块中子图元的属性信息,如图层,颜色等等。想用nentsel函数,单独试用该函数写了几句,基本够用了。现在的问题是,nentsel会提示用户选择目标,我想跳过这步,如何让函数直接获得程序里已经存在目标变量?因为我的程序开始已经选过一次目标并赋值给一个变量,所以不想再选择一次同样的目标。或者说如何带参数调用函数nentsel?不知道说清楚没有。
nentselp这个函数楼主看可行不?!
nentsel还真不知道怎么弄 对nentsel还不太清楚,所以也想知道,请高手作答 (entget(car(nentsel "\选取块内实体"))) 示例代码:
(defun c:tt ()
(while
(progn
(setq en (car (entsel "\n选择图块:")))
(and en
(not (= "INSERT" (cdr (assoc 0 (setq el (entget en))))))
)
)
)
(vlax-for obj
(vla-item (vla-get-blocks
(vla-get-ActiveDocument (vlax-get-acad-object))
)
(cdr (assoc 2 el))
)
(setq color (vla-get-color obj)
layer (vla-get-layer obj)
objname (vla-get-objectname obj)
)
(princ "\n对象名称 = ")
(princ objname)
(princ "\n对象图层 = ")
(princ layer)
(princ "\n对象颜色 = ")
(princ color)
;;添加你的操作代码
;;...
)
(princ)
) Gu_xl 发表于 2012-12-19 21:41 static/image/common/back.gif
示例代码:
超级还是有道理。这段代码很有用。我要的全有了。颜色,层,对象名称。这下干什么都行。我也来个超级感谢。 再请问:
这里说的对象名称相当于群码100,同时群码-1也叫对象名称(entity name),有什么区别。感觉-1这个可以作为许多函数的变量,而100就是个字符名称,没有什么用途。是吧? millermin 发表于 2012-12-21 10:26 static/image/common/back.gif
再请问:
这里说的对象名称相当于群码100,同时群码-1也叫对象名称(entity name),有什么区别。感觉-1这 ...
谢谢。我更喜欢这句程序。不过还是想知道这两种名称的真实意义。因为不搞懂概念,等于没入门。 Gu_xl 发表于 2012-12-19 21:41 static/image/common/back.gif
示例代码:
这个太有用了!!
页:
[1]