Vla-get-productofinertia
- 構文
- (vla-get-productofinertia vla-object )
- 機能
- ソリッドまたはリージョンの慣性乗積を取得する。
- 引数
-
- vla-object … VLAオブジェクト(3DSolid、Region)
- 戻り値
- 現在の座標系に基づいて計算された X、Y、Z 座標
- MEMO: 慣性乗積は、バリアント型で定義された X、Y、Z 座標で返される。これらは現在の座標系に基づいて計算される。
- サンプル
(vl-load-com)
(defun c:Example_ProductOfInertia()
;; ボックスを作成して ProductOfInertia を返すサンプル。
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
;; ボックスの定義
(setq center (vlax-3d-point 5 5 0)
boxLength 5
boxWidth 7
boxHeight 10)
;; ボックス (3DSolid) を作成
(setq modelSpace (vla-get-ModelSpace doc))
(setq boxObj (vla-AddBox modelSpace center boxLength boxWidth boxHeight))
;; 視点を変更
(setq NewDirection (vlax-3d-point -1 -1 1))
(setq activeViewport (vla-get-ActiveViewport doc))
(vla-put-Direction activeViewport NewDirection)
(vla-put-ActiveViewport doc activeViewport)
(vla-ZoomAll acadObj)
;; ボックスの ProductOfInertia
(setq ProductOfInertia (vlax-variant-value (vla-get-ProductOfInertia boxObj)))
(alert (strcat "ボックスの慣性乗積は "
(rtos (vlax-safearray-get-element ProductOfInertia 0) 2) ", "
(rtos (vlax-safearray-get-element ProductOfInertia 1) 2) ", "
(rtos (vlax-safearray-get-element ProductOfInertia 2) 2)))
)
関連事項