本帖最后由 llsheng_73 于 2013-10-23 17:21 编辑
tjherrlu 发表于 2012-11-21 17:43 
谢谢,代码可以达到我的想法!
膜拜!
图元对象的颜色值虽然是组码62相关的,但当它为随层时并不会出现,这个时候(assoc 62 ename)会返回NIL
如果进一步进行(cdr ....),它会出错,这时要取得它的颜色就只能通过所在图层去获取,相对来说比较麻烦
可以用vla-get很简单的回避这个问题
 - (vlax-get-property(vlax-ename->vla-object(car(entsel)))'COLOR)
同样的,如果要修改它的颜色也是,不能简单的进行(entmod (subst (cons 62 0)(assoc 62 ent)ent)),也会因为62组码有时并不存在而需要特殊处理
可以用vla-put来回避
 - (vlax-put-property(vlax-ename->vla-object(car(entsel)))'COLOR 1);1根据具体需要改成相应数值
|