 - (defun GETPL (ED / ENTS PTS PTS2 EDS D)
- (setq PTS nil PTS2 nil)
- (setq ENTS (entget ED))
- (setq EDS ENTS)
- (while (setq ENTS (member (assoc 10 ENTS) ENTS))
- (setq PTS (append PTS (list (car ENTS) (cadr ENTS) (caddr ENTS) (cadddr ENTS))))
- (setq ENTS (CDR ENTS))
- )
- (setq PTS (reverse PTS))
- (repeat 3 (setq PTS (append (cdr PTS) (list (car PTS)))))
- (foreach item PTS
- (if (= (car item) 42)
- (setq item (cons 42 (- (cdr item))))
- )
- (setq PTS2 (append PTS2 (list item)))
- )
- (setq PTS PTS2)
- (while (setq item (assoc 10 EDS))
- (setq EDS (vl-remove item EDS))
- (setq EDS (vl-remove (assoc 40 EDS) EDS))
- (setq EDS (vl-remove (assoc 41 EDS) EDS))
- (setq EDS (vl-remove (assoc 42 EDS) EDS))
- )
- (setq D (car (setq EDS (reverse EDS))))
- (setq EDS (append (reverse (cdr EDS)) PTS (list D)))
- (entmod EDS)
- )
|