CAD二次开发环境配置

基于.net平台c#语言的AutoCAD二次开发入门

  1. 开发入门

1.1 软件准备

      Visual Studio 2017 AutoCAD 2014

    
    
  • 1

1.2 开发环境准备

首先打开我们的 Visual Studio软件,菜单栏点击“文件→新建→项目”,选择Visual C#下的“类库(.NET Framework)”,在下面的文字框内容填写类名与项目路径(由于我的AutoCAD是2014版本,在这里我们选择的是.NET Framework4,根据AutoCAD版本的不同,.NET Framework版本的选择要注意),点击“确定”,完成项目的创建。
cad二次开发

在项目名FirstCad下,鼠标右键点击“引用→添加引用”按钮,弹出对话框,点击“浏览”,输入CAD的安装目录(*\Autodesk\AutoCAD XXXX),加载该目录下的acdbmgd.dll、acmgd.dll、accoremgd.dll、AcCui.dll文件,点击“确定”,我们所需要的几个动态链接库(.dll全称 Dynamic Link Library )被加载进来。选中这四个类库,右键进入“属性”,将“复制本地”选择框设置为false。
图2

常用的AutoCAD .NET API的四个主要DLL文件

名称作用备注
AcDbMgd.dll处理图形文件中存储的对象
AcMgd.dll处理AutoCAD应用程序和用户接口
AcCui.dll处理自定义文件
AcCoreMgd.dll处理编辑器、发布与打印、定义AutoLISP命令和函数AutoCAD 2014版

在项目的调试选项中,添加启动外部选项,指定我们的CAD的启动目录(acad.exe),具体设置如下图。设置完毕后,在我们debug时自动启动CAD软件。
tu12

1.3 代码运行环境测试

在我们的Class1.cs里面引入刚导入的其他工作空间定义的类型(为了测试,暂时导入三个,以后会导入其他的),代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
//导入的其他工作空间定义的类
using Autodesk.AutoCAD.ApplicationServices;
using Autodesk.AutoCAD.EditorInput;
using Autodesk.AutoCAD.Runtime;

namespace FirstCad
{
public class Class1
{
[CommandMethod(“HelloWorld”)]//设计的新命令

    public void HelloWorld()//调用HelloWorld 命令要调用的函数 
    {
        Document acDoc = Application.DocumentManager.MdiActiveDocument;//获取当前的活动文档 
        Editor acEd = acDoc.Editor;//当前的编辑器对象,命令行对象? 
        acEd.WriteMessage("Hello AutoDesk !! please take care of me!");//输出字符串 
    }
}

}

代码写好后,在项目名FirstCad上右键点击“调试→启动新实例”按钮,我们引入的CAD 软件会被打开(根据电脑运行速度的不同,有些首次运行可能会慢一点),在命令行输入【NETLOAD】命令,弹出对话框,选择我们编译生成的FirstCad.dll(*\FirstCad\FirstCad\bin\Debug\FirstCad.dll),然后在输入【HelloWorld】命令,命令行会输出我们设定的字符串(Hello AutoDesk !! please take care of me!)。这样的话,我们的测试就完成了,可以继续进行后续的开发。

————————————————
转载于:
原文链接:https://blog.csdn.net/qq_41441896/article/details/103578814

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值