CAD二次开发--0.开发环境搭建及CAD层次结构
本文章用于CAD二次开发学习工作总结,参考李冠艺著编的《深入浅出AutoCAD.NET二次开发》。
- 一、开发前准备:
- 首先开发前默认有一定的C#编程经验。
- 对CAD有一定的了解。
- 安装好Visual Studio 以及CAD 。
其中Visual Studio 和CAD的版本对应关系如下:
CAD版本 |
版本号 | DWG版本 | 注册表版本号 | .net Framework版本 |
---|---|---|---|---|
AutoCAD2007 |
R17.0 | AC1021 | ACAD-5001:804 | .net Framework 2.0 |
AutoCAD2008 |
R17.1 | AC1021 | ACAD-6001:804 | .net Framework 2.0 |
AutoCAD2009 |
R17.2 | AC1021 | ACAD-7001:804 | .net Framework 2.0 |
AutoCAD2010 |
R18.0 | AC1024 | ACAD-8001:804 | .net Framework 3.5 |
AutoCAD2011 |
R18.1 | AC1024 | ACAD-9001:804 | .net Framework 3.5 |
AutoCAD2012 |
R18.2 | AC1024 | ACAD-A001:804 | .net Framework 4.0 |
AutoCAD2013 |
R19.0 | AC1027 | ACAD-B001:804 | .net Framework 4.0 |
AutoCAD2014 |
R19.1 | AC1027 | ACAD-D001:804 | .net Framework 4.0 |
AutoCAD2015 |
R20.0 | AC1027 | ACAD-E001:804 | .net Framework 4.5 |
AutoCAD2016 |
R20.1 | AC1027 | ACAD-F001:804 | .net Framework 4.5 |
AutoCAD2017 |
R21.0 | AC1027 | ACAD-0001:804 | .net Framework 4.6 |
AutoCAD2018 |
R22.0 | AC1032 | ACAD-1001:804 | .net Framework 4.6 |
AutoCAD2019 |
R23.0 | AC1032 | ACAD-2001:804 | .net Framework 4.7 |
AutoCAD2020 |
- | - | - | - |
注:以上仅供参考,并不严谨。-表示当前未调试过对应的版本,不明确其信息。本人开发采用的是 AutoCAD2014 +Visual Studio 2012+.net Framework 4.5(4.0也可以编译通过)。
- 二、配置开发环境:
- 1.打开Visual Studio 2012,创建类库项目。
- 引用关键类库
- 找到CAD的安装目录下这三个dll文件
- 添加完成后
- 选中添加的组件,右键属性
- 并将复制本地改为False
- 接着
- 右键项目属性,选中调试,改为启动外部程序
- 定位到cad的安装目录下 ,选择acad.exe文件
- 至此,就可以开始写代码了。
- 附:
- CAD2013以前版本一般只需要引用acdbmgd.dll acmgd.dll,2013以后版本还需要引用accoremgd.dll
- 常用dll及命名空间对应关系(这里是对2010版本dll的介绍,2013版本有部分命名空间移到了accoremgd.dll文件里了)
- (1)acdbmgd.dll 包含对ObjectDBX API的封装,用于对图形对象的操作。主要包含的命名空间有:
- Autodesk.AutoCAD.Colors
- Autodesk.AutoCAD.DatabaseServices
- Autodesk.AutoCAD.Geometry
- Autodesk.AutoCAD.Runtime
- Autodesk.AutoCAD.GraphicsInterface
- Autodesk.AutoCAD.LayerManager
- (2)acmgd.dll 包含对大多数AutoCAD API的封装,用于对AutoCAD应用程序进行操作。主要包含的命名空间有:
- Autodesk.AutoCAD.ApplicationServices
- Autodesk.AutoCAD.EditorInput
- Autodesk.AutoCAD.Windows
- Autodesk.AutoCAD.Windows.ToolPalette
- Autodesk.AutoCAD.Internal.Windows
- Autodesk.AutoCAD.Internal.Forms
- (3)AcCui.dll 包含常用用户界面的封装,用于用户自定义文件进行操作。主要包含的命名空间有:
- Autodesk.AutoCAD.Customization
- Autodesk.AutoCAD.Customization.Interop
- (4)AdWindows.dll 包含常用Autodesk界面的封装,用于用户自定义工具条及菜单等用户界面。主要包含的命名空间有:
- Autodesk.Windows
- Autodesk.Windows.ToolBars
- 三、CAD的层次结构
- 其中
- Application对象是顶层对象,对应着整个CAD应用程序的管理。
- DocumntManager对象是所有打开的CAD文档对象(Document)的集合。
- Document对象是CAD的图纸文档,是Database的前端显示。
- Database是对DWG数据文件的操作类。
- Database包含的表(每张表里包含若干表记录):
- ViewTable 视图表 -ViewTableRecord 视图表记录
- TextStykeTable 文字表 -TextStykeTableRecord 文字表记录
- LayerTable 图层表 -LayerTableRecord 图层表记录
- LinetypeTable 线形表 -LinetypeTableRecord 线形表记录
- DimStyleTable -DimStyleTableRecord
- ViewportTable 视口表 -ViewportTableRecord 视口表记录
- UCSTable 坐标系表 -UCSTableRecord 坐标系表记录
- RegAppTable 扩展数据表 -RegAppTableRecord 扩展数据表记录
- BlockTable 块表- BlockTableRecord 块表记录(其中CAD种模型和布局是特殊的块表记录)
- ObjectDictionary 字典表
- Editor对象用于管理人机交互操作。
- Entity为图元实体对象。
CAD二次开发--0.开发环境搭建及CAD层次结构相关推荐
- 使用Kotlin开发Android应用 - 环境搭建 (1)
一. 在Android Studio上安装Kotlin插件 按快捷键Command+, -> 在Preferences界面找到Plugins -> 点击Browse repositorie ...
- VS2008开发Windows Mobile6环境搭建及模拟器联网问题图解
安装了VS2008后,新建一个智能设备的工程,但调试时只有三个WM5.0的模拟器可用,从网上查到要安装WM6.0的SDK,还要安装一些其它的组件才能开始WM(现在最新的叫法叫WP Windows Ph ...
- SSM搭建二手市场交易平台(一):开发流程与环境搭建
关于博主 努力与运动兼备-~~有任何问题可以加我好友或者关注微信公众号,欢迎交流,我们一起进步! 微信公众号: 啃饼思录 QQ: 2810706745(i思录) 写在前面 嘿,小伙伴们好久不见.最近难 ...
- JAVA团队开发手册 - 1.环境搭建
JAVA团队开发手册 - 1.环境搭建 写在前面 所有公司最核心的根本就是赚钱 + 实现老板的梦想. 对于IT类技术型公司,最大的成本就是人,可以称之为知识型劳动密集型企业. 对比房地产,模糊的说,产 ...
- LGT8F328P 开发板arduino环境搭建及中断程序
LGT8F328P 开发板arduino环境搭建: 1. 在官网上下载 Arduino硬件支持包 http://www.lgtic.com/downloads/ Arduino开发平台相关 LGT8F ...
- IOS开发学习 IDE环境搭建教程
IOS开发学习 IDE环境搭建教程是本文要介绍的内容,在坛子里逛了一圈,发现一篇好的文章,与友们分享一下,要有耐心的看整个过程,不多说,直接进入话题. 安装条件: 硬件:一台拥有支持虚拟技术的64位双 ...
- 鸿蒙OS开发sdk,鸿蒙开发之基础环境搭建
鸿蒙开发之基础环境搭建 一.下载和安装DevEco Studio HUAWEI DevEco Studio(以下简称DevEco Studio)是基于IntelliJ IDEA Community开源 ...
- SAP Fiori开发工具——Eclipse环境搭建
SAP Fiori开发工具--Eclipse环境搭建 这里我们选择Eclipse Web的Mars版本进行下载. 进入Eclipse官网:Eclipse Downloads | The Eclipse ...
- php基础开发(集成环境搭建)
php基础开发(集成环境搭建) 1.下载软件 2.安装软件并配置环境 3.验证 1.下载软件 下载地址 链接:https://pan.baidu.com/s/14rAsOm1g2WUUVaQ7E7VO ...
- donet 微服务开发 学习-Docker环境搭建 win7 docker 环境配置
donet 微服务开发 学习-Docker环境搭建 win7 docker 环境配置 目的介绍 下载安装 安装 Docker Quickstart Terminal 目的介绍 donet 微服务开发 ...
最新文章
- java泛型的实现和原理_java 泛型实现原理
- Regex入门(一)
- Docker 1.10版本发布
- 更新丨.NET 7 预览版2 中的 ASP.NET Core
- 所有可能出栈序列总数
- 获取页眉值vba_VBA抓取股票历史数据的整体表处理
- 不安全的文件下载原理
- php7.0-fpm.sock
- (戴尔灵越7572)笔记本外扩显示器以后,笔记本没有声音了的解决办法
- oracle windows系统下卸载oracle 11g和安装oracle 11g
- 高尔顿钉板与二项分布
- Word导出pdf时Origin图片出现重影(重叠)
- 华硕笔记本电脑电池保修范围
- 软考 - 系统架构设计师(软件架构设计)
- 来杭州云栖大会,全面了解企业如何实现云上IT治理
- IE浏览器地址栏输入中文乱码问题
- 恢复matlab文件关联
- linux创建sudo用户组,如何将用户添加到sudo组
- 机器学习代码整理pLSA、BoW、DBN、DNN
- 创意电子学-小知识:晶体管