0 Members and 1 Guest are viewing this topic.
(defun c:random_pt_on_3dpoly (/ MST-CreateCogoPoint pt) ;;; FUNCTION ;;; creates a AECC point at the user defined location. ;;; and adopts the elevation of that selected point. ;;; use at your own risk. ;;; ;;; ARGUMENTS ;;; none ;;; ;;; PLATFORMS ;;; LDT 2, 2i, 3, 4 & 5 ;;; ;;; AUTHOR ;;; Copyright© 2004 Mark S. Thomas ;;; ;;; mark@theswamp.org ;;; ;;; VERSION ;;; Thu Dec 02, 2004 (defun MST-CreateCogoPoint (PointCoords / AeccProject Pnts NewPoint) (vl-load-com) (if (listp PointCoords) (progn (vl-catch-all-apply (function (lambda () (setq AeccProject (vlax-get-property (vla-getinterfaceobject (vlax-get-acad-object) "Aecc.Application") 'ActiveProject) ); setq (setq Pnts (vlax-get-property AeccProject 'CogoPoints) ); setq (setq Count (vlax-get-property Pnts 'Count) ) (setq NewPoint (vlax-invoke-method Pnts 'Add (vlax-3D-point PointCoords) 1) ); setq (setq NewPointNum (vlax-get-property NewPoint 'Number) ) ); lambda ); function ); vl-catch-all-apply ); progn ); if ); defun ;; ============= body of main starts here ===================== (if (setq pt (getpoint "\nSelect point on pline: ")) (MST-CreateCogoPoint pt) ) ) ;;; Timestamp: <randon_pt_on_3dpoly.lsp Thu 2004/12/02 12:06:07 PC18548> ;;; vim:tw=78:ts=4: