facebook

【2026】AutoCADのAPIを徹底解説!C#・ObjectARX等によるアドオン開発とMCP活用

建設・製造の現場で広く使われるAutoCADは、単なる設計ソフトにとどまらず「開発プラットフォーム」としても役立つとご存じでしょうか。特にAPI(Application Programming Interface)を活用することで、繰り返し作業の自動化、社内独自ツールとの連携などが可能です。

そこでこの記事では、AutoCADで利用できるAPIの種類や導入手順についてわかりやすくまとめました。サンプルコードや活用例も紹介しているので、業務効率化の参考にしてみてください。

AutoCADのAPIとは?できることと仕組みを解説

AutoCADのAPIとは、設計作業を効率化したり、外部システムと連携させたりするための「拡張手段」です。通常のコマンド操作だと限界がある次のような作業を、APIで自動化できます。

  • 大量の図面に同じ属性を一括で付与する
  • ExcelデータからCADに自動入力する
  • クラウドBIMツールと連携する

AutoCADを使う設計者やエンジニアは、APIを導入するだけで作業時間を数十%削減できる可能性があります。

他CADソフトとのAPIの違い(Jw_cad・Fusion・Revitなど)

APIという仕組みは、AutoCADだけでなく他CADソフトでも活用が可能です。
ただし、ソフトごとに次のような違いがあります。

ソフト名 主なAPI言語 特徴 開発規模
AutoCAD ・AutoLISP
・C#
・VB.NET
・C++ など
APIの選択肢がもっとも豊富 小規模~大規模
(専用アドオン開発まで可能)
Jw_cad ・独自マクロ
・外部連携スクリプト
簡易な自動化が中心で大規模連携は難しい 小規模
(マクロレベル)
Autodesk Fusion ・Python
・JavaScript
製造業向けのクラウド活用が前提 中規模
(Web連携中心)
Revit ・C#
・VB.NET
建築要素(壁・床・設備)の管理やBIMワークフロー自動化に特化 中規模~大規模
(BIM連携開発)

たとえば、AutoCADは汎用性と柔軟性に優れ、Jw_cadは低コストである一方、大規模連携に不向きという特徴を持ちます。またAutodesk FusionはMCPやWeb連携に強い、RevitはBIM用途でAPIが活用されるなど、用いられる言語や規模感が異なります。

上記のうち、Autodesk FusionのAPIについて詳しく知りたい方は、以下の記事がおすすめです。

【2025】Autodesk FusionのAPIとは?自動モデリング・アドイン開発・生成AI活用を解説

AutoCADのAPIの種類を徹底比較(サンプルコードつき)

AutoCADのAPIの種類

AutoCADには、以下に示す複数のAPIがあり、目的やスキル、運用体制に合わせて選択できます。

API 得意領域 学習コスト 主な用途
AutoLISP 小タスク自動化 反復操作の削減
COM Office連携 低〜中 Excel台帳の連携
ObjectARX 高度拡張 機能のカスタム
※高負荷である点に注意
.NET API 業務アドオン 企業内ツールの開発

ここでは、各APIの種類ごとの特徴や強み、そして「線分を引く」という場面で用いるサンプルコードの違いを紹介します。

AutoLISP・Visual LISP

AutoLISP・Visual LISPはAutoCADのなかでもっとも歴史が長く、反復作業の自動化やカスタムコマンド作成に最適なAPIです。デバッグやUI制御、COM呼び出しにも対応できます。

さらに、コードを1行ずつ解釈・変換しながら、その場で実行するインタプリタ言語であるため、テキストエディタでコードを書いてすぐに実行できるのが強みです。

(
defun c:DrawLine ( / p1 p2)
(setq p1 (getpoint “\n始点を指定してください: “))
(setq p2 (getpoint “\n終点を指定してください: “))
(command “_.LINE” p1 p2 “”)
(princ)
)

AutoLISPの概要を詳しく知りたい方は、以下の記事がおすすめです。

【2025】AutoCADのAutoLISPとは?自動化に役立つプログラミング言語の魅力

COM(ActiveXオートメーション・VBA)

COMは、Officeアプリ(ExcelやWord)との連携に強いAPIです。
Officeアプリで利用していた既存のVBA知識やコードを活用できるため、AutoCADとの連携を効率化できます。特にExcel台帳と図面を双方向に同期させたい場合に有効です。

Sub DrawLineInAutoCAD()
Dim acad As Object, doc As Object, ms As Object
Set acad = CreateObject(“AutoCAD.Application”)
acad.Visible = True
Set doc = acad.Documents.Add
Set ms = doc.ModelSpace
ms.AddLine Array(0, 0, 0), Array(100, 100, 0)
End Sub

ObjectARX(C++)

ObjectARXはC++を用いた拡張手段のAPIで、AutoCADの中核機能に近い領域まで制御できます。

AutoCADと同じプロセスで動作するため、処理が高速で大規模データ処理やカスタムオブジェクトの生成に適しています。ただし、開発環境のセットアップやバージョン依存が厳しく、習得コストは高めです。

// HelloLine.cpp (概念例)
#include “aced.h”
#include “dbents.h”

void drawLine()
{
AcGePoint3d p1(0, 0, 0);
AcGePoint3d p2(100, 100, 0);
AcDbLine* pLine = new AcDbLine(p1, p2);

AcDbBlockTable *pBT;
acdbHostApplicationServices()->workingDatabase()->getBlockTable(pBT, AcDb::kForRead);
AcDbBlockTableRecord *pBTR;
pBT->getAt(ACDB_MODEL_SPACE, pBTR, AcDb::kForWrite);

pBTR->appendAcDbEntity(pLine);
pBTR->close();
pBT->close();
pLine->close();
}

extern “C” AcRx::AppRetCode acrxEntryPoint(AcRx::AppMsgCode msg, void* pkt)
{
if (msg == AcRx::kInitAppMsg) {
acedRegCmds->addCommand(“ARXDEMO”, “DRAWLINE”, “DRAWLINE”, ACRX_CMD_MODAL, drawLine);
}
return AcRx::kRetOK;
}

.NET API(C#・VB.NET)

.NET APIは、機能や処理、規模感のバランス性に優れ、企業内アドオン開発に役立つAPIです。

C#やVB.NETを使うことにより、AutoCADのオブジェクト操作、イベント処理、ユーザーコマンド追加など幅広い開発に対応できます。前述したObjectARXと同等の機能を扱える一方で、学習や保守のハードルは低めです。

[CommandMethod(“DrawLine”)]
public void DrawLine()
{
var doc = Application.DocumentManager.MdiActiveDocument;
var db = doc.Database;

using (var tr = db.TransactionManager.StartTransaction())
{
var bt = (BlockTable)tr.GetObject(db.BlockTableId, OpenMode.ForRead);
var ms = (BlockTableRecord)tr.GetObject(bt[BlockTableRecord.ModelSpace], OpenMode.ForWrite);

var line = new Line(new Point3d(0, 0, 0), new Point3d(100, 100, 0));
ms.AppendEntity(line);
tr.AddNewlyCreatedDBObject(line, true);

tr.Commit();
}
}

なお4つのAPIのうち、AutoLISPやVBAを用いた効率化を目指している方は、以下のセミナー講習がおすすめです。

セミナー名AutoCAD自動化セミナー
運営元GETT Proskill(ゲット プロスキル)
価格(税込)27,500円〜
開催期間2日間
受講形式対面(東京・名古屋・大阪)・ライブウェビナー・eラーニング

AutoCADのAPIの導入手順と開発環境構築

AutoCAD APIを活用するには、まず開発環境を整えることが不可欠です。

ここでは代表的な開発フローを3つのステップに分けて解説します。

なお、AutoLISPやCOMを利用する場合には、AutoCADに初期から必要な環境が揃っています。
特に環境構築の準備が不要です。

Visual Studio Codeを準備する

VSコードの導入

AutoCADのAPI開発には、Visual Studio Codeが必須です。

Windows版が公式サイトから無料ダウンロードできるため、AutoCADを導入しているPCにインストールしておきましょう。

SDK・ライブラリ参照設定

ObjectARXのダウンロード
出典:Autodesk Platform Services公式サイト

AutoCAD APIを扱うには、SDK(ソフトウェア開発キット)と参照ライブラリの設定が必要です。

SDKは「開発に必要な道具セット」であり、AutoCADの内部を操作するための部品(ライブラリ)が含まれています。別途、Autodesk公式サイトからダウンロードする必要があるため、Windows版とMac版のうち、必要なほうをダウンロードしましょう。

コードを実行する

コマンドラインへの入力

Visual Studioで書いたプログラムを「DLL」という形式にして保存し、それをAutoCADに読み込ませることで、新しいコマンドとして使えるようになります。

AutoCADのコマンドラインに「NETLOAD」と入力してDLLを読み込ませるか、ドラッグアンドドロップで実行可能です。

AutoCADのAPIの活用シーン(業務効率化・外部連携)

AutoCADのAPIを活用すれば次のようなシーンにおける「手作業の削減」「人為的ミスの防止」「社内システムとの統合」を実現できます。

活用シーン 具体例 使用できるAPI
図面のテンプレートを自動作成 ・図面番号の更新
・レイヤー変更
・図枠の設定
・AutoLISP
・.NET
データ抽出・レポート化 ・属性ブロックをExcel出力
・部品表や数量表を出力
・COM
・.NET
外部システム連携 ・ERP、PLM接続 ・COM
・.NET
・Python
高度カスタマイズ ・カスタムオブジェクトの作成
・UIの拡張
・ObjectARX
・.NET

上記の活用はあくまで一例ですが、日々のルーティン作業への不満や既存のAutoCADに不足している機能がある場合にはAPIを活用するのがおすすめです。

AutoCADのAPI活用に役立つ学習リソースとコミュニティ

AutoCAD APIは非常に多機能ですが、そのぶん学習コストも高めであるため、公式リソースで基礎を固めつつ、コミュニティで実践的なノウハウを吸収するのが効率的です。

ここでは初心者から実務者までが活用できる代表的な学習リソースと交流の場を紹介します。

学習リソース 具体例
Autodesk公式リソース ・Autodesk Knowledge Network (AKN)
・ObjectARX SDK
・AutoCAD .NET Developer’s Guide
書籍・オンライン教材 Auto LISPの初歩: Auto CADを使いこなすために
最速攻略 AutoCAD VB.NET マクロサンプル大全集
コミュニティ・フォーラム ・Autodesk Forums(英語)
・Through the Interface
・日本語CAD系フォーラム

なお、上記の独学に挫折してしまいそうな方は、人材育成サービスを利用するのがおすすめです。たとえば「CAD・CAM・CAE人材育成サービス」では、APIを含め、企業に合わせたベストな学習トレーニングを提供しています。

AutoCADのAPI活用をMCP・生成AIで効率化しよう

AutoCADと生成AIの組み合わせ活用

AutoCADのAPIを使った開発は便利ですが、実務では「コードが複雑」「学習コストが高い」という課題もあります。その際には、Model Context Protocol(MCP)を組み合わせて開発や運用を効率化するのがおすすめです。

MCPとは、AIと外部のデータやツールを接続する仕組みのことであり、生成AIのChatGPTとAutoCADのAPIを連携するといった使い方ができます。以下に、連携のイメージをまとめました。

  1. ChatGPTに「線を100mm引くコードを書いて」と指示する
  2. 指定した言語(C#やLISPなど)のサンプルコードをすぐに生成する
  3. MCP経由でAutoCADに接続してコードの動作テストができる
  4. 実際に動作するコードを用意できる

「APIをゼロから学習して組むのは難しい」という場合でも、MCPを導入すれば生成AIが相棒になり、学習コストを下げながら実務導入が可能です。

また生成AIの使い方を知ることも大切です。
生成AIの基礎・応用を実践的に学びたい方は、セミナー講習に参加しましょう。

セミナー名生成AIセミナー
運営元GETT Proskill(ゲット プロスキル)
価格(税込)27,500円〜
開催期間2日間
受講形式対面(東京・名古屋・大阪)・eラーニング

AutoCADのAPIについてよくある質問

AutoCADの.NET APIとは何ですか?
AutoCADをC#やVB.NETで拡張できる仕組みです。図面の操作やカスタムコマンド作成、イベント処理など幅広く対応でき、ObjectARXに近い機能を使いやすく実装できます。
AutoCADのAPIはPythonで使えますか?
AutoCADの場合、.NETやC++が主流ですが、PythonからCOMや外部ライブラリを介して制御する方法もあります。簡単な自動処理やデータ連携に活用されるケースが増えています。
AutoCAD LTでもAPIを開発できますか?
AutoCAD LTはすでに販売が終了しています。現在はAutoCADやAutoCAD Plusの利用が必須です。なお旧版ではAPI機能が制限されており、ObjectARXや.NET APIは利用できませんでした。
Autodesk Platform Services APIと何が違いますか?
AutoCADのAPIはローカル環境で図面を操作します。一方、Autodesk Platform Services API(旧Forge)はクラウド基盤で動作し、Web上で図面表示や共有、システム連携に強みがあります。

AutoCADのAPIについてまとめ

AutoCADのAPIは、反復作業の自動化から外部システムとの連携まで幅広く活用できるのが魅力です。

AutoLISPや.NET、C++など目的に応じて選択できるほか、MCPや生成AIと組み合わせれば学習・開発効率も大幅に向上します。AutoCADの効率化や自動化を目指している方は、この機会にAPIの学習をスタートしてみてはいかがでしょうか。

AutoCAD APIのアイキャッチ
最新情報をチェックしよう!