[原创](更新v1.3版) 随心所欲,向undo说不---> 动态框选倒角
本帖最后由 作者 于 2007-8-5 5:30:29 编辑 <br /><br /> <p><font color="#3300ff" size="4">软件升级到1.3版<br/>v1.3 消除半径过大及无法倒角引起中断退出。<br/>v1.2 支持单选亮显.支持设置倒角半径.支持回退(undo)<br/>v1.1 消除一些bug,支持连续操作(相当于fillet的m选项)</font></p><p><font color="#3300ff" size="4">2楼程序已更新</font></p><p><font color="#3300ff" size="4">{引子}</font></p><p><font size="3">画图的都知道,在进行fillet倒角的时候,常常遇到如下问题:</font></p><p><font size="3">.选错物体(通常是第二个),麻烦,要undo回去,重新操作,费时费工,影响心情。</font></p><p><font size="3">现在好了</font>,<font color="#ff0033"><font size="3">让我们一起向undo说“不</font>”。</font></p><p>;|</p><p> <font color="#de1039" size="5"><strong>xxdf (动态框选倒角)</strong></font><br/> </p><p> ----by lxx.2007.8<br/><font size="3"><font color="#0707b5">功能: 动态对曲线倒角,支持 line,arc,ellipse,spline,*polyline<br/> 特点: 1.智能选线.可框选多个,自动找最靠近的曲线进行倒角.<br/> 2.动态.框选时随鼠标移动,实时动态显示倒角结果,可以放弃操作,但绝对不会倒错.<br/> 杜绝因错误倒角导致返工.<br/> 倒角半径由"filletrad" 系统变量决定.也可先输入fillet命令,选r,调整半径.<br/>返回: nil.倒角过程中命令行无不爽的重复提示.</font></font></p><p><font color="#0707b5" size="3">版本</font><font size="3"><font color="#0707b5">:</font></font></p><p><font size="3"><font color="#0707b5">v1.3 消除半径过大及无法倒角引起中断退出。<br/>v1.2 支持单选亮显.支持设置倒角半径.支持回退(undo)<br/>v1.1 消除一些bug,支持连续操作(相当于fillet的m选项)<br/>版本: v1.0</font><br/></font>|;</p><p><font face="宋体" color="#000000" size="3"><font color="#ff0033">补充说明:</font><font color="#0000ff">实时显示,想画错都难!</font></font></p><p><font face="宋体" color="#000000" size="3">因实时显示结果,合适就点鼠标左键确定,或都没有合适的,可以回车退出or在不影响原图的变换位置点左键,hehe,想画错都难啊!!<br/>同时,程序保留了分别点取2个曲线的功能,即如果第一点点在曲线上,下一个提问不是问框选的另一点,而是问选第二条曲线,不过,这个就没有实时显示功能了。<br/>拟下一版本可中途响应修改倒角半径的要求,并可连续操作。</font><br/><br/><font size="3"><font color="#0000ee">感兴趣的可到下面链接或2楼</font><font color="#ff0033">下载</font>:</font> </p><p><a href="http://dreamskylxx.ys168.com/">http://dreamskylxx.ys168.com/</a></p><p> </p><p></p> zml84 发表于 2007-8-2 09:34你这个可以加个重复使用吗?没有退出命令之前可以一直倒,而不是倒一次就退出了 谢谢楼上的分享 没看懂,先收藏。 本帖最后由 作者 于 2007-8-5 5:29:24 编辑 <br /><br /> <p>本论坛的下载地址:</p><p>版本更新v1.3</p> 效果很棒! 以框选的两个角点和该点附近的对象,构成双元表进行倒角操作;<br/>若在拖动中对象改变,则撤销上一步操作,对新的对象进行倒角;<br/>直至退出!<br/> 有创意 <br/>;;;=========================================<br/>;;功能:圆角 使用getpoint模拟框选<br/>;;日期:zml84 于 2007-08-01 22:00<br/>(defun C:FF (/ TEST PT1 PT2 A B)<br/> ;;选择对象1<br/> (setq TEST t)<br/> (while TEST<br/> (if (setq PT1 (getpoint "\n选择对象:"))<br/> (if (and<br/> (setq PT2 (getcorner PT1 " >>>第二点:"))<br/> (setq SS (ssget "c" PT1 PT2))<br/> )<br/> (progn<br/> (setq A (list (ssname SS 0) PT1)<br/> TEST NIL<br/> )<br/> (if (>= (sslength SS) 2)<br/> (setq B (list (ssname SS 1) PT2))<br/> )<br/> )<br/> )<br/> (setq TEST NIL)<br/> )<br/> )<br/> ;;选择对象2<br/> (setq TEST t)<br/> (if (and A (= B NIL))<br/> (while TEST<br/> (if (setq PT1 (getpoint "\n选择对象:"))<br/> (if (and<br/> (setq PT2 (getcorner PT1 " >>>第二点:"))<br/> (setq SS (ssget "c" PT1 PT2))<br/> )<br/> (setq B (list (ssname SS 0) PT1)<br/> TEST NIL<br/> )<br/> )<br/> (setq TEST NIL)<br/> )<br/> )<br/> )<br/> ;;圆角操作<br/> (if (and A B)<br/> (command "_.fillet" A B)<br/> )<br/> (princ)<br/>) ;_结束 defun<br/>;;;=========================================<br/> 很好的创意! 好用! <p><font color="#3300ff" size="4">软件升级到1.3版<br/>v1.3 消除半径过大及无法倒角引起中断退出。<br/>v1.2 支持单选亮显.支持设置倒角半径.支持回退(undo)<br/>v1.1 消除一些bug,支持连续操作(相当于fillet的m选项)</font></p><p><font color="#3300ff" size="4">到2楼下载新程序</font></p> <p>请问:</p><p>在lisp中,调用command执行fillet,经常会出现倒角发生错误的情况。</p><p>而前台鼠标选择不会错误(autocad2004)</p><p>这种情况是怎么改进的?</p>