引自并参考Kean's blog:http://through-the-interface.typepad.com/through_the_interface/2006/07/getting_started.html

这篇文章写于2006年7月3日,虽然比较早,但是这是所有的开始,所以第一篇要由此写。

开始用.NET编写使用与AutoCAD的插件,首先你需要的平台是.NET的编程平台Visual Studio,当然还有AutoCAD软件。其版本对应的关系如下:

VS2005——CAD2007,CAD2008,CAD2009

VS2008——CAD2010

因为本人日常使用的是CAD2010,我主要用VS2008的C#来编写程序,而这篇文章是使用ObjectARX(C++)来开发,所以这里直接翻译。

VS2008和AutoCAD软件,请读者由网上寻找下载。

好,回到我们的主题,使用.NET来进行CAD的二次开发,首先要下载适用于不同CAD版本的ObjectARX SDK。SDK中包括了展示API不同功能的例子,可以很好的作为你编程的参考,这里给出不同的版本对应:

  ObjectARX对应AutoCAD2011及以上版本请点击这里

  ObjectARX对应AutoCAD2010及以下版本请点击这里

同所有编程的起点一样,这里使用ObjectARX的向导生成一个用VB.NET开发的“Hello World”程序。

步骤一:在SDK中找到安装向导文件ObjectARX Wizards (ArxWizards.msi),运行之。

步骤二:上一步成功之后,当你打开VS2005新建项目的时候,你会发现如下:

点击“OK”,

点击“Finish”。

  这里面向导程序为你做了很多工作,它建立了Class Library Project,并且将AutoCAD所需要的Dlls文件添加其中,这里包括CAD的两个核心:

  acdbmgd.dll:包括内部的AcDb(核心数据库)和支持的类;

  acmgd.dll:包括CAD程序特性的类。

步骤三:输入如下代码:

Imports Autodesk.AutoCAD.Runtime

    Public Class AdskClass

        ' Define command 'Asdkcmd1'

        <CommandMethod("Asdkcmd1")> _

        Public Sub Asdkcmd1()

            ' Type your code here

        End Sub

    End Class

步骤四:编译工程,生成dll文件。

步骤五:在AutoCAD平台命令窗口,输入netload命令,并导入生成的dll文件。

步骤六:在命令窗口输入asdkcmd1,则可以实现你的功能。

从AutoCAD和.NET开始的更多相关文章

  1. AutoCAD .net 开发 SelectionFilter Foreach Linq 性能比较

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  2. Autocad 2012 win7(64位)启动时一直卡在acmgd.dll处的解决方案

    安装Autocad 2012后,激活成功后,无法正常启动,一直卡在加载acmgd.dll 通过Procmon监控后发现加载C:\Windows\fonts\AdobeFnt11.lst处出错, 通过命 ...

  3. 通过API执行AutoCAD命令来…

    大家知道AutoCAD功能丰富,而更可贵的是,这么多丰富的功能背后都有一个命令,有些东西,直接用API调用写起来可能很费劲或者无法实现,可如果能用命令的话却很简单,这时候我们就可以通过API来调用Au ...

  4. AutoCAD Civil 3D 中缓和曲线的定义

    本文对AutoCAD Civil 3D中缓和曲线的定义进行了整理. 原英文网页如下: https://knowledge.autodesk.com/support/autocad-civil-3d/l ...

  5. VS2010开发AutoCAD 2012 .net应用程序调试时断点不起作用

    VS2010+ AutoCAD 2012开发调试过程中,发现普通的Class里面的断点是可以跟踪到的,可能是创建自定义的Form做界面是,Form1.cs中的代码断点却不管用.原因在于AutoCAD的 ...

  6. 基于.NET的CAD二次开发学习笔记二:AutoCAD .NET中的对象

    1.CAD对象:一个CAD文件(DWG文件)即对应一个数据库,数据库中的所有组成部分,看的见(包括点.多段线.文字.圆等)和看不见(图层.线型.颜色等)的都是对象,数据库本身也是一个对象. 直线.圆弧 ...

  7. Registry values for ProductID and LocaleID for AutoCAD and the vertical products

    原文地址:http://adndevblog.typepad.com/autocad/2013/08/registry-values-for-productid-and-localeid-for-au ...

  8. AutoCAD系统变量一览表

    p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; text-align: justify; t ...

  9. DWG2SHP DXF2SHP 如何把AutoCAD的DWG,DXF文件转换为Esri ArcGIS的Shape文件

    dwg是AutoCAD创立的一种图纸保存格式,已经成为二维CAD的标准格式,很多其他CAD为了兼容AutoCAD,也直接使用dwg作为默认工作文件. 地图shape文件由ESRI开发,一个ESRI的s ...

随机推荐

  1. bzoj2141 树状数组套Treap树

    题目大意是在能够改变两个数的位置的情况下计算逆序对数 这因为是动态记录逆序对 本来单纯逆序对只要用树状数组计算即可,但这里因为更新,所以利用TReap树的删点和增加点来进行更新 大致是把每个树状数组所 ...

  2. CSS3入门--线条动画特效实例

    HTML: <div></div> CSS: div{ width: 200px; height: 200px; margin: 200px auto; background: ...

  3. jquery mobile上传图片完整例子(包含ios图片横向问题处理和C#后台图片压缩)

    上传图片本身是个基本的小功能,但是到了移动端就不那么简单了,相信找到这篇文章的你一定有深深的同感. 本文实例是:在(移动端)页面中点击图片,然后选择文件,然后保存.使用Asp.net 难点一:后台获取 ...

  4. Java IO流

    File类 ·java.io.File类:文件和目录路径名的抽象表示形式,与平台无关 ·File能新建.删除.重命名文件和目录,但File不能访问文件内容本身.如果需要访问文件内容本身,则需要使用输入 ...

  5. mysql 导出导入数据库

    导入mysql -u$USER -p$PASSWD -h127.0.0.1 -P3306 --default-character-set=utf8 < db.all.sql导出 mysqldum ...

  6. R语言XML包的数据抓取

    htmlParse 函数 htmlParse加抓HTML页面的函数. url1<-"http://www.caixin.com/"url<-htmlParse(url1 ...

  7. Hello, RealSense!

    这是kinect for windows: 这是华硕 xtion pro: 这是Intel® RealSense™: 几经周折,终于买到了,99美元套件+25美元运费,正在旅途中.

  8. xml配置文件的读写

    using System.Xml; //----------------------------------------------读出XML文件中的节点值 XmlDocument xmlDoc = ...

  9. C++类内存布局图(成员函数和成员变量分开讨论)

    一.成员函数 成员函数可以被看作是类作用域的全局函数,不在对象分配的空间里,只有虚函数才会在类对象里有一个指针,存放虚函数的地址等相关信息. 成员函数的地址,编译期就已确定,并静态绑定或动态的绑定在对 ...

  10. leetcode216-Combination Sum III

    https://leetcode.com/problems/combination-sum-iii/ 用dfs枚举. class Solution { public: int kk, nn; vect ...