Gets the UCSs collection for the document.
Supported platforms: Windows only
VBA:
object.UserCoordinateSystems
Type: Document
The object this property applies to.
No additional remarks.
VBA:
Sub Example_UserCoordinateSystems() ' This example finds the current UserCoordinateSystems collection and ' adds a new UCS to that collection. Dim UCSColl As AcadUCSs Set UCSColl = ThisDrawing.UserCoordinateSystems ' Create a UCS named "TEST" in the current drawing Dim ucsObj As AcadUCS Dim origin(0 To 2) As Double Dim xAxisPnt(0 To 2) As Double Dim yAxisPnt(0 To 2) As Double ' Define the UCS origin(0) = 4#: origin(1) = 5#: origin(2) = 3# xAxisPnt(0) = 5#: xAxisPnt(1) = 5#: xAxisPnt(2) = 3# yAxisPnt(0) = 4#: yAxisPnt(1) = 6#: yAxisPnt(2) = 3# ' Add the UCS to the UserCoordinatesSystems collection Set ucsObj = UCSColl.Add(origin, xAxisPnt, yAxisPnt, "TEST") MsgBox "A new UCS called " & ucsObj.name & " has been added to the UserCoordinateSystems collection.", vbInformation, "UserCoordinateSystems Example" End Sub
Visual LISP:
(vl-load-com) (defun c:Example_UserCoordinateSystems() ;; This example finds the current UserCoordinateSystems collection and ;; adds a new UCS to that collection. (setq acadObj (vlax-get-acad-object)) (setq doc (vla-get-ActiveDocument acadObj)) (setq UCSColl (vla-get-UserCoordinateSystems doc)) ;; Create a UCS named "TEST" in the current drawing ;; Define the UCS (setq origin (vlax-3d-point 4 5 3) xAxisPnt (vlax-3d-point 5 5 3) yAxisPnt (vlax-3d-point 4 6 3)) ;; Add the UCS to the UserCoordinatesSystems collection (setq ucsObj (vla-Add UCSColl origin xAxisPnt yAxisPnt "TEST")) (alert (strcat "A new UCS called " (vla-get-Name ucsObj) " has been added to the UserCoordinateSystems collection.")) )