Vla-getcorner

提供:GizmoLabs - だいたい CAD LISP なサイト
構文
(vla-getcorner vla-object Point Prompt )


機能
矩形のコーナーを取得する。


引数
  • vla-object … Utility の VLAオブジェクト
  • Point … 矩形の基点を指定する 3D WCS 座標。
  • Prompt … ユーザに入力を求めるときに表示される文字列。


戻り値
矩形のコーナーを示す 3D WCS 座標


  • MEMO : CAD はユーザが矩形のコーナーを入力するのを待って、選択された点の値に対する戻り値を設定する。パラメータ Point は、3D WCS 座標での矩形の基点を指定する。このパラメータは必ず設定すること。パラメータ Prompt は、ユーザ入力を求める際に CAD が表示する文字列を指定する。Prompt はオプション。
  • CAD ユーザは、WCS 座標形式で点を入力して、コーナーを指定できます。GetCorner メソッドは、Point を 3 次元の点として処理します。また、グラフィックス画面上の位置を指定して、コーナーを指定することもできますAutoCAD は、第 2 のコーナーの位置を視覚的に確認できるように、Point から現在のクロスヘア カーソルの位置まで動的にサイズ変更された矩形を描きます。矩形は、WCS の XY 平面に描かれます。ポインティング デバイスを使用すると、GetCorner では Point の Z フィールドは無視され、実行結果の Z フィールドには現在の高度が設定されます。
  • AutoLISP だと、getcorner 関数があるので、そっちも使える。


サンプル
(vl-load-com)
(defun c:Example_GetCorner()
    ;; コーナーを指示して矩形を作図するサンプル
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
    
    ;; ユーザに句形範囲を指示させる
    (setq basePnt (vlax-3d-point 2 2 0))
    (setq returnPnt (vla-GetCorner (vla-get-Utility doc) basePnt "矩形範囲を指示 : "))
    
    ;; 支持点を表示
    (setq returnPnt (vlax-safearray->list (vlax-variant-value returnPnt)))
    (alert (strcat "指示された範囲は " (rtos (nth 0 returnPnt) 2) ", " (rtos (nth 1 returnPnt) 2) ", " (rtos (nth 2 returnPnt) 2)))
)

関連事項