[求助]如何快速统计多条线段的总长度
<P>请高手指点如何快速统计多条线段的总长度,</P><P>用多条曲线和线段围成的闭合线段,我是先创建面域,再用list求周长,</P>
<P>但有时候创建不了面域,该怎么办?还有其他方法求总长度吗?</P>
<P>不是吧,没人知道吗?高手呢?帮帮忙啊</P> 如果不能 Join (连接) 为 Polyline (多义线) 而直接通过 List (查询) 命令来获取, 也可以通过 lsp 程序来进行统计累加. 可以到 lisp 版去看看 <P>LIST命令好象只能显示2条长度,而且不会累计。</P>
<P>LSP程序不太懂怎么操作,还是谢谢你,我去试试看,不行再问你啊</P> 没找到啊,你有吗?发个上来好吗? List 可以显示整个多义线的长度的. Lisp 版找不到的话, 可以发帖提问的, 那里一般很快就会有代码提供 思路-->线变复线-->查询。或使用天正软件。 能详细点吗? ;;;-----------------------------------------------------
;;;程序名:zz.LSP
;;;功能:计算线段和多义线的长度
;;;-----------------------------------------------------
(princ "\n程序:统计线段长度 命令:zz")
(defun C:zz (/ 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))
)
(princ (strcat "\n共选择 " (itoa (sslength SS)) " 条线段,线段总长:" (rtos SUMLEN 2 0) "毫米。"))
(princ)
)
页:
[1]