zoukankan      html  css  js  c++  java
  • 基于.NET的CAD二次开发学习笔记一:CAD开发入门

    1、AutoCAD .NET API由不同的DLL文件组成,它们提供用于访问图形文件或AutoCAD应用程序的包含丰富的类、结构、方法和事件。每一个DLL文件都定义不同的使用基于功能的库组织组件的命名空间。

    下面是你将频繁地要使用的AutoCAD .NET API 的三个主要的DLL文件:

          AcDbMgd.dll. 当使用图形文件中的对象时使用这个DLL文件。

          AcMgd.dll. 当使用AutoCAD应用程序时使用这个DLL文件。

          AcCui.dll. 当使用自定义文件时使用这个DLL文件。

    注意:在创建CAD项目时,需要引用到以上DLL,一般来说前面两个使用的较多。AutoCAD .NET API DLL被引用,就必须设置引用DLL文件的“复制到本地”属性为False。复制到本地属性确定当Microsoft Visual Studio编译工程时是否创建一个引用DLL文件的副本并将它放在与工程的程序集文件相同的目录下。由于引用文件已经是AutoCAD附属文件,因此,创建引用文件的副本后当加载程序集文件到AutoCAD中时将可能引发意想不到的结果。

    2、在.NET 类中加入CAD能调用的命令,必须用到CommandMethod属性,这个属性由Runtime命名空间提供。代码如下所示

     1 Imports Autodesk.AutoCAD.Runtime
     2 Imports Autodesk.AutoCAD.ApplicationServices
     3 Imports Autodesk.AutoCAD.DatabaseServices
     4 
     5 Public Class MyHello
     6     <CommandMethod("Hello")> _
     7     Public Sub Hello()
     8         '获取当前活动文档的Editor对象,
     9         Dim Doc As Autodesk.AutoCAD.ApplicationServices.Document = Application.DocumentManager.MdiActiveDocument
    10         Dim Ed As Autodesk.AutoCAD.EditorInput.Editor = Doc.Editor
    11         Ed.WriteMessage("Hello")
    12 
    13     End Sub
    14 End Class

     

     

    3、CAD项目生成类库后,可在 AutoCAD 的命令提示符中,输入 netload 命令,并选中生成的DLL,加载CAD项目,即可在CAD中使用CommandMethod指定的命令。

    4、CAD调试(以CAD2010、VS2010为例):右键打开项目属性-->调试-->选择启动外部程序  AutoCAD2010acad.exe

    断点不起作用如下

    (解决方法摘自:http://www.cnblogs.com/junqilian/archive/2010/04/29/1724403.html)

    断点不起作用的原因在于Visual Studio 2010在调试时启动了默认的debugger(v4.0),但是为了让我们的.net应用程序能在AutoCAD Map (或Revit)等上运行,我们需要.net 2.0 framework( 3.5也是运行在CLR 2.0之上的)。

    解决办法有如下两个方案:

    方案1

    编辑宿主程序的config 文件(acad.exe.config, revit.exe.config等等),这个文件在AutoCAD的安装目录下。在</configuration>前面加上下面的代码(CAD2010该行代码已被注释):

    <startup>

    <supportedRuntime version="v2.0.50727" />

    </startup>

     

    方案2

    把宿主exe文件作为一个已有的项目加到您的解决方案中,并把debugger设置为v2.0

           右键单击Solution Explorer,选择Add->Existing Project,浏览到AutoCAD的启动文件Acad.exe

     

            右键单击该项目,把它设置为启动项目 Set as StartUp Project

     

            打开项目属性对话框 Properties   

     

           设置 Debugger Type 为 Managed v2.0 

    5、对于不同的AutoCAD版本,推荐使用的.NET Framework版本如下:

    2007-2009 -> Framework 2.0

    2010-2011 -> Framework 3.5

    2012-2013 -> Framework 4.0

     

     

     

  • 相关阅读:
    【资源分享】一个匿名文件分享网站
    【C语言】指针到底有什么用
    【C语言】一招搞定C语言各种复杂指针
    【资源分享】Visual Studio全版本在线安装包(5MB)
    【资源分享】C语言也能干大事(第二版)
    【资源分享】迅雷
    Nuxt spa deploy
    nginx ssl docker
    Linux查看环境变量
    Nginx 配置
  • 原文地址:https://www.cnblogs.com/rliverpool/p/3949302.html
Copyright © 2011-2022 走看看