本帖最后由 ZZXXQQ 于 2020-8-12 10:50 编辑
 - ;标注面积和面积差 ZZXXQQ 2020-8-12
- (defun c:tt ()
- (if (and (princ "\n选择封闭线条: ")
- (setq ss (ssget '((-4 . "<OR") (0 . "CIRCLE")
- (-4 . "<AND") (0 . "*POLYLINE") (70 . 1) (-4 . "AND>")
- (-4 . "OR>"))))
- (= (sslength ss) 2)) (progn
- (setq en1 (ssname ss 0)
- en2 (ssname ss 1))
- (command "_.AREA" "o" en1)
- (setq a1 (getvar "AREA"))
- (command "_.AREA" "o" en2)
- (setq a2 (getvar "AREA"))
- (if (> a2 a1) (setq tmp a2 a2 a1 a1 tmp))
- (setq a3 (- a1 a2))
- (setq txt (strcat (rtos (/ a1 1e6) 2 3) "-" (rtos (/ a2 1e6) 2 3) "=" (rtos (/ a3 1e6) 2 3)))
- (command "_.TEXT" "C" (getpoint) (getvar "DIMTXT") "" txt)
- ))
- (princ)
- )
|