本文完成后,你能做到什么
CAD 二次开发语言介绍
AI 编程的发展:从补全代码到协作开发
开发环境的准备与 AI 指令
实战案例:批量对齐单行文字
1、CAD 二次开发语言介绍:为什么选择 C#
CAD 二次开发,简单说就是利用 Autodesk 为开发者开放的接口,在 CAD 原有功能基础上增加自己的命令和工作流程。例如,把“画线、创建图层、插入文字、统计图元、导出数据”等原本需要多次手工操作的步骤,组合成一个自定义命令;也可以按自己的专业规则,生成更高效的绘图、检查或整理工具。
目前常见的 AutoCAD 二次开发语言主要有 AutoLISP、C# 和 C++。
AutoLISP:适合快速解决小问题
C#:适合做可持续迭代的 CAD 插件
C# 可以通过 AutoCAD 的 .NET API,更结构化地操作文档、数据库、实体对象和界面。对于需要复杂逻辑、文件读写、数据处理、窗口界面,或后续要接入 AI 服务的插件,C# 是很合适的选择。
2、AI编程发展
2022年年底,ChatGPT的发布标志着AI浪潮的正式来临。最开始的AI智能对话和处理文字,然后慢慢扩展到使用音频、图像、视频等交互方式,再到近年来AI智能体的出现,AI可以规划任务,调用工具,完成复杂任务。发展的速度太快了,很难想象这个是不到4年间的变化,也很难想象未来5年AI会发展到什么样子。
说回到AI编程,在AI发展初期阶段,即语言对话模型中,主要是通过问答的方式持续沟通,AI 不仅生成代码,还承担解释、分析和调试辅助的角色。然后随着AI智能体的出现,通过沟通,AI可以直接修改本地的代码文件。
目前作者就是通过用AI工具对话的方式,让AI智能体在直接在本地执行,然后将代码生成的插件导入到CAD中,测试其功能是否有问题。全程没有手动改过一段代码,甚至都没有看过一段代码,代码都是在本地后台直接修改完成的。当前比较主流的code工具主要有Codex、Claude,国内比较主流的是workbuddy,对于初学者来说都大差不差。我目前使用 AI code工具是Codex,也就是OpenAI公司专门用于编程的一个AI工具。
3、开发环境准备
对于C#语言开发,需要准备以下工具,一台Windows系统电脑,系统版本最好是win10及以上、Visual Studio 2019、目标CAD、Codex 或其他 AI 编程工具。
正常开发流程是:在VS2019中新建一个C# 类库编程项目;在该项目中设置好CAD API的引用,即acmgd.dll、acdbmgd.dll、accoremgd.dl。这三个核心文件位于CAD安装文件夹内,相当于CAD开放的接口。
当然,有了AI工具,这一步不需要自己做,只需要给予AI相应的提示词,它会自动完成这一步。先安装对应的智能体,如Codex,然后新建项目(此处的项目为AI智能体的项目),然后在项目中新建一个聊天,在聊天框中输入以下文字:
VS项目是CAD开发演示,插件名JQTest。
请在当前工作区搭建AutoCAD 2014(64位)C#二次开发初始环境,先检查本机环境,再创建或调整项目结构;不要下载来路不明DLL,不要动无关文件。目标环境:VS2019,CAD AutoCAD 2014 x64,项目C# Class Library(插件),.NET Framework 4.5(如未安装Targeting Pack需提示安装,不能换.NET 6/8/Core),平台x64(不能Any CPU,不勾Prefer 32-bit),输出DLL,加载方式后续NETLOAD手动加载。
步骤:1.先检查当前目录是否已有.sln/.csproj或CAD项目,有则优先在原基础上修改,不要重建覆盖;
2.查找本机AutoCAD 2014(64位)安装路径,定位AcMgd.dll、AcDbMgd.dll、AcCoreMgd.dll,必须确认是2014版本不能混用;
3.创建/配置VS2019 Class Library:.NET Framework 4.5,x64,Debug/Release均x64,关闭Prefer 32-bit;
4.添加引用AcMgd.dll/AcDbMgd.dll/AcCoreMgd.dll,Copy Local=False不复制输出;
5.建议用CadApiDir统一路径(写入props或csproj);
6.创建最小插件JQTest,实现IExtensionApplication,添加命令MYHELLO,在CAD命令行输出一句话验证加载成功;
7.写README:环境说明(CAD2014+.NET4.5)、DLL配置方式、VS2019编译方法、NETLOAD加载方式、MYHELLO测试方法;
8.最后给出Debug/x64构建结果:是否成功、错误/警告数量、DLL输出路径、失败则说明原因(路径/版本/.NET4.5未装/其他)。
注意:只做基础插件环境搭建,不要加NuGet、第三方库或自动打包。


4、实战小技巧
具体展示如下:


然后打开CAD按提示操作试一下效果:

这样一个小插件就做好了,全程没有写一段代码,甚至不需要知道代码在什么地方,是不是还挺简单的。
好了,本篇分享到此结束,如果本文能帮助你迈出 CAD 二次开发的第一步,将不胜荣幸。
夜雨聆风