【AutoCAD】AutoLISP で線や円を描く方法

2021年9月10日

【AutoCAD】AutoLISP で線や円を描く方法

AutoLISP で線や円を描きたい

こんにちは、メモだよ!!管理人です。

以前 【AutoCAD】AutoLISP(ActiveX)で円を描く方法 の記事で、ActiveX の AutoLISP を使用して円を描いてみました。
でも、これって初心者には難しそうでしたね。😖

初心者の方は、まずは ActiveX ではない AutoLISP から始めたほうが良さそうな気がしてきました。

そこで、今回は ActiveX ではない AutoLISP で線や円を描く方法を紹介したいと思います。

command 関数を使う

結論からいえば、command 関数というものを使用すれば、簡単に図形を描くことができます。

「関数」ってなに?🧐

「関数」というのは、AutoCAD に伝えることばのようなものです。
AutoCAD に「これこれこうしてくださいね」と伝えることばです。

例えば、command 関数というのは、AutoCAD に「これからいうコマンドを実行してね」というものです。

で、「これからいう」っていうのが引数というもので、関数の後に書くもののことです。

(command "_line" "0,0" "100,100" "")

上記を実行すると、0,0 から 100,100 までの線分を作成することができます。
(実行方法がわからなかったら、【AutoCAD】AutoLISP の実行方法 の記事を見てくださいね。)

「command」が関数で、「"_line" "0,0" "100,100" ""」が引数です。

command 関数は、AutoCAD に「これからいうコマンドを実行してね」というものなので、線分を書く LINE コマンドを実行してほしいので 引数の最初に _line と書かれています。

引数にはどんなものを書いていったらいいのでしょうか?

まずは、手作業で 0,0 から 100,100 までの線分を作成する手順を見ていきましょう。

  1. [線分]ボタンをクリックする。
  2. 始点として 0,0 と入力する。
  3. 終点として 100,100 と入力する。
  4. コマンドを完了するためにEnterキーを押す。

こんな感じですよね。

この内容を引数に入れていけばいいだけです。

最初の[線分]ボタンをクリックのところは、[線分]ボタンをクリックしたあとにF2キーを押して、テキスト画面に何が表示されているのかを見ます。

コマンド ラインでコマンド名を確認

すると、「コマンド: _line」と表示されているのがわかります。
この「コマンド: 」のあとの文字を入れればいいだけです。(このとき、”” で囲むのを忘れないようにしてくださいね。)

なので、「(command "_line"」となります。

そのあとは、キーボードで入力した 0,0 と 100,100 を書きます。

なので、「(command "_line" "0,0" "100,100"」となります。

最後はEnterキーを押しているのですが、これは何も入力せずにEnterキーを押したというとこなので、単に「""」を書きます。

なので、「(command "_line" "0,0" "100,100" "")」となります。

コツをつかめば簡単でしょ?😄

command のあとに、コマンド名とキーボード入力したものを ”” で囲んで書くだけ!!

こんどは、同じように円を描いてみよう

では、次に円を描いてみましょう。(中心 0,0、半径 50)

まずは、手作業で描くときの手順です。

  1. [中心、半径]ボタンをクリックします。
  2. 中心として 0,0 と入力します。
  3. 半径として50 と入力します。

[中心、半径]ボタンをクリックしたときにF2キーを押すと、「コマンド: _circle」となっているのがわかります。

なので、「(command "_circle"」となります。

つぎに、0,0 と 50 を入力しているので、「(command "_circle" "0,0" "50"」となります。

最後にEnterキーを押しているので、「(command "_circle" "0,0" "50" "")」となります。

コマンド ラインに (command "_circle" "0,0" "50" "") をコピペしてEnterキーを押してみてください。
すると、円が描けたはずです。

ね、簡単でしょ?🤗

-API
-