首页/BIM专题

Revit如何二次开发?一篇文章带你了解Revit二次开发流程

发布于:2021-10-14 17:10:33
15111人 分享

Revit二次解发需安装必须的二次解发平台,明确解发环境、解发方式以及解发流程。

解发环境

Revit API可用与.NET Framework兼容的解发语言进行编程,.NET Framework为用户程序解发提供了一套安全模型,在此模型中可以确保使用的代玛被识别,保证了编程语言的一致性。支持.NET的编程语言有C#、Visual Basic、C++等。由于CH语言.NET平台耦合度很高,且语法简洁,解发效率高,故选择C#作为解发编程语言,安装Microsoft.NET Framework 4.6。安装Revit 2018作为建模平台,选择的解发软件工具为Visual Studio 2013,在程序解发前引入RevitAPl.dIl”及“RevitAPIUI.dlI”动态链接库。

解发方式

通过Revit API 扩展其功能模块,主要有两种特殊的接口派生类:外部命令(IExternalCommand)和外部应用(IExternalApplications)。IExternalCommand是RevitAPI中实现外部扩展的命令,内含Excute函数。外部命令调用Excute函数来实现IExternalCommand,Excute 的定义方式public Autodesk.Revit.UI.Result Execute(ExternalCommandData cmdData,ref string message,ElementSet elements),分别为输入参数CommandData(ExternalCommandData)、输出参数message(string)、输出参数elements(ElementSet)。解发者可以通过实现IExternalApplications来添加自己解发的Revit应用,IExternalApplication 的接口要实现两个抽象函数:OnStartup和 OnShutdown,利用OnStartup()函数和 OnShutdown)函数定制Revit启动和关闭的时候所需的功能,解发时在外部命令中添加相应的功能代玛,依附于外部应用的框架,再利用.addin注册文件共同控制着外部插件的识别和加载,一般用来创建插件的菜单栏。

腿腿教学网-Revit如何二次解发?一篇文章带你了解Revit二次解发流程 

RevitAPI为方便用户配置自己的ExternalCommand和 ExternalApplication的行为提供了多种属性,为命令类添加控制命令的事务模式和更新模式,通常选用手动(Manual)模式,Transactiori属性,用户必须在实现IExternalCommand接口时指定外面命令使用的TransactionMode属性。Regeneration用于控制外部命令或外部应用程序的再生行为。为命令类添加控制命令的事务模式和更新模式[Transaction(TransactionMode.Manual)],[Regeneration(RegenerationOption.Manual)]使用API需要用到应用类和文档类。应用类有UIApplication和 Application 。UIApplication用来提供访问UI级别接口,包括访问用户界面·RibbonPanels,获得用户界面的活动文档等能力。Application用来提供访问其他应用级别内容接口。文档类有UIDocument和 Document。

UIDocument用来提供访问UI级别接口,Document用来提供访问其他应用级别内容接口。

如图所示为Revit二次解发基本流程。

文:高建新 大连海事大学

转载请注明来源本文地址:https://m.tuituisoft/bim/23313.html

上一篇:没有了 下一篇:没有了