;; | ---------------------------------------------------------------------------- ;; | PL_DividedPoints ;; | ---------------------------------------------------------------------------- ;; | Function : Returns the points obtained by dividing the given polyline ;; | (either in 'entity' form or list form ) ;; | Arguments: ;; | 'ename' - Polyline Object name or list [ overloaded ] ;; | 'NumSegs' - Number of segments to divide the polyline into ;; | Updated : April 26, 1999 ;; | e-mail : rakesh.rao@4d-technologies.com ;; | Web : www.4d-technologies.com ;; | ---------------------------------------------------------------------------- (defun PL_DividedPoints ( ename NumSegs / vlist ss p1 p2 OS ) (setq OS (getvar "OSMODE")) (setvar "OSMODE" 0) (if (= (type ename) 'ENAME) (progn (command "._Divide" ename NumSegs) (setq vlist (PL_plist ename) p1 (car vlist) p2 (last vlist) ss (ssget "_P") ) ) (progn (setq vlist ename p1 (car vlist) p2 (last vlist) ename (PL_mk_pl vlist 8 0.0) ) (command "._Divide" ename NumSegs) (setq ss (ssget "_P")) (entdel ename) )) (if ss (progn (setq vlist (cons p1 (SS_SS2Pt ss)) vlist (append vlist (list p2)) ) (command "._Erase" ss "") ) (setq vlist nil) ) (setvar "OSMODE" OS) vlist )