Vla-get-origin
- 構文
- (vla-get-origin vla-object)
- 機能
- UCS、ブロック、ハッチング、またはラスター イメージの原点を WCS 座標で取得する。
- 引数
-
- vla-object … VLAオブジェクト(Block、GeomapImage、Hatch、ModelSpace、PaperSpace、RasterImage、UCS、Wipeout)
- 戻り値
- Layout および PlotConfiguration オブジェクトに対してバリアント型(3 要素の倍精度浮動小数点数型配列)またはバリアント型(2 要素の倍精度浮動小数点数型配列)
- 3D Point: オブジェクトの原点を表す 3D WCS 座標。
- 2D Point: 媒体の左下コーナーを基準にして原点を表す X および Y の値。
- 注意 : Hatch では、ハッチング図形のパターンの原点の座標。
- サンプル
(vl-load-com) (defun c:Example_Origin() ;; UCSを作成して原点を返すサンプル (setq acadObj (vlax-get-acad-object)) (setq doc (vla-get-ActiveDocument acadObj)) ;; アクティブなビューポートにビューポートObjを設定 (setq viewportObj (vla-get-ActiveViewport doc)) ;; UCS を 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) ;; 新しいUCSのための現在の原点を表示 (alert (strcat "UCSの原点は : " (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))) ;; UCS原点を変更 (setq origin (vlax-3d-point 4 4 0)) (vla-put-Origin ucsObj origin) ;; アクティブなUCSをリセット (vla-put-ActiveUCS doc ucsObj) (vla-put-ActiveViewport doc viewportObj) (alert (strcat "UCS 原点を変更 : " (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))) )
関連事項