Vla-getucsmatrix
- 構文
- (vla-getucsmatrix vla-object)
- 機能
- UCS 座標系のデータで構成される変換マトリックスを取得する。
- 引数
-
- vla-object … メソッドが適用される VLAオブジェクト
- 戻り値
- UCS マトリックス。バリアント型(4 x 4 配列の倍精度浮動小数点数型)
- 指定された UCS で図形を変換するには、このメソッドから返されるマトリックスを入力として使用し、TransformBy メソッドを使用する。
- サンプル
(vl-load-com)
(defun c:Example_GetUCSMatrix()
;; 新しい UCS を作成し、それのための UCS 行列を見つけるサンプル。
;; WCS 座標を使用して円を作成し、円を UCS に変換する。
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
;; 新しい UCS を定義し、原点に UCS アイコンを表示。
(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 (vla-get-ActiveViewport doc) :vlax-true)
(vla-put-UCSIconAtOrigin (vla-get-ActiveViewport doc) :vlax-true)
(vla-put-ActiveViewport doc (vla-get-ActiveViewport doc))
;; WCS 座標を使用して円を作成。
(setq center (vlax-3d-point 1 1 0)
radius 0.5)
(setq modelSpace (vla-get-ModelSpace doc))
(setq circleObj (vla-AddCircle modelSpace center radius))
(vla-ZoomAll acadObj)
;; UCS 変換行列を取得。
(setq TransMatrix (vla-GetUCSMatrix ucsObj))
;; UCS 座標にサークルを変換する。
(alert "円を変換します。")
(vla-TransformBy circleObj TransMatrix)
(vla-Update circleObj)
(alert "円を変換しますた。")
)
関連事項