;; | --------------------------------------------------------------------------- ;; | GE_Extents ;; | --------------------------------------------------------------------------- ;; | Function : Return the x,y and z extents of a list of points ;; | Argument : 'vlist' - List of points ;; | Returns : A list of p1 and p2, where p1 is lower left corner point (x,y,z) ;; | and p2 is the upper right corner point (x,y,z). ;; | Update : March 6, 1998 ;; | e-mail : rakesh.rao@4d-technologies.com ;; | Web : www.4d-technologies.com ;; | --------------------------------------------------------------------------- ; Return the Extents of a list of points. (defun GE_Extents(vlist / MinX MaxX MinY MaxY MinZ MaxZ tmp pt ) (setq MinX 1E20 MinY 1E20 MinZ 1E20 MaxX -1E20 MaxY -1E20 MaxZ -1E20 ) (foreach pt vlist (if (< (setq tmp (car pt)) MinX) (setq MinX tmp) ) (if (< (setq tmp (cadr pt)) MinY) (setq MinY tmp) ) (if (> (setq tmp (car pt)) MaxX) (setq MaxX tmp) ) (if (> (setq tmp (cadr pt)) MaxY) (setq MaxY tmp) ) (if (and (setq tmp (caddr pt)) (< tmp MinZ)) (setq MinZ tmp) ) (if (and (setq tmp (caddr pt)) (> tmp MaxZ)) (setq MaxZ tmp) ) ) (if (= MinZ 1E20) (setq MinZ 0.0)) (if (= MaxZ -1E20) (setq MaxZ 0.0)) (list (list MinX MinY MinZ) (list MaxX MaxY MaxZ)) )