UCS、ブロック、ハッチング、またはラスター イメージの原点を WCS 座標で指定します。
サポートされているプラットフォーム: Windows のみ
VBA:
object.Origin
タイプ: Block、GeomapImage、Hatch、ModelSpace、PaperSpace、RasterImage、UCS、Wipeout
このプロパティが適用されるオブジェクト。
読み込み専用: いいえ
タイプ: Layout および PlotConfiguration オブジェクトに対してバリアント型(3 要素の倍精度浮動小数点数型配列)またはバリアント型(2 要素の倍精度浮動小数点数型配列)
3D Point: オブジェクトの原点を表す 3D WCS 座標。
2D Point: 媒体の左下コーナーを基準にして原点を表す X および Y の値。
Hatch: このプロパティは、ハッチング図形のパターンの原点の座標です。
VBA:
Sub Example_Origin() ' This example creates a UCS and returns its origin. Dim viewportObj As AcadViewport ' Set the viewportObj variable to the activeviewport Set viewportObj = ThisDrawing.ActiveViewport ' Create a new UCS with origin 2, 2, 0 Dim ucsObj As AcadUCS Dim origin(0 To 2) As Double Dim xAxisPoint(0 To 2) As Double Dim yAxisPoint(0 To 2) As Double origin(0) = 2: origin(1) = 2: origin(2) = 0 xAxisPoint(0) = 3: xAxisPoint(1) = 2: xAxisPoint(2) = 0 yAxisPoint(0) = 2: yAxisPoint(1) = 3: yAxisPoint(2) = 0 Set ucsObj = ThisDrawing.UserCoordinateSystems.Add(origin, xAxisPoint, yAxisPoint, "UCS1") ThisDrawing.ActiveUCS = ucsObj viewportObj.UCSIconOn = True viewportObj.UCSIconAtOrigin = True ThisDrawing.ActiveViewport = viewportObj ' Display the current origin for the new UCS MsgBox "The origin of the UCS is: " & ucsObj.origin(0) & ", " & ucsObj.origin(1) & ", " & ucsObj.origin(2), , "Origin Example" ' Change the origin of the UCS origin(0) = 4: origin(1) = 4: origin(2) = 0 ucsObj.origin = origin ' Reset the active UCS and viewport to see the change ThisDrawing.ActiveUCS = ucsObj ThisDrawing.ActiveViewport = viewportObj MsgBox "The origin of the UCS is now: " & ucsObj.origin(0) & ", " & ucsObj.origin(1) & ", " & ucsObj.origin(2), , "Origin Example" End Sub
Visual LISP:
(vl-load-com) (defun c:Example_Origin() ;; This example creates a UCS and returns its origin. (setq acadObj (vlax-get-acad-object)) (setq doc (vla-get-ActiveDocument acadObj)) ;; Set the viewportObj variable to the activeviewport (setq viewportObj (vla-get-ActiveViewport doc)) ;; Create a new UCS with origin 2, 2, 0 (setq origin (vlax-3d-point 2 2 0) xAxisPoint (vlax-3d-point 3 2 0) yAxisPoint (vlax-3d-point 2 3 0)) (setq ucsObj (vla-Add (vla-get-UserCoordinateSystems doc) origin xAxisPoint yAxisPoint "UCS1")) (vla-put-ActiveUCS doc ucsObj) (vla-put-UCSIconOn viewportObj :vlax-true) (vla-put-UCSIconAtOrigin viewportObj :vlax-true) (vla-put-ActiveViewport doc viewportObj) ;; Display the current origin for the new UCS (alert (strcat "The origin of the UCS is: " (rtos (vlax-safearray-get-element (vlax-variant-value (vla-get-Origin ucsObj)) 0) 2) ", " (rtos (vlax-safearray-get-element (vlax-variant-value (vla-get-Origin ucsObj)) 1) 2) ", " (rtos (vlax-safearray-get-element (vlax-variant-value (vla-get-Origin ucsObj)) 2) 2))) ;; Change the origin of the UCS (setq origin (vlax-3d-point 4 4 0)) (vla-put-Origin ucsObj origin) ;; Reset the active UCS and viewport to see the change (vla-put-ActiveUCS doc ucsObj) (vla-put-ActiveViewport doc viewportObj) (alert (strcat "The origin of the UCS is now: " (rtos (vlax-safearray-get-element (vlax-variant-value (vla-get-Origin ucsObj)) 0) 2) ", " (rtos (vlax-safearray-get-element (vlax-variant-value (vla-get-Origin ucsObj)) 1) 2) ", " (rtos (vlax-safearray-get-element (vlax-variant-value (vla-get-Origin ucsObj)) 2) 2))) )