Vla-getorientation
- 構文
- (vla-getorientation vla-object Point Prompt)
- 機能
- 指定された角度を取得する。システム変数 ANGBASE の設定は無視される。
- 引数
-
- vla-object … VLAオブジェクト
- Point … 基点を指定する 3D WCS 座標
- Prompt … ユーザに入力を求めるときに表示される文字列。
- 戻り値
- 指定された角度
- MEMO
- CAD は、ユーザが角度を入力するのを待って、選択された角度の値に対する戻り値を設定する。
- パラメータ Point は、WCS での角度の基点を指定する。
- パラメータ Prompt は、ユーザ入力を求める際に CAD が表示する文字列を指定する。
- Point および Prompt はオプション。
- 現在の角度単位の形式で数値を入力すれば、角度を指定することができる。また、グラフィックス画面上で 2D の 2 点を指定して角度を設定することもできる。角度が視覚的に指定できるように、最初の点から現在のクロスヘア カーソルの位置にラバーバンド線を描く。
- 引数 Point が与えられている場合は、その値が 2 点のうちの最初の点として使用される。
- 角度は、WCS の XY 平面で測定されます(このメソッドは、Point の Z フィールドを無視する)。角度は、常に反時計回り方向に増加する。
- どのメソッドで角度を指定しようと、GetOrientation メソッドは戻り値を常にラジアンで表します。
- このメソッドは GetAngle メソッドによく似ているが、システム変数 ANGBASE に格納されている現在の角度 0 の方向は無視する。GetOrientation メソッドの場合、角度 0 の方向は常に右(「東」または「3 時」)となる。
- 角度ではなくキーワードが返された場合は、「ユーザ入力がキーワードです」というエラー メッセージが表示される。GetInput メソッドを使用して、戻り値からキーワードを取得する。
- サンプル
(vl-load-com) (defun c:Example_GetOrientation() ;; GetOrientation メソッドを使用して、ユーザーから方向を取得する 3 つの方法を示すサンプル。 (setq acadObj (vlax-get-acad-object)) (setq doc (vla-get-ActiveDocument acadObj)) ;; プロンプトをラジアンで方向を返す (setq retOrientation (vla-GetOrientation (vla-get-Utility doc) nil "方向を入力 : ")) (alert (strcat "入力方向は " (rtos retOrientation 2) "\n" "(プロンプトを表示せずには、次の値を入力します。)")) ;; 任意のプロンプトなしでラジアン方向を返す (setq retOrientation (vla-GetOrientation (vla-get-Utility doc))) (alert (strcat "入力方向は " (rtos retOrientation 2))) ;; ラジアン、プロンプトと向き基本点方向を返す (setq basePnt (vlax-3d-point 2 2 0)) (setq retOrientation (vla-GetOrientation (vla-get-Utility doc) basePnt "方向を入力 : ")) (alert (strcat "入力方向は " (rtos retOrientation 2))) )
関連事項