Sponsored links

【AutoLISP エラー対策】変数に入れた図形や座標点を調べる

Sponsored links
エラー対策
Sponsored links

エラー対策というよりは、エラーの原因探しのお話。

作ったコマンドが上手く動かない時、変数に正しい値が入っているかどうかを調べる自作関数です。

Sponsored links

変数の中身

変数の中身は、!変数名で確認することができますが、そこに図形名が入っていても、実際に入れたい図形が入っているかどうかは図形名だけでは確認が難しいです。

そこで、AutoLISPで自作コマンドを作るとき、エラーが出たとき、変数に入れたい情報が入っているのかを確認するAutoLISPがあると便利です。

図形を確認する

これは、引数として図形名もしくはその選択セット名を渡すと、その図形の色が赤色になる自作関数CheckObjです。

(defun CheckObj (Obj)
  (if Obj
     (command-s "._CHANGE" Obj "" "_P" "_C" 1 "")
   )
(princ Obj)
(princ))

これを読み込んでいれば、変数に欲しい図形名入ったかな?
というときは、、、

(CheckObj 変数名)

とコマンドラインに入力すると、その変数に入っている図形の色が赤になります。

点座標の位置

これは点座標が入っている変数を引数として渡すと、それを中心に半径5の円を描く自作関数CheckPtです。

(defun CheckPt (Pt)
 (if Pt
     (command-s "._CIRCLE" Pt 5)
   )
(princ Pt)
(princ)
)

これを読み込んでいれば、変数に欲しい点座標リスト入ったかな?
というときは、、、

(CheckPt 変数名)

とコマンドラインに入力すると、その点座標に円が現れます。

まとめ

  • 変数に入った値を調べる自作関数を作っておくと、コマンド作成時に便利。

関連記事

Comments