cad线段求和
cad2007中多个线段求总和的命令
在CAD2007中,有一种非常便捷的命令可以帮助我们求解多个线段的总和,即“PEDIT(多段线编辑)”命令。
1. PEDIT命令的基本介绍PEDIT命令是将选定的线条转化为多段线,从而方便进行编辑和求解总和。
在CAD2007中,我们可以通过以下步骤使用PEDIT命令:(1)在命令栏中输入“PEDIT”并按下Enter键;(2)选中需要编辑的线段;(3)按下Enter键确认选择;(4)在弹出的选项中选择“多段线更改”。
2. 求解多个线段总和的方法使用PEDIT命令可以轻松地将多个线段转化为多段线,并获得它们的总长度。
具体操作步骤如下:(1)输入“PEDIT”命令,并选中需要计算总和的线段;(2)转换线段为多段线后,右键点击多段线并选择“属性”;(3)在属性框中可以看到多段线的长度,即为多个线段的总和。
3. 个人理解和观点PEDIT命令在CAD2007中为我们提供了一种方便快捷的方式来求解多个线段的总和。
通过将线段转化为多段线,我们可以轻松地获取它们的总长度,从而方便后续的工程计算和设计。
这种命令的设计简洁明了,符合用户的使用习惯,极大地提高了工作效率。
4. 总结回顾通过PEDIT命令,我们可以将多个线段转化为多段线,并求解它们的总和。
这一功能在CAD2007中极大地方便了工程设计和绘图工作,为工程师和设计师提供了强大的工具和支持。
在实际操作中,我们可以灵活运用PEDIT命令,将其应用于各类线段的总和计算,从而更加高效地完成工作。
通过以上分析和解释,相信你已经对CAD2007中多个线段求总和的命令有了更深入的理解。
希望本篇文章对你有所帮助。
PEDIT命令在CAD2007中的应用还有很多方面,不仅可以用于求解多个线段的总和,还可以进行诸如删除、连接、修剪等操作,极大地提高了绘图和设计的效率。
下面我们将进一步探讨PEDIT命令的其他功能和应用场景。
1. 删除多段线中的线段除了将线段转化为多段线之外,PEDIT命令还可以用于删除多段线中的某些线段。
cad查询多个线段长度总和
CAD查询多个线段长度总和
在 CAD 设计中,我们经常需要计算出多个线段的长度总和,这对于设计的精度和效率都有很大帮助。
本文将介绍如何使用 AutoCAD 和 CAD 脚本来查询多个线段
的长度总和。
一、使用AutoCAD查询多个线段长度
在 AutoCAD 中,我们可以使用“线段长度”查询功能来获取单个线段的长度,但
是如果要查询多个线段的长度总和,可以使用以下步骤:
1.选择“表格”选项卡,然后选择“从对象创建表格”选项来创建一个表格。
2.选择要查询的线段并将其添加到表格中。
3.在表格中添加一个新的列,用于计算每个线段的长度,可以使用“公
式”功能来计算线段长度,公式示例为“=len(A2)”,其中“A2”是该线段的对
象标识符。
4.在表格底部添加“求和”功能来计算多个线段的长度总和。
以上步骤可以帮助我们查询多个线段的长度总和,但是如果我们需要查询的线
段数量非常多,手动添加到表格中可能会很麻烦。
这时候我们可以使用 CAD 脚本
来自动查询和计算多个线段的长度总和。
二、使用CAD脚本查询多个线段长度
CAD 脚本是一种可以在 AutoCAD 中执行的脚本,我们可以使用 CAD 脚本来自
动执行多个操作。
以下是使用 CAD 脚本查询多个线段长度的步骤:
1.从 AutoCAD 命令行中启动“SCRIPT”命令来打开脚本编辑器。
2.在脚本编辑器中,创建一个新的文件并将以下代码复制到文件中:
``` (setq total_length 0.0) (setq ss (ssget。
CAD中计算多条线段的长度
CAD中计算多条线段的长度
首先打开中望CAD软件,打开到我们做好的图形的模板
怎么在CAD批量统计各个线段的长度
然后在命令行输入【li】键,就会弹出选项,选择第一个【LI(LIST)】,然后按下【enter】键
怎么在CAD批量统计各个线段的长度
随后命令行会显示【列出选取对象】,这时候需要我们在自己创建的图形中,把鼠标的光标移动到需要测量的线段上,选择了需要测量的线段后它是会变成虚线的哦~
怎么在CAD批量统计各个线段的长度
最后,一键选好需要测量的图案之后,按下【enter】键,就会自动计算线段长度啦。
— 1 —。
CAD如何统计多线段总长度
(setq SUMLEN (+ SUMLEN TLEN))
(setq N (1+ N))
)
(princ (strcat "\n共选择 " (itoa (sslength SS)) " 条线段. 线段总长: " (rtos SUMLEN 2 3) " .")) (princ)
(vl-load-com) (set 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)))
)
将以上代码复制在记事本内后“另存为”→“统计线段长度.lsp” 打开CAD,运行“appload”命令加载刚保存的“统计线段长度.lsp”文件 按命令提示“程序:统计线段长度 命令:zz” 输入命令zz选择要统计长度的线段即可。
命令: 程序:统计线段长度 命令:zz命令: 命令:zz选择对象: 指定对角点: 找到 4 个 选择对象: 共选择 4 条线段. 线段总长: 2365.36
CAD 统计多条多线段长度
2013-11-06 21:55:12| 分类: CAD |举报|字号 订阅
TE>CAD 统计多条多线段长度 - 阳舟 - 轻钢别墅的博客TE>
CAD中如何累计计算不规则线段长度(信誉担保)
【如果只是计算多个闭合的图形的总周长】1,bo命令创建面域2,uni命令合并面域3,aa命令点选合并后的面域即可看到周长【如果需要计算多条不闭合的多段线总长度--包括其中夹杂很多闭合图形的,也可用此法】1,把以下代码拷贝到记事本,并保存为lsp后缀2,把该lsp文件拷贝到cad安装目录的support目录下3,在cad中用appload命令加载该lsp (在每个新窗口中都要重新加载一次)4,使用LL命令选中全部多段线就可以算出到总长度5,感谢写这段lsp代码的人!;;;-----------------------------------------------------;;;程序名:linelong.LSP;;;功能:计算线段和多义线的长度;;;版权:(C) copyright 2001.8 by maohong. All Rights Reserved!;;;-----------------------------------------------------(defun c:ll( / a n index0 tuyname)(setq a (ssget))(setq n (sslength a)) ;求出选择集中的图元数目(setq index0 0) ;设置计数器(setq s 0)(repeat n ;对后面的表达式进行N次计算(setq tuyname (ssname a index0));返回选择集中由序号指定的图元名(setq index0 (+ index0 1)) ;计数器加一(setq ent1 (entget tuyname))(setq et (length ent1))(setq et1 et)(setq index1 0)(setq test 0)(setq x2 0)(setq y2 0)(setq x1 0 y1 0)(setq s0 0)(repeat 2(setq xy (nth index1 ent1));计算line线长(if (= (cdr xy) "LINE")(progn(setq index2 0)(repeat et1(setq xy (nth index2 ent1))(if (= (car xy) 10)(progn(setq x1 (nth 1 xy))(setq y1 (nth 2 xy))))(if (= (car xy) 11)(progn(setq x2 (nth 1 xy))(setq y2 (nth 2 xy))))(setq index2 (+ index2 1)))(setq s0 (sqrt (+(* (- x2 x1) (- x2 x1)) (* (- y2 y1) (- y2 y1)))))));line线计算结束;计算"LWPOLYLINE"线长(if (= (cdr xy) "LWPOLYLINE")(progn(setq index2 0)(repeat et1(setq xy (nth index2 ent1))(if (= (car xy) 10)(if (= test 1)(progn(setq x2 x1)(setq y2 y1)(setq x1 (nth 1 xy))(setq y1 (nth 2 xy))(setq s0 (+ s0 (sqrt (+(* (- x2 x1) (- x2 x1)) (* (- y2 y1) (- y2 y1)))))) )))(if (= (car xy) 10)(if (= test 0)(progn(setq x1 (nth 1 xy))(setq y1 (nth 2 xy))(setq test 1))))(setq index2 (+ index2 1)))));计算"LWPOLYLINE"线结束(setq index1 (+ index1 1)))(print s0)(setq s (+ s s0)))(print )(princ "总长度:")(princ s)(setq a nil)(princ))。
CAD一键统计所有线段长度
CAD一键统计所有线段长度
在这里教大家使用CAD梦想画图软件一键统计图纸上所有线段的长度 操作工具 操作系统:Windows10 CAD软件:CAD梦想画图 步骤 1.图上是需要统计总长度的三条线段,点击功能菜单下的测量选项,如下图动画所示: 菜单选项
2.在弹出的测量工具条中选择“计算曲线长度”,如下图动画所示: 计算曲线长度
3.接着框选所有对象,点击空格,就会弹出显示总长度的对话框了
CAD工程图纸数字怎么实现自动求和?
CAD⼯程图纸数字怎么实现⾃动求和?在⼯程施⼯设计中,⼀定会涉及到⼯程量的计算,那么图纸上的数字相加操作就变得⾮常重要,如果能通过选择后⾃动求和,⽆疑会省去很多⼯作时间,AutoCAD⼯程图纸数字怎么⾃动求和呢?有什么简单的⼯具吗?AutoCAD⼯程图纸如何进⾏相加的操作?⼀、数字求和⼯具下载1、数字求和⼯具 as.lsp下载:,建议下载后,存放在D盘 Program files\autocad ⽬录中备⽤.2、运⾏AutoCAD2013,并打开1份⼯程施⼯图纸,在图纸打开后,点击上⽅菜单栏中的⼯具,在菜单中依次打开 AutoLISP- 加载应⽤程序.3、找到存放在D盘 Program files\autocad ⽬录中 as.lsp应⽤程序,并点击加载,4、此时可以看到 as.lsp已经成功加载,为了⽅便使⽤,建议将 as.lsp添加到启动组中,点击下⾯的内容.5、通过添加,找到D盘 Program files\autocad ⽬录中 as.lsp应⽤程序并打开.6、当as.lsp 应⽤程序出现在启动组中时,点击关闭,然后把加载/卸载应⽤程序窗⼝关闭.这样⽂本数字求和⼯具 as.lsp就安装好了.⼆、求和⼯具实战1、回到图纸的操作界⾯,先⽤⿏标左键点选择多个含数字的⽂本,然后在命令⾏中输⼊ as, 此时敲⼀个空格,就会得到选中的数字的和了.2、也可以先在命令⾏中输⼊ as,敲⼀个空格,此时⿏标左键会变成对象选取状态,每选择⼀个含数字的⽂本,命令窗⼝上都会有提⽰。
选好后,再敲⼀下空格,就会看到相加的值了.3、⽂本数字求和⼯具 as.lsp 只⽀持型如:钉23,钉23.12m,23.12M,钉20⽶的含数字的⽂本,并且不⽀持负数。
如果是多⾏⽂字则⽆法求和,此时可以先选中它们,再输⼊x命令,然后敲下回车炸开,就可以了。
CAD多条直线长度计算命令:CD
一、先快速选择,快速选择里选线颜色黄色,,然后就可以全部选中黄颜色的线了。
把黄色的线复制然后粘贴到旁边就可以随便你折腾了。
选中全部黄色的线,命令行输入li 回车。
应该就会出来线的总长度的!追问我看不懂li 后出来的对话框,好多“长度”,不知道哪一个是我需要的。
我大概知道是要在快速选择里选择图层,再在“值”出选择新建图层的名称,好像还有什么步骤,然后总长度就出来了回答新建一个记事本,复制下面的东西,另存为总长度.lsp 然后加载这个lsp 运行TE(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 23) "米."))(princ) )提问者评价总长度出来了!谢谢!二、不在一线直线上,合并不了。
无法直接得出总长,测一下然后算一下吧,你这线怎么要算长度?看着也不是有什么实际意义的线,应该不是按实物的长度去画的一些东西。
CAD中自动求和与自动求面积的解决方案
AutoCAD中数值自动求和与多段线自动计算面积和及长度和的解决方案一、数值的自动求和解决将下方阴影区程序复制,另建文本文档,打开粘贴后另存为“数值求和.lsp”,保存在常用软件备份目录下。
在CAD启动完成后在命令行输入“ap”命令,在弹出的“加载/卸载应用程序”对话框中,查找存放的“数值求和.lsp”并点击“加载”,并可在启动组中填加该lsp文件。
加载成功后,需要求和时,在命令行输入“sum”命令,然后选择需求和的数值,回车确认后即可在命令行见到求和结果。
程序(阴影区全部复制);=============================Sum function=============================(Defun C:Sum( / cmdmode sset ssl nsset temp ssl1 total)(if *error* quit) ;Exit CAD when error exists(setq cmdmode (getvar "cmdecho")) ;store the content of "cmdecho" in variable cmdmode(setvar "cmdecho" 0);(prompt "\nSelect numbers : ")(setq sset (ssget))(if (null sset)(progn(princ "\nError: Nothing selected!\n")(princ))(progn(setq ssl (sslength sset)) ; return the length of sset(setq nsset (ssadd)) ; construct a new null selections set(while (> ssl 0)(setq temp (ssname sset (setq ssl(1- ssl))));assign the ss1th member name of sset to temp(if (= (cdr (assoc 0 (entget temp))) "TEXT")(ssadd temp nsset) ; add temp to nsset))(setq ssl (sslength nsset))(print ssl)(princ "text entities are found.")(setq total 0)(setq ssl1 ssl)(while (> ssl 0)(setq temp (ssname nsset (setq ssl (1- ssl))))(setq number (atof(cdr(assoc 1 (entget temp)))))(if (= 0 number)(setq ssl1 (1- ssl1))(setq total (+ total number))))(princ "\nThe Sum of the ")(princ ssl1)(princ " numbers selected is ")(princ total)))(setq cmdecho cmdmode)(princ));=============================End=======================================二、面积自动求和及多段线长度求和将下方阴影区程序复制,另建文本文档,打开粘贴后另存为“面积求和.lsp”,保存在常用软件备份目录下。
cad,表格,求和
竭诚为您提供优质文档/双击可除cad,表格,求和篇一:cad中数据统计方法cad中统计数字的方法:(1)使用cad中的快捷键tt,但是需要先进行加载,加载方法是:打开cad,选择菜单栏---工具---加载应用程序---选择窗口中全部文件---加载(即可)。
然后就可以用这个快捷键了。
在cad中选择需要计算的数据,然后tt快捷键,点下空格后就会出现一个对话框了。
(2)在绘图过程中,经常会对数字文本进行四则运算,或者统计数字,在现有的cad命令中没有直接命令与之相关,用计算器又麻烦。
所以可以用一个小程序来解决。
我觉得挺好的。
快捷键tj。
用法:1、先加载程序,首先会提示你如何用这个程序。
2、然后你输入计算结果的精度,即小数点位数:这个只要在开始的时候输入就可以了,以后的命令你不用输入精度,如果你要调整精度,随时输入命令jd.3、下面为它的具体用法,你可以选择多个文字,如果是除法,劝你最好不要选择0数字,否则会出错。
而且命令可以连用,直到你空输入(没有选择或者取点)为止。
+-*/命令不用多说。
..命令为对所选文字同时加减乘除某个数。
4、统计的命令为tj。
其速度是很快的,我曾对十万级的数字验证,求结果既快又准。
5、这个程序适用于各个版本,我甚至觉得可以用于dos 的cad版本。
原程序:;;;说明(alert"提醒:\n请首先设置好输精度,在绘图的过程中可随时用命令jd设置精度。
\n命令\"+-*/\"分别代表对所选择的数字求和差积商。
\n其中\"-/\"则是以你第一个选到的数字文本为被减数和被除数。
\n命令\"..\"(点点)代表对所选择的数字文本统一加减乘除某个数,默认为1。
\n命令\"tj\"代表对所选择的数字文本进行数学统计。
\n所有生成的新文本均与第一个选到的数字文本的样式相同(除角度外)。
");;;定义了一个全局变量为精度(defunc:jd(/)(prompt"\n请输入精度,直接回车则为系统精度:")(initget4)(if(setqpRecision(getint))(princ)(setqpRecision(getvar"lupRec"))))(c:jd);;;加(defunc:+(/keyselinsfirstnumlstresult)(while(common1)(setqresult(apply+(cadrnumlst)))(common2))(princ));;;减(defunc:-(/keyselinsfirstnumlstresult)(while(common1)(setqresult(apply-(cadrnumlst)))(common2))(princ));;;乘(defunc:*(/keyselinsfirstnumlstresult)(while(common1)(setqresult(apply*(cadrnumlst)))(common2)篇二:word中如何实现表格自动求和等公式运算word中如何实现表格自动求和等公式运算1.打开一个需要进行数据计算的表格,如下图中,我们已知五个学生的语文、数学、外语成绩,我们要通过公式完成总分和平均分的计算;2把光标移动到要求总分的单元格,点击菜单栏的“表格”菜单,执行菜单中的“公式”命令。
cad中合并线段的方法
cad中合并线段的方法英文回答:Method 1: Using the "Join" Tool.1. Select the two lines that you want to join.2. Click on the "Join" tool in the "Modify" tab.3. The two lines will be joined into a single line. Method 2: Using the "PEdit" Command.1. Type "PEdit" in the command line.2. Select the two lines that you want to join.3. Right-click and select "Join".4. The two lines will be joined into a single line.Tips:To join multiple lines at once, hold down the Shift key while selecting the lines.If the lines are not aligned, you can use the "Trim" tool to trim the lines before joining them.To extend the joined line beyond the end of the original lines, use the "Extend" tool.中文回答:方法 1,使用“连接”工具。
1. 选择要连接的两条线段。
2. 在“修改”选项卡中单击“连接”工具。
3. 两条线段将连接成一条线段。
autocad面积、周长求和小程序
autocad面积、周长求和小程序;求spline,polyline,lwpolyline,arc面积(defun c:ss ()(setq 总面积 0)(setq 总亩数 0)(setq 面积 0)(setq 总周长 0)(setq 周长 0)(setq k 0)(setq a nil)(setq a (ssget))(setq Len (sslength a))(repeat Len(setq name (ssname a k))(setq ent1 (entget name))(setq na (assoc 0 ent1))(setq na (cdr na))(if (= na "SPLINE")(progn(command "area" "o" name)(setq 面积 (getvar "area"))(setq 总面积 (+ 总面积面积))(setq 周长 (getvar "perimeter"))(setq 总周长 (+ 总周长周长))))(if (= na "POLYLINE")(progn(command "area" "o" name)(setq 面积 (getvar "area")) (setq 总面积 (+ 总面积面积)) (setq 周长 (getvar "perimeter")) (setq 总周长 (+ 总周长周长))))(if (= na "ARC")(progn(command "area" "o" name) (setq 面积 (getvar "area")) (setq 总面积 (+ 总面积面积)) (setq 周长 (getvar "perimeter")) (setq 总周长 (+ 总周长周长))))(if (= na "CIRCLE")(progn(command "area" "o" name) (setq 面积 (getvar "area")) (setq 总面积 (+ 总面积面积)) (setq 周长 (getvar "perimeter")) (setq 总周长 (+ 总周长周长))))(if (= na "ELLIPSE")(progn(command "area" "o" name) (setq 面积 (getvar "area")) (setq 总面积 (+ 总面积面积)) (setq 周长 (getvar "perimeter"))(setq 总周长 (+ 总周长周长))))(if (= na "LINE")(progn(command "area" "o" name)(setq 面积 (getvar "area"))(setq 总面积 (+ 总面积面积))(setq 周长 (getvar "perimeter"))(setq 总周长 (+ 总周长周长))))(if (= na "LWPOLYLINE")(progn(command "area" "o" name)(setq 面积 (getvar "area"))(setq 总面积 (+ 总面积面积))(setq 周长 (getvar "perimeter"))(setq 总周长 (+ 总周长周长))))(setq k (+ k 1))(setq 总亩数 (/ 总面积 666.667)))(princ (strcat "\n总周长=" (rtos 总周长) "米"))(princ (strcat "\n总面积=" (rtos 总面积) "平方米, " (rtos 总亩数) "亩"))(princ))。
CAD上算一个图层的所有线段的长度之和
(princ "\n程序:统计线段长度命令:test")(defun C:TEST (/ 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 3) "米."))(princ))将以上代码复制在记事本内后“另存为”→“统计线段长度.lsp”打开CAD,运行“appload”命令加载刚保存的“统计线段长度.lsp”文件按命令提示“程序:统计线段长度命令:test”输入命令test选择要统计长度的线段即可。
附:我的命令行操作提示命令:命令: appload已成功加载统计线段长度.lsp。
命令:程序:统计线段长度命令:test命令:命令: test选择对象: 指定对角点: 找到 4 个选择对象:共选择 4 条线段. 线段总长: 1667.294米这个与大家分享!。
cad如何合并线段
cad如何合并线段
cad如何合并线段呢?下面店铺把方法都教给大家,一起来学习吧。
cad如何合并线段的方法:
cad合并线段的步骤·1:首先去掉,或隐藏产品图面的尺寸,如以下图片。
cad合并线段的步骤·2:输入‘PE'点回车键,在CAD界面命令框中会出现如以下图片。
在输入’M‘.
cad合并线段的步骤·3:在输入’M‘.后这时就可以选择你要合并的多线段了,可以单个点,也可以框选,注意不要漏选哦。
cad合并线段的步骤·4:选好以后+回车会出现以下情况,这时不要选’否‘哦,直接回车就好了。
cad合并线段的步骤·5:回车后会出现如以下图片,可以手点,也可以输入命令’J‘+回车。
合并好以后,把鼠标放在线上面,会全部变亮,这说明合并OK了。
CAD中自动求和与自动求面积的解决方案
C A D中自动求和与自动求面积的解决方案(总3页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--AutoCAD中数值自动求和与多段线自动计算面积和及长度和的解决方案一、数值的自动求和解决将下方阴影区程序复制,另建文本文档,打开粘贴后另存为“数值求和.lsp”,保存在常用软件备份目录下。
在CAD启动完成后在命令行输入“ap”命令,在弹出的“加载/卸载应用程序”对话框中,查找存放的“数值求和.lsp”并点击“加载”,并可在启动组中填加该lsp文件。
加载成功后,需要求和时,在命令行输入“sum”命令,然后选择需求和的数值,回车确认后即可在命令行见到求和结果。
程序(阴影区全部复制);=============================Sum function=============================(Defun C:Sum( / cmdmode sset ssl nsset temp ssl1 total)(if *error* quit) ;Exit CAD when error exists(setq cmdmode (getvar "cmdecho")) ;store the content of "cmdecho" in variable cmdmode(setvar "cmdecho" 0);(prompt "\nSelect numbers : ")(setq sset (ssget))(if (null sset)(progn(princ "\nError: Nothing selected!\n")(princ))(progn(setq ssl (sslength sset)) ; return the length of sset(setq nsset (ssadd)) ; construct a new null selections set(while (> ssl 0)(setq temp (ssname sset (setq ssl(1- ssl))));assign the ss1th member name of sset to temp(if (= (cdr (assoc 0 (entget temp))) "TEXT")(ssadd temp nsset) ; add temp to nsset))(setq ssl (sslength nsset))(print ssl)(princ "text entities are found.")(setq total 0)(setq ssl1 ssl)(while (> ssl 0)(setq temp (ssname nsset (setq ssl (1- ssl))))(setq number (atof(cdr(assoc 1 (entget temp)))))(if (= 0 number)(setq ssl1 (1- ssl1))(setq total (+ total number))))(princ "\nThe Sum of the ")(princ ssl1)(princ " numbers selected is ")(princ total)))(setq cmdecho cmdmode)(princ));=============================End=======================================二、面积自动求和及多段线长度求和将下方阴影区程序复制,另建文本文档,打开粘贴后另存为“面积求和.lsp”,保存在常用软件备份目录下。
CAD连续线性标注相加
CAD连续线性标注相加
首先先学习一下标注的方法,打开电脑上的cad,在cad中任意画上几条线段,绘画完成后,在下方键入命令框中,输入快捷键DLI和空格,选择所绘图形中要测量的第一个点和第二个点,按住鼠标进行上移,即可看到前面两点之间被成功进行标注;若后面所有的点都要进行标注,一个一个的进行标注则很麻烦,那么我们就要使用连续标注,在下方键入命令框中,输入快捷键DCO和空格,接着连续选中后面的第三个点、第四个点等等,选中后面所有的点,即可进行连续标注。
CAD连续标注快捷键是dco。
首先在cad菜单栏中选择标注—连续,这时候连续标注会自动选择之前标注的第二点,在想要标注的其它点依次单击就可以做出连续标注。
在适当场合中使用连续标注能大大提高绘图的效率,不会使绘图突然中断。
CAD中如何累计计算不规则线段长度(信誉担保)
CAD中如何累计计算不规则线段长度(信誉担保)【如果只是计算多个闭合的图形的总周长】1,bo命令创建⾯域2,uni命令合并⾯域3,aa命令点选合并后的⾯域即可看到周长【如果需要计算多条不闭合的多段线总长度--包括其中夹杂很多闭合图形的,也可⽤此法】1,把以下代码拷贝到记事本,并保存为lsp后缀2,把该lsp⽂件拷贝到cad安装⽬录的support⽬录下3,在cad中⽤appload命令加载该lsp (在每个新窗⼝中都要重新加载⼀次)4,使⽤LL命令选中全部多段线就可以算出到总长度5,感谢写这段lsp代码的⼈!;;;-----------------------------------------------------;;;程序名:linelong.LSP;;;功能:计算线段和多义线的长度;;;版权:(C) copyright 2001.8 by maohong. All Rights Reserved!;;;-----------------------------------------------------(defun c:ll( / a n index0 tuyname)(setq a (ssget))(setq n (sslength a)) ;求出选择集中的图元数⽬(setq index0 0) ;设置计数器(setq s 0)(repeat n ;对后⾯的表达式进⾏N次计算(setq tuyname (ssname a index0));返回选择集中由序号指定的图元名(setq index0 (+ index0 1)) ;计数器加⼀(setq ent1 (entget tuyname))(setq et (length ent1))(setq et1 et)(setq index1 0)(setq test 0)(setq x2 0)(setq y2 0)(setq x1 0 y1 0)(setq s0 0)(repeat 2(setq xy (nth index1 ent1));计算line线长(if (= (cdr xy) "LINE")(progn(setq index2 0)(repeat et1(setq xy (nth index2 ent1))(if (= (car xy) 10)(progn(setq x1 (nth 1 xy))(setq y1 (nth 2 xy))))(if (= (car xy) 11)(progn(setq x2 (nth 1 xy))(setq y2 (nth 2 xy))))(setq index2 (+ index2 1)))(setq s0 (sqrt (+(* (- x2 x1) (- x2 x1)) (* (- y2 y1) (- y2 y1))))) ));line线计算结束;计算"LWPOLYLINE"线长(if (= (cdr xy) "LWPOLYLINE")(progn(setq index2 0)(repeat et1(setq xy (nth index2 ent1))(if (= (car xy) 10)(if (= test 1)(progn(setq x2 x1)(setq y2 y1)(setq x1 (nth 1 xy))(setq y1 (nth 2 xy))(setq s0 (+ s0 (sqrt (+(* (- x2 x1) (- x2 x1)) (* (- y2 y1) (- y2 y1)))))) ) ))(if (= (car xy) 10)(if (= test 0)(progn(setq x1 (nth 1 xy))(setq y1 (nth 2 xy))(setq test 1))))(setq index2 (+ index2 1)))));计算"LWPOLYLINE"线结束(setq index1 (+ index1 1)))(print s0)(setq s (+ s s0)))(print )(princ "总长度:")(princ s)(setq a nil)(princ))。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一个简单的源代码,测试后可以修改编辑让它更符合你的要求:
(princ "\n程序:统计线段长度 命令:xkbuild")
(defun C:xkbuild (/ CURVE TLEN SS N SUMLEN)
(vl-load-com)
(setq TLEN (vlax-curve-getdistatparam CURVE (vlax-curve-getendparam CURVE)))
(setq SUMLEN (+ SUMLEN TLEN))
(setq N (1+ Fra bibliotek)) )
(princ (strcat "\n共选择 " (itoa (sslength SS)) " 条线段. 线段总长: " (rtos SUMLEN 2 3) " ."))
(princ)
)
将以上代码复制在记事本内后“另存为”→“统计线段长度.lsp”
打开CAD,运行“appload”命令加载刚保存的“统计线段长度.lsp”文件
按命令提示“程序:统计线段长度 命令:xkbuild”
输入命令xkbuild选择要统计长度的线段即可。
附:我的命令行操作提示
命令:
命令: appload
已成功加载 统计线段长度.lsp。
命令:
程序:统计线段长度 命令:xkbuild命令:
命令:xkbuild选择对象: 指定对角点: 找到 4 个
附:我的命令行操作提示
命令:
命令: appload
已成功加载 统计线段长度.lsp。
命令:
程序:统计线段长度 命令:xkbuild命令:
(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)))
命令:xkbuild选择对象: 指定对角点: 找到 4 个
附:我的命令行操作提示
命令:
命令: appload
已成功加载 统计线段长度.lsp。
命令:
程序:统计线段长度 命令:xkbuild命令:
命令:xkbuild选择对象: 指定对角点: 找到 4 个
附:我的命令行操作提示
命令:
命令: appload
已成功加载 统计线段长度.lsp。
命令:
程序:统计线段长度 命令:xkbuild命令:
命令:xkbuild选择对象: 指定对角点: 找到 4 个
选择对象:
共选择 4 条线段. 线段总长: 1623.294.