(defun c:wt (/ ar pnt utw)
(graphscr)
(setvar “cmdecho” 0)
(setvar “BLIPMODE” 0)
(setq a_area 0)
(prompt “n < ADD > area :”)
(command “area” “e” pause)
(setq PRMT (getvar “PERIMETER”))
(setq a_area (getvar “area”))
(setq s_area 0)
(setq cont 1)
(while (= cont 1)
(setq S (ENTSEL “< SUBTRACT > area : “))
(cond ((null s)
(setq cont 0)
(princ)
)
(T
(command “area” “e” S)
(setq narea (getvar “area”))
(setq s_area (+ s_area narea))
)
)
)
(setq t_area (- a_area s_area))
(setq tsize (getvar “textsize”))
(setq pnt (getpoint “n Writing point : “))
(setq pnt2 (polar pnt (* 1.5 pi) (* tsize 2)) )
(setq pnt3 (polar pnt2 (* 1.5 pi) (* tsize 2)) )
(setq wt (* t_area 2.7 0.001))
(command “color” “13”)
(command “text” pnt “” “” (strcat “Area = ” (rtos t_area 2 2) ” mm^2″ ))
(command “text” pnt2 “” “” (strcat “Perimeter = ” (rtos prmt 2 2) ” mm” ))
(command “text” pnt3 “” “” (strcat “Unit Weight = ” (rtos wt 2 3) ” Kg/m”))
(command “color” “bylayer”)
(princ)
)