0 Members and 1 Guest are viewing this topic.
(defun ssreverse (ss / idx newss) (setq idx (1- (sslength ss)) newss (ssadd)) (repeat (sslength ss) (ssadd (ssname ss idx) newss) (setq idx (1- idx)) ) newss)
(if rev-order (setq idx (sslength ss) ;start at end step -1 ; and step backward ) ;; ELSE (setq idx -1 ; start at begining step 1 ; and step forward ))(repeat (sslength ss) (setq ent (ssname ss (setq idx (+ idx step)))) ... do stuff with ent ... )
Try thisCode: [Select](defun ssreverse (ss / idx newss) (setq idx (1- (sslength ss)) newss (ssadd)) (repeat (sslength ss) (ssadd (ssname ss idx) newss) (setq idx (1- idx)) ) newss)
(setq i (sslength ss))(while (not (minusp (setq i (1- i)))) (setq en (ssname ss i)))
(setq i 0)(while (< i (sslength ss)) (setq en (ssname ss i) i (1+ i)))
(setq fdi_last (if (entlast) (cdr (assoc 5 (entget (entlast)))) "0"))
(and (setq ss (ssget "X")) fdi_last (setq i (sslength ss)) (setq ns (ssadd)) (while (not (minusp (setq i (1- i)))) (setq en (ssname ss i)) (if (> (cdr (assoc 5 (entget en))) fdi_last) (ssadd en ns))))