(defun c:ss()
(setq ss (ssget)
n 0
sum 0)
(repeat (sslength ss)
(setq en (ssname ss n))
(command "lengthen" en "")
(setq sum (+ sum (getvar "perimeter"))
n (+ n 1))
)
(ALERT (STRCAT "总长度:" (rtos sum 2)))
)
(defun c:tt (/ en n ss sum)
(setq ss (ssget))
(if (not ss)
(alert "未选择对象。")
(progn
(setq n 0 sum 0.0)
(repeat (sslength ss)
(setq en (ssname ss n))
(setq sum (+ sum (vla-get-length (vlax-ename->vla-object en)))) ; 直接获取长度
(setq n (1+ n))
)
(alert (strcat "总长度:" (rtos sum 2)))
)
)
(princ)
)
(defun c:tt (/ en n ss sum)
(setq ss (ssget))
(if (not ss)
(alert "未选择对象。")
(progn
(setq n 0 sum 0.0)
(repeat (sslength ss)
(setq en (ssname ss n))
(setq sum (+ sum (get-dxcd en))) ; 直接获取长度
(setq n (1+ n))
)
(alert (strcat "总长度:" (rtos sum 2)))
)
)
(princ)
)