完善“中心线”程序
帮我 <p>zxx(中心线).vlx 适用于区域和实体</p><p></p><p></p> <p>你的程序呢???</p> <p></p><p>大哥们,我的程序传上来了,帮我看看,问题如下</p><p>1:画出的中心线不能自动归到中心线层</p><p>2:画出的中心线不在中心!</p><p>3:如果命令执行失败,我设置好的自动捕捉会全部关掉!.</p><p></p><p>希望大家试用,帮我完善一下!</p> 支持一下,正需要这样的程序,不知道有没有纯autolisp的呢?希望大侠们修改一个autolisp的,就此谢过! <p>1:画出的中心线不能自动归到中心线层</p><p>(if <font face="Courier New" color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/not.htm" target="_black"><font face="Courier New" color="#0000ff">not</font></a><font face="Courier New"><font color="#ff0000">(</font></font><a href="http://www.mjtd.com/object/autolisp/tblsearch.htm" target="_black"><font face="Courier New" color="#0000ff">tblsearch</font></a><font face="Courier New">
<font color="#ff00ff">"layer"</font>
<font color="#ff00ff">"cen"</font><font color="#ff0000">)</font><font color="#ff0000">)</font></font></p><p>(command "_layer" "n" "cen" "s" "cen" "l" "center" "cen" "c" "6" "cen" "")<br/>(setvar "clayer" "cen")<br/>)</p><p>3:如果命令执行失败,我设置好的自动捕捉会全部关掉!.</p><p>(....</p><p>;;;主函数</p><p>(setq olderror *error*)<br/>(setq *error* zxx_err)<br/>(command "_undo" "be")</p><p>.......</p><p>(command)</p><p>(command "._undo" "_end")<br/>(setvar "clayer" oldlayer)</p><p>(setvar "osmode" os)<br/>(setq *error* olderror)<br/>(princ)</p><p>)</p><p>;;;错误处理函数</p><p>(defun zxx_err(msg)<br/>(command)<br/>(command "._undo" "_end")<br/>(setvar "clayer" oldlayer)</p><p>(setvar "osmode" os)<br/>(setq *error* olderror)<br/>(princ)</p><p>)</p> <p>(<br/> defun c:zx()<br/> (prompt "欢迎您用此程序")<br/> (setvar "cmdecho" 0)<br/> </p><p>;创建新层<br/> <br/> (setq oldvar (getvar "OSMODE"))<br/> (setvar "OSMODE" 512)<br/> (command "pline")<br/> (while (= 1 1)<br/> <br/> (setq p1 (getpoint "\n请选择第一个点:"))<br/> <br/> (setq firstX (car p1))<br/> (setq firstY (cadr p1))<br/> (setq p2 (getpoint "\n请选择第二个点:"))<br/> (if p2<br/> (progn<br/> (setq secondX (car p2))<br/> (setq secondY (cadr p2))<br/> (setq mX (/ (+ firstX secondX) 2))<br/> (setq mY (/ (+ firstY secondY) 2))<br/> (setq mX (rtos mX))<br/> (setq mY (rtos mY))<br/> (command (strcat mX "," mY))<br/> )<br/> (progn<br/> (command "") <br/> )</p><p> )<br/> <br/> )<br/> (setvar "OSMODE" oldvar)<br/> (princ)<br/> <br/>)</p><p></p><p>试试这个!</p> <p>谢谢大哥的提示啦,但是对LISP程序不是太懂,所以还是搞不定啦!</p><p>能不能把修改好的程序发给我啦@!</p><p>谢谢啦!</p> xyp1964 发表于 2007-9-24 13:33
zxx(中心线).vlx 适用于区域和实体
院长牛逼:lol
页:
[1]