;; | ---------------------------------------------------------------------------- ;; | GE_AvgPt ;; | ---------------------------------------------------------------------------- ;; | Function : Find out the average of a list of points. ;; | Arguments: ;; | 'vlist' - List to be averaged ;; | Return : Returns the Average Point ;; | Updated : April 24, 1998 ;; | e-mail : rakesh.rao@4d-technologies.com ;; | Web : www.4d-technologies.com ;; | ---------------------------------------------------------------------------- (defun GE_AvgPt(vlist / sumx sumy sumz xyz nverts avg) (setq avg (list 0.0 0.0 0.0) nverts (length vlist) ) (if (> nverts 0) (progn (setq sumx 0.0 sumy 0.0 sumz 0.0 ) (foreach xyz vlist (setq sumx (+ sumx (car xyz)) sumy (+ sumy (cadr xyz)) sumz (+ sumz (caddr xyz)) ) ) (setq sumx (/ sumx nverts) sumy (/ sumy nverts) sumz (/ sumz nverts) avg (list sumx sumy sumz) ) )) avg ) ;; Find the length of all segements in Ptlist (defun GE_PlLen(vlist Closed 2d / SegLenLst len ) (setq SegLenLst (GE_GetSegmentLengths vlist Closed 2d) len (apply '+ SegLenLst) ) len )