getangle (AutoLISP)

ユーザが角度を入力するまで待機(一時停止)し、入力された角度をラジアン単位で返します。

サポートされているプラットフォーム: Windows、Mac OS、Web

構文と要素

(getangle [pt] [msg])
pt

タイプ: リスト

現在の UCS での 2D 基点。

pt 引数を指定すると、それが 2 つの点の 1 点目として使用され、ユーザがもう 1 つの点を指定すると、AutoLISP で角度を求めることができます。3D 基点を与えることもできますが、角度は常に現在の作図平面で計測されます。

msg

タイプ: 文字列

ユーザに表示するプロンプト メッセージ。

戻り値

タイプ: 実数または nil

ユーザが指定した角度、単位はラジアン。

getangle 関数は、AutoCAD のシステム変数 ANGBASE の設定を 0(ゼロ)ラジアンの方向として、反時計回りに増加するように角度を計測します。返される角度は、現在の作図平面(現在の高度の現在の UCS の XY 平面)でのもので、単位はラジアンです。

注意

ユーザは、AutoCAD の現在の角度単位形式に従って数値を入力することにより、角度を指定できます。現在の角度単位形式が、十進数(度)、グラジエントなど何であっても、この関数は常にラジアン単位で角度を返します。ユーザは、図面上で 2 つの 2D 点を指定して、AutoLISP で角度を表示することもできます。AutoCAD は 1 番目の点から現在のクロスヘア カーソルの位置にラバー バンドを描き、ユーザが角度を目で確認できるようにします。

入力した角度と getangle 関数が返す角度とは異なることに十分注意してください。getangle に渡される角度は、Aut CAD のシステム変数 ANGDIR と ANGBASE の現在の設定に基づきます。しかし、いったん角度が入力されると、システム変数 ANGBASE の現在の設定を 0(ゼロ)ラジアンとして、反時計回り(ANGDIR は無視します)で増加するように角度が計測されます。

getangle 関数の要求に対する応答で、ユーザは別の AutoLISP 式を入力することはできません。

例

次に、getangle 関数で異なる引数を使用したコードの例を示します。

(setq ang (getangle))
(setq ang (getangle '(1.0 3.5)))
(setq ang (getangle "Which way? "))
(setq ang (getangle '(1.0 3.5) "Which way? "))