autocadlisp统计多段线方法

2025-11-04 21:52:14

1、打开cad软件,点击工具---autolisp-autolisp编辑器

autocadlisp统计多段线方法

2、打开autolisp编辑器,点击文件新建一个窗口。

autocadlisp统计多段线方法

3、将如下代码粘贴到新建的窗口

(defun c:tj(/ ss tlen obj k l)

  (setvar "cmdecho" 0)

  (if (setq ss (ssget))

    (progn

      (vl-load-com)

      (setq l (sslength ss) k 0 tlen 0 )

      (repeat l

        (setq ename (ssname ss k))

        (setq obj (vlax-ename->vla-object ename))

        (if (= (cdr (assoc 0 (entget ename))) "MLINE")

          (setq tlen (+ tlen (ml-length ename)))

          (setq tlen (+ tlen (vlax-curve-getdistatparam ename (vlax-curve-getendparam ename))))

        )

        (setq k (1+ k))

      )

      (princ (strcat "\n共选择 " (itoa l) " 个对象 | 总长度: " (rtos tlen 2 0)))

      ;(command "text" (getpoint "\n选取文字插入点") "" "" (rtos tlen 2 3))

      (alert  (strcat "\n共选择 " (itoa l) " 个对象 | \n总长度: " (rtos tlen 2 0)))

    )

    (princ "\n未选择对象")

  )

  (setvar "cmdecho" 1)

  (prin1)

)

autocadlisp统计多段线方法

4、输入完成之后点击加载命令,下图问加载无误之后的截面。

autocadlisp统计多段线方法

5、加载完成后返回到在cad窗口中,输入“tj”命令按照提示操作,提示选择需要统计的对象。

autocadlisp统计多段线方法

6、选择屏幕中的两条线段,图中已经标注每条直线为5000mm为了验证程序计算的结果。

autocadlisp统计多段线方法

7、选择完成之后按回车或者空格键,命令窗口显示计算结果为:“共选择 2 条线段. 线段总长: 10000.000毫米”和图中标注的两条线段长度之和一致,计算无误。

autocadlisp统计多段线方法

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢