[求助]一个删除重复块程序运行有问题,麻烦高手查看!
;删除重复块 晓东 zxq0220 2008.7.11 <br/>(defun c:BKILL () <br/>(setvar "CMDECHO" 0) <br/>(if (setq ss (ssget "X" '((0 . "INSERT")))) (progn <br/> (setq i 0 ess (list)) <br/> (repeat (sslength ss) <br/> (setq s1 (ssname ss i) <br/> ent (entget s1) <br/> ss1 (ssget "X" (list '(0 . "INSERT") (assoc 2 ent)))) <br/> (if (> (sslength ss1) 1) (setq ss1 (ssdel s1) ess (cons ss1 ess))) <br/> (setq i (1+ i)) <br/> ) <br/> (setq i 0) <br/> (command ".erase") <br/> (repeat (length ess) <br/> (command (nth i ess)) <br/> (setq i (1+ i)) <br/> ) <br/> (command "") <br/>)) <br/>(setvar "CMDECHO" 1) <br/>(princ) <br/>) <br/> ZZXXQQ 发表于 2008-10-5 19:37这样试试:
大哥,请教下,网上看到的删除重复线,方便帮忙改下吗。我想取消当当前图层,任何图层,只要是重复的就能删了 ZZXXQQ 发表于 2008-10-5 19:37
这样试试:
增加回复,不然看不了啊 ZZXXQQ 发表于 2008-10-5 19:37
这样试试:
支持,感谢指导 (if (> (sslength ss1) 1) (setq ss1 (ssdel s1 <font color="#ee1169">ss1</font>) ess (cons ss1 ess))) <p><strong><font face="Verdana" color="#61b713">c3a139<font color="#000000">你好:</font></font></strong></p><p><strong><font face="Verdana" color="#000000">依照你的方式修正程序</font></strong></p><p><strong><font face="Verdana" color="#000000">,运行结果块全部被删除了</font></strong></p><p><strong><font face="Verdana" color="#000000">,无法达到删除重复块.</font></strong></p><p><strong><font face="Verdana">麻烦你在查看一下</font></strong></p><p><strong><font face="Verdana">,谢谢!</font></strong></p> <p><strong>自己顶一下</strong></p><p>,<strong>删除重复块程序运行有问题</strong></p><p><strong>,尚未解决期待高手帮忙?<p><strong></strong></p></strong></p><p><strong></strong></p> 本帖最后由 作者 于 2008-10-6 8:24:38 编辑
这样试试:
;删除重复块 明经 ZZXXQQ 2008.10.5 修改
(defun c:tt ()
(setvar "CMDECHO" 0)
(if (setq ss (ssget "X" '((0 . "INSERT")))) (progn
(command ".UNDO" "BE")
(setq i 0)
(repeat (sslength ss)
(setq s1 (ssname ss i)
ent (entget s1)
ss1 (ssget "X" (list '(0 . "INSERT") (assoc 2 ent))))
(if (> (sslength ss1) 1) (progn
(setq ss1 (ssdel s1 ss1))
(command ".erase" ss1 "")
))
(setq i (1+ i))
)
(command ".UNDO" "E")
))
(setvar "CMDECHO" 1)
(princ)
)
<p><strong><font face="Verdana" color="#da2549">ZZXXQQ版主你好:</font></strong></p><p><strong><font face="Verdana" color="#000000">运行结果块全部被删除了</font></strong></p><p><strong><font face="Verdana" color="#000000">,无法达到删除重复块.</font></strong></p><p><strong><font face="Verdana">,麻烦你在查看一下</font></strong></p><p><strong><font face="Verdana">,谢谢!</font></strong></p> 五楼已改。 <strong><font face="Verdana" color="#da2549"><p><strong><font face="Verdana" color="#da2549">ZZXXQQ版主你好:</font></strong></p></font></strong><p><strong><font face="Verdana" color="#000000">程序测试O.K.</font></strong></p><p><strong><font face="Verdana" color="#000000">谢谢你的帮助!</font></strong></p> <p>关键在 <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/setq.htm" target="_black"><font color="#0000ff">setq</font></a> ss1 <font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/ssdel.htm" target="_black"><font color="#0000ff">ssdel</font></a> s1 ss1<font color="#ff0000">)</font><font color="#ff0000">)</font><br/> </p>