revit主要用来做什么(revit二次开发有什么区别)

74次阅读
没有评论

Revit可以使用自带的关系数据库实现3D模型的高效创建,模型中存储了大量的参数信息。利用软件的功能,还可以生成不同视图的2D图纸,满足项目需求。同时,软件开发商也设计了API接口。在 Revit 中,Revit 产生的功能将不限于专业开发团队分配给它的功能操作。同样,设计师也可以根据自己的努力实现个性化定制。操作要求。

摄图网_500149981_wx_建筑设计房子模型(非企业商用).jpg

Revit二次开发涉及的基本概念

(1)外部命令

开发者可自行添加通过 IExternalCommand 应用程序。外部接口充当 Revit 软件和开发插件的开发者之间的桥梁,所有代码都需要通过外部命令来实现。 Revit 通过 .addin 文件识别和加载外部加载项。外部命令可以理解为包含要执行的程序代码的容器,通过它可以在Revit中识别和执行开发者设计的程序。选择插件后,将创建并实例化外部命令对象。通过派生类创建对象时,必须调用基类的构造函数,在实例化过程中会自动执行构造函数Exec​​ute()。执行后,外部命令对象被销毁,内存中的实例缓存将被清空。

整个程序包括参数提取模块都应该以Revit外部命令的形式打包,等待外部应用程序的调用。

(2)元素

元素是Revit中一个特别重要的概念。用户可以看到的大多数对象都是元素,例如墙、族、族类型、族实例、标高、网格、视图等。并且几乎所有 Revit 代码中的类也都继承自元素。在参考程序的设计中,所有的数据采集都必须基于元素。组件上的所有组件和结构都是元素的实例。模型中的数据存储在每个元素中。读取组件数据的方法和属性。

摄图网_500144223_wx_建筑图纸(非企业商用).jpg

(3) 元素收集器和过滤器

Revit API 提供了三种不同的元素过滤器,用于遍历分类元素和元素 ID。这些过滤器为各种不同的应用程序提供了一种更灵活、更实用的过滤方式。用于迭代和过滤元素的主要类是收集器,它有三种构造方法,详细见表4.1、可以根据情况使用任何一种。

FileteredElementCollector() 收集器提供了一系列方法,允许用户设置查询和过滤器所需的元素集:

?泛型方法 Passes(),在收集器中应用单个 ElementFilter 过滤器。该方法可以继续在结果中使用额外的附加过滤器。

?Shortcut方法,不需要初始化filter对象的好用的方法,相当于常用的filter过滤器的快捷键。如OfClass()、OfCategoryId()、OwnedByView()。

?并集、交集等运算方法,包括UnionWith()和IntersectWith()。

(4)点线模型

虽然Revit是一款3D建模软件,但其模型数据仍会将模型简化为存储模型中多个点组成的空间,并且本文涉及的模型包括墙壁、孔洞和凹槽,它们是由空间中的点坐标集构建的,所以在提取参数的过程中,我们会将视觉模型想象成由点和线组成,例如简化模型软件中的墙体构件是由起点和终点组成的两点线段,孔和槽在软件中都垂直于XY轴的平面,所以简化模型是一个点在一个空间中,通过与元素的参数mid-bottom height和top-height数据相协调,可以得到一个空间线段模型。

薛雷沉阳工业大学

仅供学习交流,版权归原作者所有

正文完
 
评论(没有评论)