AutoLISPを活用すれば、AutoCADの作業を自動化できると聞き、興味をお持ちではないでしょうか。しかし、実際にどのようなことができるのかイメージできずにいる人も多いはずです。
そこでこの記事では、AutoLISPを使ってできることについてわかりやすくまとめました。
できることに合わせてサンプルコードや便利なコマンド一覧も解説しているので、AutoCADに備わっているプログラミング言語を活用する参考にしてみてください。
AutoLISPとは
AutoLISPとは、CADソフトの「AutoCAD」に搭載されている自動化機能のひとつです。
専用のプログラミング言語を書き込むことによって、自分の望む動作をAutoCAD上で実行できます。
またAutoLISPは、AutoCADに搭載されているほかの自動化機能のなかでもカスタマイズ性に優れ、高速処理に対応できるのが魅力です。できることが非常に多い機能ですので、AutoCADの自動化に興味がある方は、ぜひ本記事でできることをチェックしてみてください。
なおAutoLISPの概要を詳しく知りたい方は、以下の記事がおすすめです。
画面構成や使い方をわかりやすく解説しています。
AutoLISPはフリー(無料)で使用できる

AutoLISPのプログラミング言語は、AutoCAD所有者であれば誰でもフリーで利用できます。
導入初期から機能が搭載されているため、すぐにチャレンジできるのが魅力です。
なおAutoLISPはツールバーの「管理」という項目に格納されています。
起動すれば専用のAutoLISPウィンドウが表示され、コーディングをすることでプログラムを組めます。興味がある方はぜひ本記事で紹介するできることをチェックし、実践してみてください。
AutoLISPと一般的なプログラミング言語の違い

AutoLISPは特定の動作をつくり出せるプログラミング言語のひとつですが、一般的なプログラミング言語と違う点がいくつかあります。参考として以下に主な違いをまとめました。
| AutoLISP | その他プログラミング言語 | |
| できること | AutoCADにおける自動化の仕組みづくり | ツールの開発など |
| 対象 | AutoCAD内部 | PCおよびサービス全般 |
| 難易度 | 比較的簡単 | 難しい場合が多い |
AutoLISPはAutoCAD専用のプログラミング言語ですので、一般的にはAutoCAD内でしか利用できません。
ただし、その他のプログラミング言語とは違い、手軽にプログラムをカスタマイズできるのが魅力です。AutoCAD内に搭載されたコマンドの呼び出しや連携、動きのつくり方などがシンプルにまとめられているため、初心者からでもチャレンジできます。
プログラミング言語全般を学びたいというよりも、AutoCADを効率化するためにできることを学びたいという方は、ぜひAutoLISPに挑戦してみてください。
AutoLISPでできること【サンプルコード付き】
AutoLISPでできることを画像付きでわかりやすく解説します。
サンプルコードも掲載しているので、コピペして自身のAutoLISPに貼り付けて利用してみてください。
図枠を設定する

; 外側の枠を描くコード
(command-s “pline” pt1 pt2 pt3 pt4 “C”)
(setq pt1 (list 8410 5940))
(setq pt2 (list 0 5940))
(setq pt3 (list 0 0))
(setq pt4 (list 8410 0))
; 内側の枠を描くコード
(command-s “pline” pt5 pt6 pt7 pt8 “C”)
(setq pt5 (list 8110 5640))
(setq pt6 (list 300 5640))
(setq pt7 (list 300 300))
(setq pt8 (list 8110 300))
; タイトルのマルチテキストを挿入する
(command-s “_mtext” “3800,5000” “5200,5600” “ここにタイトルを入力”)
; マルチテキストのスタイルを変更する
(command-s “._STYLE”
“Jaga-Style-L” ;文字スタイル名
“romans” ;フォント名
“100” ;文字高さもしくは異尺度
“1” ;幅係数
“0” ;傾斜角度
“N” ;左右反転
“N” ;上下反転
“N” ;縦書き
)
AutoCADを利用する際には、まず図枠を準備しなければなりません。
とはいえ、ほかのデータからコピペして持ってきたり、ひとつひとつ作成することに手間を感じている人も多いでしょう。そこでAutoLISPでできるのが図枠の設定です。
例えば上記のコードは、A1サイズの図枠を挿入してタイトルを設定できるように準備ができるサンプルコードです。
ポリラインの作図コマンドで図枠のライン(内側・外側)を準備し、図枠内の上側にタイトルを挿入できる状態にできます。さらにできることとして、サンプルコードを書き換えれば、右下などに業務名、会社名、日付、図面番号などを挿入することも可能です。
図枠の設定に手間を感じている方は、ぜひAutoLISPで図枠を用意してみてください。
作図を設定して一度に挿入する

; 四角形を作図するコード
(command “pline” pta ptb ptc ptd “C”)
(setq pta (list 2000 3000))
(setq ptb (list 1000 3000))
(setq ptc (list 1000 1000))
(setq ptd (list 2000 1000))
; 円を作図するコード
(command “circle” center radius)
(setq center (list 4000 3000))
(setq radius 500)
AutoLISPで利用できることとして、特定の図形を組み合わせて一度に作図をしてしまうという方法があります。
上記のコードは四角形、円形をそれぞれ自動で表示させたものです。
コードを組み合わせれば、ほかにもできることがいくつもあるので、AutoLISP上で書きたい図面を設定してみてはいかがでしょうか。
レイヤーを設定する

(command “-layer” “M” “新しいレイヤー” “”)
例えば土木設計では、作図をする際にレイヤーひとつひとつに名前を付けなければなりません。
しかし、ひとつずつレイヤーを挿入しながら設定をするのは非常に面倒です。

そこでAutoLISPでできることである「レイヤーの一括設定」をカスタマイズすれば、レイヤー準備の負担を最小限に抑えられます。
例えば、上記コードは1行で1つのレイヤーを設定できます。
各名称やレイヤーの条件を決めて項目を増やしていけば、上表のすべての名称を一括でレイヤー内に反映することも可能です。
AutoLISPでできることのなかでも非常に便利な方法ですので、ぜひサンプルコードを活用して、設計業務の目的に合うレイヤー名称・設定を反映してみてください。
AutoLISPのコマンド入力で覚えておきたいルール

AutoLISPでは、commandという関数を利用して、AutoCADの機能を呼び出せます。
ただし、コマンドの名称を入力する際にはいくつかできることにルールがあると覚えておきましょう。
| コマンドのルール | できること |
| commandとcommand-s | どちらも同じ役割であり、現在の主流は-sをつける (なかには-sでは動作しないものもある) |
| ._コマンド名 | 「.」には定義解除コマンドを使えるようになる 「_」別言語のAutoCADのバージョンに翻訳する |
同じコマンドでも、文字列をつける、つけないでできることが少しずつ変化します。
またAutoLISPのサンプルコード集をチェックしたい方は、以下の記事がおすすめです。
AutoLISPを学ぶためにセミナー講習に参加しよう

本記事では、AutoLISPでできることを複数紹介しましたが、本記事の情報以外にもできることがたくさんあります。ですが、自身で独学をしてできることを増やしていくのは大変です。
もし効率よくAutoLISPでできることを学んでいきたいなら、まずはセミナー講習を受講してみるのはいかがでしょうか。プロの講師からAutoLISPのノウハウを学べるほか、自分でAutoLISPのプログラムを組む知識を身につけられます。
「実践的に学べるAutoCAD自動化セミナー」では、2日間という短期間で、AutoLISPでできることをまんべんなく学べます。「社内で利用するAutoCADを自動化したい」「利用するAutoCADの作業を効率化したい」という方は、以下のリンクをチェックしてみてください。
| 料金(税込) | 38,500円 (eラーニングのみ27,500円) |
| 参加方法 | ・会場受講(東京・名古屋・大阪) ・ライブウェビナー(全国) ・eラーニング |
| セミナー参加期間 | 2日間 |
| 持ち物 | 特になし(PCも用意されています) |
AutoLISPでできることについてまとめ
AutoLISPには複数のできることがあり、AutoCAD内の機能を自由に設定できるのが魅力です。
とはいえ、できることを理解しても、思うように作業に取り込めないとお悩みの人も多いのではないでしょうか。
AutoLISPは、参考書籍だけでなくプロから学べるセミナー講習等も開催されています。
自分のできることを広げるためにも、初めてAutoLISPに触れるという方は、本記事を参考としてAutoCADの自動化にチャレンジしてみてください。