 - (defun c:tt ( / )
- (vl-load-com)
- (setq ss (ssget '((0 . "lwpolyline"))) i 0 area 0)
- (repeat (sslength ss)
- (setq en (ssname ss i)
- ent (entget en)
- dxf70 (cdr(assoc 70 ent))
- pts nil)
- (foreach x ent (if (= (car x) 10) (setq pts (append (list (cdr x)) pts))))
- (if (or (= dxf70 1) (equal (distance (car pts) (last pts)) 0 1e-6))
- (progn (if (assoc 62 ent) (entmod (subst (cons 62 1)(assoc 62 ent) ent)) (entmod (append ent (list (cons 62 1)))))
- (setq area (+ area (Vlax-Get (Vlax-Ename->Vla-Object en) 'Area)))
- )
- (if (assoc 62 ent) (entmod (subst (cons 62 5)(assoc 62 ent) ent)) (entmod (append ent (list (cons 62 5)))) )
- )
- (setq i (1+ i))
- )
- (princ area)
- (princ)
- )
|