文字或属性块连续增量拷贝程序
<p>大哥们.看看这个文字或属性块连续增量拷贝程序为什么出错呀</p><p>(defun c:nn( / asc e1 en k l p1 p2 sn st st1 st2)<br/> (setq *error* nil)<br/> (command "undo" "g") <br/> (princ "\n欢迎使用文字或属性块连续增量拷贝程序! GYSJY 2008.12.25")<br/> (if (setq sn (entsel "\n点取物体:"))<br/> (progn <br/> (setq p1 (cadr sn) p2 t sn (car sn)) <br/> (if (or (= "TEXT" (to 0))(and p2 (to 66)(= "INSERT" (to 0))))<br/> (progn<br/> (tqwz)<br/> (tqtxt)<br/> (setq l (1+ l ))<br/> (while p2<br/> (setq p2 (getpoint "\n下一点:" p1))<br/> (command "copy" sn "" p1 p2) <br/> (setq sn (entlast) p1 (to 10) en (entget sn))<br/> (tqwz)<br/> (setq asc (ascii st))<br/> (if p2 <br/> (if (and (= (strlen st) 1) <br/> (or (and (> asc 64) (< asc 90))<br/> (and (> asc 96) (< asc 122))<br/> )<br/> );判断字符串是否是单个字母<br/> (setq k (if (or (= asc 78)(= asc 72))(+ asc 2)(1+ asc));排除字母I,O<br/> st (chr k)<br/> ) ;如果字符串是单个字母,则按字母顺序增长 <br/> (setq st2 (substr st l) st2 (tost2)<br/> st (strcat st1 st2) <br/> ) ;按数字增长<br/> ) <br/> )<br/> (if (= "TEXT" (to 0))<br/> (progn<br/> (setq e1 (subst (cons 1 st) (assoc 1 en) en))<br/> (entmod e1)<br/> );修改文字<br/> (progn<br/> (setq e1 (entget (entnext (cdr (car en)))))<br/> (setq e1 (subst (cons 1 st) (assoc 1 e1) e1))<br/> (entmod e1)(entmod en)<br/> );修改属性<br/> )<br/> (princ st)<br/> )<br/> ) <br/> (princ "\n ***你所点取的图元不是属性块或文字!本程序只拷贝带属性的块或文字。***") <br/> )<br/> )<br/> )<br/> (command "undo" "e")<br/> (princ)<br/>)<br/></p>[求助]高手请进,帮我看下这个程序
本帖最后由 作者 于 2008-12-20 17:04:12 编辑 <br /><br /> <p>楼主这是自己写的呢还是copy别人 的程式呀?</p><p>(tqwz)和 (tqtxt)子程式在哪儿呀?</p><p>若有,要放在 </p><p>(setq *error* nil)<br/> (command "undo" "g") </p><p>语句之前加载<br/></p>而且“to”函数在使用之前也没被定义 <p>不行了不行了.格下真是火眼真睛.没有办法,这也让你给看出来了,</p><p>讲老实话.是我需要这样一个程序.但我自己又没有.也不会写.到网上一搜.</p><p>搜了好长时间呀,.才搜到.弄到自己电脑上.结果用不了.真没有办法.</p><p>我们做属性块时.一般都会做三到五个属性值.有时会更多.我们要改那些值,</p><p>要手动去改的话有就麻烦了.那怕一个属性块里只有一个属性值要改都改死人.更</p><p>何况我们这种属性块有多个属性值.所以就希望高手们能写一个批量改多项属性值的</p><p>的程序呀.</p> <p>没有那现在这样的程序呀,真的没有/找了好多回了</p> 357785513发表于2008-12-21 22:55:00static/image/common/back.gif没有那现在这样的程序呀,真的没有/找了好多回了<p></p><p>请到<a href="http://www.xdcad.net/forum/showthread.php?s=&threadid=656994&perpage=15&display=&pagenumber=1">http://www.xdcad.net/forum/showthread.php?s=&threadid=656994&perpage=15&display=&pagenumber=1</a>下载。</p><p><img src="http://p4.xdcad.net/forum/file_upload/587631_blockcopy.gif" border="0" alt=""/></p> 你好,不知你这个问题解决没,我也需要这个功能的LISP,如果解决了能否将源码发到我邮箱1332982303@qq.com,谢谢!!!
页:
[1]