谈一谈Revit二次开发:Revit接口概述

2022年8月3日图文教程阅读模式

之前小编分享了不少关于Revit二次开发的文章,今天我们想继续聊聊这个话题,讲跟Revit接口有关的一些内容。

RevitAPI提供了强大的类库,配备一套完整的机制规范和扩展Revit的功能,Revit主要提供了RevitAPI.dll和RevitAPIUI.dll两个类库文件,其中封装了大量的库函数供开发者调用,一般开发者都需要调用IExternalCommand函数来实现外部应用,如果Revit处于运行状态下,外部命令就会被触发激活,当使用者调用该命令,软件会自动地去访问模型数据。

如果开发者创建的外部命令被集成在Revit中后,一般通过Revit功能区的附加模块栏目或者外部自定义菜单栏进行触发。

Revit提供了IExternalCommand接口用于使用者访问模型数据,该接口只提供Excute()函数,因此用户需要重载该函数来进行开发,该函数主要提供了输入参数commandData、输出参数message和输出参数elemnt,不同的参数功能基本能满足用户者的需求。当调用到接口后,如果实际访问到模型数据,需要使用库函数中的类函数,Revit为用户访问数据提供了UIDocument和Document两个大类,Document类主要用于访问模型上的数据,例如模型的场地和位置、模型中梁板柱等元素的数据等,UIDocument类提供更好的用户交互性,比如当用户希望获取选中的Revit模型中某个构件的数据,利用该类中的函数将会获得软件给出的数据。

Revit也为用户提供了用于添加外部应用的接口IExternalApplication,该接口封装了OnStartup和OnShutdown函数。如果用户希望在Revit原有的功能栏中添加需求的功能项目,该接口将能提供更多的方便用于个性化UI开发,但是无法访问模型的数据。

Revit将每次修改模型的操作都会进行一个自动记录,该行为称为事务,如果一个修改操作没有被完成,当软件执行外部命令的时候就会抛异常,这时候会产生事务回滚的现象。事务的模式主要有手动模式和自动模式,其也提供了Transaction、SubTransaction以及TransactionGroup三个类。

  • BIM学习群
  • 微信扫一扫
  • weinxin
  • 微信公众号
  • 微信扫一扫
  • weinxin
  • 本文由 发表于 2022年8月3日
  • 1、BIM学习网为资源共享网站,大部分资源均可在线免费获取,少数资源可通过VIP会员方式获取权限。
    2、所有均资源来自于网络及网友供稿,仅作为学习研究之用,禁止用于任何商业用途。
    3、如本页侵犯到任何第三方权益,请联系QQ/微信:9-5-7-0-3-2-9-6提交相关证明后我们将及时删除。
    4、百度网盘分享内容难免有被取消情况发生,VIP会员可直接联系索取和谐内容。
    5、转载请务必保留本文链接:谈一谈Revit二次开发:Revit接口概述