Vla-get-center
- 構文
- (vla-put-center vla-object )
- 機能
- 円弧、円、楕円、ビュー、ビューポートの中心を取得する。
- 引数
-
- vla-object … VLAオブジェクト(Arc、Circle、DimRadialLarge、Ellipse、PViewport、View、Viewport)
- 戻り値
- オブジェクトの中心を表す 3D 座標。既定の中心は(0,0,0)。
- Viewport、View : ビューポート、ビュー オブジェクトの場合、その中心は 2D 座標。
- サンプル
(vl-load-com)
(defun c:Example_Center()
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
;; 初期中心点および円の半径を定義する。
(setq currCenterPt (vlax-3d-point 20 30 0)
radius 3)
;; 円を作成
(setq modelSpace (vla-get-ModelSpace doc))
(setq circObj (vla-AddCircle modelSpace currCenterPt radius))
(vla-ZoomAll acadObj)
(alert (strcat "円の中心点は "
"\n" (rtos (nth 0 (vlax-safearray->list (vlax-variant-value currCenterPt)))) ", "
(rtos (nth 1 (vlax-safearray->list (vlax-variant-value currCenterPt)))) ", "
(rtos (nth 2 (vlax-safearray->list (vlax-variant-value currCenterPt))))
)
)
;; 変更
(setq newCenterPt (vlax-3d-point 25 25 0))
(vla-put-Center circObj newCenterPt)
(vla-Update circObj)
;; 新しい中心位置の結果。
;; バリアントは、center プロパティからの出力を確認します。
(setq centerPoint (vlax-variant-value (vla-get-Center circObj)))
(alert (strcat "円の中心点は "
"\n" (rtos (nth 0 (vlax-safearray->list centerPoint))) ", "
(rtos (nth 1 (vlax-safearray->list centerPoint))) ", "
(rtos (nth 2 (vlax-safearray->list centerPoint)))
)
)
)
関連事項