AutoCAD的功能很多,同时对多条线段偏移是可以的。AutoCAD有个功能叫autolisp,可以加载编程来实现重复操作,偏移的话就是重复操作,所以可以实现。你说的比较模糊,由于偏移的方向不同,编程的方法也不同。比如,你要全部向右偏移的话,那么就需要计算出最右点,然后偏移,这个应当没有问题。同样的向上偏移,向下偏移同理。最简单的程序是双向偏移,不用考虑方向,程序如下:(defun C:tes ( / #r1 &k1 &kw1 &ob1) (vl-load-com);加载VLAX函数 (if (and (setq &kw1 (ssget '((0 . "LINE,LWPOLYLINE,CIRCLE,ARC"))));对象为直线,多段线,圆,圆弧 (setq #r1 (getdist "\n请输入双向偏移的距离")) (> #r1 0);值大于0 (setq #r1 (* #r1 0.5));由于双向偏移,偏移的值减半 ) (progn (while (setq &k1 (ssname &kw1 0));取得一个对象 (setq &kw1 (ssdel &k1 &kw1)) (setq &ob1 (vlax-ename->vla-object &k1));转换为VLAX对象 (vla-offset &ob1 #r1);正向偏移 (vla-offset &ob1 (* #r1 -1));反向偏移 ) ) ) (prin1));复制到记事本,以【.lsp】为后缀命名,autolisp加载,命令【TES】
阅读全文 >