AutoCADを使っていて、「もっと作業を自動化できたらいいのに…」と思ったことはありませんか?
そんなあなたにおすすめなのが AutoLISP。でも、初めて触れると「何この括弧だらけの世界…」と戸惑うかもしれません。
AutoLISPの超基本をわかりやすく紹介します。プログラミング未経験でも大丈夫!一緒に一歩ずつ進んでいきましょう。
AutoLISP入門その1,AutoLISP 入門その2,AutoLISP入門その3,AutoLISP入門その4
まずは「Hello」から
AutoCADのコマンドラインに、次のコードを入力してみましょう:
(alert "Hello and welcome to AutoLISP!")

Enterキーを押すと、ダイアログボックスが表示されます。
これだけで、AutoLISPが動いたことになります!
「AutoCADに命令を出せる」って、ちょっと感動しませんか?
座標を取得してみよう
次は、画面上の点を取得してみましょう:
(setq a (getpoint))
Enterを押すと、画面上で点を選ぶように求められます。クリックすると、こんな感じの座標が表示されます:
(496.0 555.06 0.0)
これは選んだ点の X, Y, Z座標。この情報は変数 a
に格納されます。
コメントを入れるには?
コードに説明を加えたいときは、セミコロン ;
を使います:
(setq a (getpoint)) ; ユーザーから点を取得
コメントは実行されず、メモとして残せます。
変数の中身を確認する
変数 a
の中身を見たいときは、次のように入力します:
!a
!
を使うと、変数の値が表示されます。ちょっとしたデバッグにも便利です。
ユーザーにメッセージを表示する
ユーザーにわかりやすく指示を出したいときは、こんな風に書きます:
(setq a (getpoint "\nChoose a Point : "))
\n
は改行を意味します。より親切なインターフェースになりますね。
線を描いてみよう
最後に、2点間に線を描く簡単なプログラムを紹介します:
(setq a (getpoint "\nEnter First Point : "))
(setq b (getpoint "\nEnter Second Point : "))
(command "Line" a b "")
command
はAutoCADのコマンドを実行する関数"Line"
は線を描くコマンドa
とb
は始点と終点""
はEnterキーの代わり
これで、画面上に線が引かれます!
今回は、AutoLISPの基本操作を紹介しました。
次回は、これらのコードをファイルに保存して、何度でも使える「LISPルーチン」にする方法を紹介します。
コメント