Revit二次开发2、开发基础之——RevitAPI、RevitAPIUI及Revit开发三大利器
RevitAPI是建立 在Revit产品基础之上的。它是一个类库,需要在Revit运行时才能够工作。通过这套API,可以添加用户开发的基于RevitAPI的插件来扩展和增强Revit功能和应用。
RevitAPI提供了一套机制和扩展Revit的功能。它主要包含了 RevitAPI.dll、RevitAPIUI.dll等程序集,而RevitAPI.dll、RevitAPIUI.dll就是我们需要学习的重点。
RevitAPI.dll
RevitAPI.dll程序集包含了访问Revit中DB级的应用(Application)、文件(Document)、各类图元(Element)及各种参数(Parameter)的方法,也包含了IExternalDBApplication等接口。
所以在操作应用、修改文件、图元时需要引用RevitAPI.dll,方法如下:
using Autodesk.Revit.DB;
RevitAPIUI.dll
RevitAPIUI.dll包含了所有操作和定制Revit UI的接口:
- IExternalCommand相关接口
- IExternalApplication相关接口
- Selection选择
- 菜单类RibbonPanel、RibbonItem以及其子类
- TaskDialogs任务对话框
- IExternalEventHandler相关接口
因此,在开发插制作外部命令、外部应用、选择图元、制作界面上的菜单及按钮、使用对话框之前需要加载RevitAPIUI.dll,其方法如下:
using Autodesk.Revit.UI;
Revit开发三大利器
Revit二次开发最主要的三大利器是:
外部命令(IExternalCommand)
IExternalCommand是Revit API用户通过外部命令来扩展功能的接口。用户对Revit窗口、图元等主要的修改、操作均需要在此类接口下完成。
外部应用(IExternalApplication)
IExternalApplication是一种特殊的应用类,它主要使用在OnStartup和OnShutdown函数提供访问定制UI和注册事件的方法。我们使用它的主要目的是将我们所制作的插件与Revit界面结合起来,通过菜单或按键使我们可以快捷的调用我们所制作的插件功能。
外部事件(ExternalEvent)
ExternalEvent主要用于所开发的插件界面与Revit交互,用户在一次执行插件命令的过程中可以在插件界面与Revit界面中互动操作,随时修改参数数据并能即时反馈到Revit界面中。
结束语
外部命令(IExternalCommand)、外部应用(IExternalApplication)、外部事件(ExternalEvent)是二次开发的重点,是需要熟练运用,需要逐个来学习使用。
先学习各个部分的基本框架,再逐步深入吧。
- 接下来将分三个部分来学习Revit二次开发的三大利器,尽请期待!