本人录制c#CAD二次开发视频 基础入门全套,感兴趣可以淘宝搜索店铺 PT的cad小店
https://i.xue.taobao.com/detail.htm?spm=a2174.7765247.0.0.6EmxKK&courseId=112889
一、所需要工具
visual studio 2015 、CAD2014 (大家可以结合自己的实际情况配置)
注意:由于利用C#CAD二次开发,需要调用每个版本内的DLL文件,故针对哪个版本开发的插件就只能在哪个版本上用,否则需要单独适配版本。不如LISP 编写完后基本都是版本通用
二、搭建步骤
1、新建一个类库,打开vs2015,点击文件-新建-项目,选择类库,点击保存。
然后添加引用,鼠标右键引用-添加引用-浏览,找到CAD的安装路径X:\Autodesk\AutoCAD XXX,找到以下几个dll文件
accoremgd.dll,AcCui.dll,acdbmgd.dll,acmgd.dll;添加这几个引用。
2、添加完成后将这几个引用的属性中的“复制本地”改为False。
3、调试设置
鼠标右击项目,选择属性,应用程序-目标框架选择 .NET Framework 4.5;生成-平台选择 x64,目标平台选择x64,调试-启动项目-启动外部程序,选择CAD安装目录,找到acad.exe。
4、开始helloword工程代码
添加命名空间使用,因为添加引用的CAD的DLL,相当于引用进来了CAD封装好的函数库(个人通俗理解,勿喷)
using Autodesk.AutoCAD.DatabaseServices;// (Database, DBPoint, Line, Spline)
using Autodesk.AutoCAD.Geometry;//(Point3d, Line3d, Curve3d)
using Autodesk.AutoCAD.ApplicationServices;// (Application, Document)
using Autodesk.AutoCAD.Runtime;// (CommandMethodAttribute, RXObject, CommandFlag)
using Autodesk.AutoCAD.EditorInput;//(Editor, PromptXOptions, PromptXResult)
using AcadApp = Autodesk.AutoCAD.ApplicationServices.Application;
创建快捷键函数
namespace CADPractise
{
public class Class1
{
[CommandMethod("HelloWorld")]//设计的新命令
public void HelloWorld()//调用HelloWorld 命令要调用的函数
{
Document acDoc = Application.DocumentManager.MdiActiveDocument;//获取当前的活动文档
Editor acEd = acDoc.Editor;//当前的编辑器对象,命令行对象?
acEd.WriteMessage("Hello World!");//输出字符串
}
}
}
5、启动CAD ,加载应用程序。通过C# 开发的应用程序都是dll形式,按此加载即可