<FONT face=宋体>(defun c:accum(/ a n un index e1 e num tol)
(setq a (ssget) tol 1)
(setq n (sslength a))
(setq un (getvar "luprec"))
(setvar "luprec" 8)
(setq index (- n 1))
(repeat n
(setq e1 (entget (ssname a index)) index (1- index))
(setq e (assoc 0 e1))
(if(= "TEXT" (cdr e))
(progn
(setq num (atof (cdr (assoc 1 e1))))
(setq tol (* tol num))
)
)
)
(princ (strcat " 总数是 " (rtos tol)))
(setvar "luprec" un)
(princ)
)
(defun c:sum(/ a n un index e1 e num tol)
(setq a (ssget) tol 0.0)
(setq n (sslength a))
(setq un (getvar "luprec"))
(setvar "luprec" 8)
(setq index (- n 1))
(repeat n
(setq e1 (entget (ssname a index)) index (1- index))
(setq e (assoc 0 e1))
(if(= "TEXT" (cdr e))
(progn
(setq num (atof (cdr (assoc 1 e1))))
(setq tol (+ tol num))
)
)
)
(princ (strcat " 总数是 " (rtos tol)))
; (alert (strcat " 总数是 " (rtos tol)))
(setvar "luprec" un)
(princ)
)</FONT> |