;;POLYAREA.LSP ;; Adds the area of one or more closed polylines ;; (defun C:POLYAREA (/ a ss n du) (setq a 0 du (getvar "dimunit") ss (ssget '((0 . "*POLYLINE")))) (if ss (progn (setq n (1- (sslength ss))) (while (>= n 0) (command "_.area" "_o" (ssname ss n)) (setq a (+ a (getvar "area")) n (1- n))) (alert (strcat "The total area of the selected\nobject(s) is " (if (or (= du 3)(= du 4)(= du 6)) ; ;The following 2 lines translate the area to square inches and feet ;for users using US engineering or architectural units: ; (strcat (rtos a 2 2) " square inches,\nor " (rtos (/ a 144.0) 2 3) " square feet.") ; ;In the following line, change the word "units" to whatever units ;you are using - meters, millimeters, feet, etc. ; (strcat (rtos (/ a 10000) 2 3) " square meters."))))) (alert "\nNo Polylines selected!")) (princ) ) (alert (strcat "POLYAREA.LSP" "\n\n Type POLYAREA to start")) (princ)