一、先快速选择 ,快速选择里 选线 颜色 黄色, ,然后就可以全部选中 黄颜色的线了。 把黄色的线 复制 然后粘贴到旁边 就可以随便你折腾了。 选中全部黄色的线,命令行输入li 回车 。应该就会出来线的总长度的! 追问
我看不懂li 后出来的对话框,好多“长度”,不知道哪一个是我需要的。。我大概知道是要在快速选择里 选择图层,再在“值”出选择新建图层的名称,好像还有什么步骤,然后总长度就出来了 回答
新建一个记事本,复制下面的东西,另存为 总长度.lsp 然后加载这个lsp 运行TE (princ \程序:统计线段长度 命令:te\TLEN SS N SUMLEN) (vl-load-com) (setq SUMLEN 0) (setq SS (ssget '((0 . \(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 \共选择 \(itoa (sslength SS)) \条线段. 线段总长: \SUMLEN 2 3) \米.\提问者评价
总长度出来了!谢谢!
二、不在一线直线上,合并不了。无法直接得出总长,测一下然后算一下吧,你这线怎么要算长度?看着也不是有什么实际意义的线,应该不是按实物的长度去画的一些东西。 追问
我是覆盖在钢管图上面的,因为要计算所用的管道的总长度。 回答
象你图上的一个小点也是管道的实际长度?并且中间都是断开的?如果是布的管线的话,你应该不会有太多种类的长度,测出来,然后乘个数量就是了。 追问
CAD上是一比一的比例,上面的长度就是实际的长度,就这张图片对应实际200米左右,CAD上无论怎么缩小放大,尺寸都是不会改变的。这个用CAD的都应该知的。管道规格DN200、150、100、80、50、32、25,图上的就是DN25的钢管。 回答
(defun C:cd (/ CURVE TLEN SS N SUMLEN) (vl-load-com) (setq SUMLEN 0)
(setq SS (ssget '((0 .
\
(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)) )
(print (strcat \总长度: \ (princ) )
把这段加到你的lisp文件,然后输入命令“cd\ 追问
什么意思? 回答
就是一段代码。加到你的lisp文件里,就给你加了一个命令“CD”,运行这个命令就可以对选择内所有的直线计算长度之和。 追问
lisp文件是什么,在什么位置? 回答
在你的安装目录下的\\Support文件夹里,文件名是(acad2009.lsp),2009是我用的版本号,根据你的情况。用记事本打开后,把上面的代码复制到后面,保存,启动CAD,功能就可以用了。 提问者评价
非常感谢,能得出所有线段的总长度
三、先快速选择 ,快速选择里 选线 颜色 黄色, ,然后就可以全部选中 黄颜色的线了。 把黄色的线 复制 然后粘贴到旁边 就可以随便你折腾了。 选中全部黄色的线,命令行输入li 回车 。应该就会出来线的总长度的! 追问
我看不懂li 后出来的对话框,好多“长度”,不知道哪一个是我需要的。。我大概知道是要在快速选择里 选择图层,再在“值”出选择新建图层的名称,好像还有什么步骤,然后总长度就出来了 回答
新建一个记事本,复制下面的东西,另存为 总长度.lsp 然后加载这个lsp 运行TE
(princ \程序:统计线段长度 命令:te\C:TE (/ CURVE TLEN SS N SUMLEN) (vl-load-com) (setq SUMLEN 0) (setq SS (ssget '((0 . \(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 \共选择 \(itoa (sslength SS)) \条线段. 线段总长: \SUMLEN 2 3) \米.\提问者评价
总长度出来了!谢谢!
四、
相关推荐: