请问怎么选择非图形图元?希望高手指教
本帖最后由 作者 于 2006-7-22 12:55:20 编辑 <br /><br /> <P>请教把一个对象层属性修改为随层该怎么编程??</P><P>或者怎么可以删掉一个对象的62组码?</P> 得到实体数据表已后,直接删除其中的 (62 . x)这一项,再 更新实体. 要随层把它设为256就可以啊,没必要删 <P>谢谢大家,不过我是刚学的,还不知道怎么删除(62.x)这一项,是用哪个函数啊?麻烦高手告诉我一下好吗?</P>
<P> </P> <P>下面是我按照你的意思设计的程式:</P>
<P>(defun c:test (/ ss1 n en en_list bylayer_yn)<BR> (princ "\nSelect object(s):")<BR> (setq ss1 (ssget)<BR> n 0<BR> )<BR> (while (setq en (ssname ss1 n))<BR> (setq en_list (entget en)<BR> bylayer_yn (assoc 62 en_list)<BR> )<BR> (if (and bylayer_yn (/= bylayer_yn 256))<BR> (progn<BR> (setq<BR> en_list (subst (cons 62 256) bylayer_yn en_list)<BR> )<BR> (entmod en_list)<BR> )<BR> )<BR> (setq n (1+ n)<BR> )<BR> )<BR> (princ)<BR>)</P> 谢谢楼上的,让我又学了不少东西,以后有问题再讨论 snria发表于2006-7-19 19:41:00static/image/common/back.gif
谢谢大家,不过我是刚学的,还不知道怎么删除(62.x)这一项,是用哪个函数啊?麻烦高手告诉我一下好吗?
<BR>我也非常想知道如何删除某一项,恳请专家出手! (defun c:test ()<BR> (setq en_list (entget (car (entsel "Secelt object:"))))<BR> (if (assoc 62 en_list)<BR> (progn<BR> (setq en_list (vl-remove (assoc 62 en_list) en_list))<BR> (entmod en_list)<BR> )<BR> )<BR>) 可以按照上面的方法,使用vl-remove函数来实现! <P>先谢谢楼上的,</P>
<P>不过在CAD里面调用你的程序,然后选择一个对象后返回的是删除了(62 . x)项的表,而对象的层属性却还是没有变化?为什么?是我的CAD有问题吗?</P>
页:
[1]
2