Revit二次开发初体验

时间:2023-12-14 21:36:56

最近换了下工作,由之前的互联网企业转入了BIM软件开发行列。具体原因不多说,作为一个程序员来说学习永无止境。下面来一个Hello World体验下Revit的二次开发

事前准备

VS

Revit 2017

Revit二次开发中会使用到两个dll文件,由这两个文件来提供对Revit中项目数据的访问,两个dll文件的名称为RevitAPI.dll和RevitAPIUI.dll。获取方式在Revit的安装目录中,我本机Revit安装在E盘,E:\Autodesk\2017\Revit 2017,这个路径下会存在这两个文件,拷贝到自己的项目中并将其添加为项目引用即可或者通过Nuget下载。

Revit二次开发初体验

HelloWorld入门

1.创建一个类库项目,并以RevitHelloWorld命名,创建DLL文件夹并将上面提到的两个DLL文件拷贝其中,最后将这两个文件引入到项目中,最终效果如下:

Revit二次开发初体验

2.创建HelloCommand文件,并实现IExternalCommand此接口

Revit二次开发初体验

红色方框中的就是需要实现你需要的功能的地方。

本例中只简单介绍,所以,代码实现如下:

Revit二次开发初体验

其中上面的两个特性需要注意必须加上,具体作用可以自己看下。如果不加后期再将这个放入Revit中的时候会提示

Revit二次开发初体验

项目编译在bin目录下获得

Revit二次开发初体验

3.打开Revit,创建一个项目

Revit二次开发初体验

4.在Revit中添加刚才写好的功能

Revit二次开发初体验

点击进去下面的界面:

Revit二次开发初体验

选择Load将刚才生成的dll文件引入进来

Revit二次开发初体验

Revit二次开发初体验

点击run按钮即可看到刚才代码的效果

Revit二次开发初体验

到这第一个HelloWorld的功能就完成了。

Revit插件启动模式

配置addin文件启动

Revit二次开发初体验

在这个目录下创建一个addin文件类型的文件,文件内容如下:

Revit二次开发初体验

唯一标识码的生成可以利用VS,工具菜单下创建GUID功能,将生成的数据粘贴即可:

Revit二次开发初体验

这之后启动Revit在附件功能中就可以看到:

Revit二次开发初体验

项目调试

很多情况下功能的开发总是需要调试的,这样可以跟踪程序的执行步骤,从而发现代码中可能存在的缺陷。这里我们借助VS进行调试。

Revit二次开发初体验

选择Revit.exe,将当前程序附加到Revit中。并在代码中加入断点。

Revit二次开发初体验Revit二次开发初体验

此时在按一节讲的运行程序即可看到如下效果:

Revit二次开发初体验

附件模块下的外部工具和Revit Lookup的安装需要自己完成。

其中外部工具是用来调试程序的,Revit Lookup则是帮助开发人员查找属性用的。