cad统计多条直线的总长度(CAD多条线统计总长)
cad统计多条直线的总长度(CAD多条线统计总长)(repeat (sslength SS)(setq N 0)(vl-load-com)(setq SUMLEN 0)(setq SS (ssget '((0 . "CIRCLE ELLIPSE LINE *POLYLINE SPLINE ARC"))))
使用CAD经常会遇到统计多条线段、圆弧或多段线的总长,如果是连续的,使用List命令可以知道,但是不连续分散的就比较麻烦了,以下技巧就是针对这个问题的解决方法。
1. 下列文字复制到空白的txt文件中,保存,更名为“总长度.lsp”;
(princ "\n程序:统计线段长度 命令:te")
(defun C:TE (/ CURVE TLEN SS N SUMLEN)
(vl-load-com)
(setq SUMLEN 0)
(setq SS (ssget '((0 . "CIRCLE ELLIPSE LINE *POLYLINE SPLINE ARC"))))
(setq N 0)
(repeat (sslength SS)
(setq CURVE (vlax-ename->vla-object (ssname SS N)))
(setq TLEN (vlax-curve-getdistatparam
CURVE
(vlax-curve-getendparam CURVE)))
(setq SUMLEN ( SUMLEN TLEN))
(setq N (1 N)))
(setq sumlen(/ sumlen 1000))
(princ (strcat "\n共选择 " (itoa (sslength SS)) "条线段. 线段总长: "(rtos SUMLEN 2 3) "米."))
(princ) )
注意保存时将编码格式设置为ANSI
2. CAD – 工具 – 加载应用程序,(或者输入命令appload)找到刚建立的“总长度.lsp”文件,加载。
3. 关闭后,选中需要统计长度的线段,输入快捷键“TE”即可。
此外,上述加载方法在打开新的图纸后还需要重新加载,为了一劳永逸,在加载界面的启动组加入该文件,如下图,这样就不需要重复加载了。