359321852 发表于 2024-1-25 10:10:44

CAD标注统计插件

(defun c:bzcdqh()
    (setq cmd (getvar "cmdecho"))
    (setvar "cmdecho" 0)
    (if (progn
            (princ "\n请选取标注:")
            (setq ssa (ssget '((0 . "DIMENSION") )))
      )
      (progn
            (setq cdz 0)
            (setq i 0)
            (setq n (sslength ssa))
            (repeat n
               (setq dxf (entget (ssname ssa i)))
               (setq cdz (+ cdz (cdr (assoc 42 dxf))))
               (setq i (1+ i))
            )
            (alert (strcat "共选取了" (itoa n) "个标注,总长度=" (rtos cdz 2 3)))
            (princ (strcat "\n共选取了" (itoa n) "个标注,总长度=" (rtos cdz 2 3)))
      )
    )
    (setvar "cmdecho" cmd)
    (princ)
)

359321852 发表于 2024-1-25 10:18:01

不过这个插件有个缺陷,只能获取标注的“测量单位”数据,不能获取“文字替代”的数据
不知高手帮忙修改一下,当获取“文字替代”的数据为空时,再获取“测量单位”数据,然后再求和,那就棒了。

xpeagle 发表于 2024-1-25 10:51:13

试试,多谢分享了, 望继续改进,赞一个

烟花丝雨 发表于 2024-1-25 11:20:30

本帖最后由 烟花丝雨 于 2024-1-25 11:26 编辑

(defun c:bzcdqh()
    (setq cmd (getvar "cmdecho"))
    (setvar "cmdecho" 0)
    (if (progn
            (princ "\n请选取标注:")
            (setq ssa (ssget '((0 . "DIMENSION") )))
      )
      (progn
            (setq cdz 0)
            (setq i 0)
            (setq n (sslength ssa))
            (repeat n
               (setq dxf (entget (ssname ssa i)))
               (if (= (cdr (assoc 1 dxf)) "")
                            (setq cdz (+ cdz (cdr (assoc 42 dxf))))
                           
                            (setq cdz (+ cdz (atof (cdr (assoc 1 dxf)))))
                           
                        )
               (setq i (1+ i))
            )
            (alert (strcat "共选取了" (itoa n) "个标注,总长度=" (rtos cdz 2 3)))
            (princ (strcat "\n共选取了" (itoa n) "个标注,总长度=" (rtos cdz 2 3)))
      )
    )
    (setvar "cmdecho" cmd)
    (princ)
)

THZL 发表于 2024-1-25 14:40:24

感谢分享:handshake

清水白粥 发表于 2024-1-26 07:58:42

语法错误 ,用不了版主

yefei812678 发表于 2024-1-26 08:59:35

好东西值得拥有

菜鸟初来乍到 发表于 2024-1-26 10:41:22

感谢楼主分享

359321852 发表于 2024-1-29 09:37:16

烟花丝雨 发表于 2024-1-25 11:20


谢谢您的帮助,:handshake
页: [1]
查看完整版本: CAD标注统计插件