Vla-translatecoordinates
- 構文
- (vla-translatecoordinates vla-object Point FromCoordSystem ToCoordSystem Displacement OCSNormal)
- 機能
- 点を、ある座標系から他の座標系に変換する。
- 引数
-
- vla-object … Utility のVLAオブジェクト
- Point … 追加する頂点を指定する座標。
- FromCoordSystem … 点の変換前の座標系。
- ToCoordSystem … 点の変換後の座標系。
- Displacement … 変位ベクトル フラグ。
- vlax-True : Point は変位ベクトルとみなされる。
- vlax-False: Point は点とみなされる。
- OCSNormal … OCS の法線。
- 戻り値
- 変換後の 3D WCS 座標。
- 注意 : ある OCS の座標を、直接別の OCS の座標に変換することはできない。この変換を行うには、まず、ある OCS の座標を WCS などの、中間の座標系の座標に変換し、次にこの座標をもう 1 つの OCS の座標に変換する。
- Polyline または LWPolyline オブジェクトの点を OCS から WCS に変換するには、次のようにする。
- OCS の点の X、Y 座標を Coordinate または Coordinates プロパティから取得。
- OCS の点の Z 座標を Elevation プロパティから取得。
- ポリラインに対する法線を Normal プロパティから取得。
- X、Y、Z 座標および Normal を使用して TranslateCoordinates を呼び出す。
- サンプル
(vl-load-com) (defun c:Example_TranslateCoordinates() ;; 2,2,2 のUCS点を作成。WCS と UCS の座標点を表示するサンプル (setq acadObj (vlax-get-acad-object)) (setq doc (vla-get-ActiveDocument acadObj)) ;; "New_UCS" というUCSを作成する (setq origin (vlax-3d-point 2 2 2) xAxisPnt (vlax-3d-point 5 2 2) yAxisPnt (vlax-3d-point 2 6 2)) ;; UCS を UserCoordinatesSystems コレクションに追加 (setq ucsObj (vla-Add (vla-get-UserCoordinateSystems doc) origin xAxisPnt yAxisPnt "New_UCS")) (vla-put-ActiveUCS doc ucsObj) ;; UCSアイコンを表示 (setq viewportObj (vla-get-ActiveViewport doc)) (vla-put-UCSIconOn viewportObj :vlax-true) (vla-put-UCSIconAtOrigin viewportObj :vlax-true) (vla-put-ActiveViewport doc viewportObj) ;; 点を入力 (setq pointWCS (vlax-variant-value (vla-GetPoint (vla-get-Utility doc) nil "\nEnter で点を変換 :"))) ;; UCS 座標点を変換 (setq pointUCS (vlax-variant-value (vla-TranslateCoordinates (vla-get-Utility doc) pointWCS acWorld acUCS :vlax-false))) ;; 座標点を表示 (alert (strcat "座標点は次のようになります:" "\nWCS: " (rtos (vlax-safearray-get-element pointWCS 0) 2) ", " (rtos (vlax-safearray-get-element pointWCS 1) 2) ", " (rtos (vlax-safearray-get-element pointWCS 2) 2) "\nUCS: " (rtos (vlax-safearray-get-element pointUCS 0) 2) ", " (rtos (vlax-safearray-get-element pointUCS 1) 2) ", " (rtos (vlax-safearray-get-element pointUCS 2) 2))) )
関連事項