Revit二次开发之十八 Revit图形元素

在模型轻量化或者其他应用中,需要获取Revit里面元素的图形信息,Revit的三维显示,也是多种图形描述元素组成,在Element元素之下,有一个重要的属性Geometry,其通过get_Geometry函数获取,将会返回一个GeometryElement对象,这个对象是一个图形集合,其可能包含下图中所有图形元素的一种,根据继承关系,可以知道Revit中图形元素扩展方式如下图:

Revit二次开发之十八 Revit图形元素_第1张图片

  1. GeometryElement

这个是比较核心的元素,Element通过get_Geometry函数,能够获取的元素就是这个元素,这个对象,本身是不包含图形的,包含图形是它的GetEnumerator枚举类型,其枚举类型是包含以上可能的所有元素,包括GeometryElement

  1. GeometryInstance

主要是族元素获取其图形元素,Revit使用geometryinstances存储给定族的几何图形的单个副本,并在多个实例中重复使用该副本,并非所有族实例都包含geometryinstance。当Revit需要为给定实例制作族几何图形的唯一副本时(由于本地连接、交点和与实例放置相关的其他因素的影响),将不会遇到geometry instance;相反,将在层次的顶层找到实体几何图形。GeometryInstance提供通过GetSymbolGeometry()和GetInstanceGeometry()方法读取其几何图形的功能。这些方法返回另一个Autodesk.Revit.DB.GeometryElement。

  1. Curve图形

各种线段在revit中应用比较多,比如模型分析线、标准线、机电里面的导线,很多都是以Line、Arc、NurbSpline和多边形的方式表达。

  1. Edge、solid、face等

对于一些Solid来说,它是有2个核心元素组成Edge和face,而Edge主要是Curve组成,而对于所有的Face,则是由多个MESH组成。MESH是图形的最基础元素,组成了所有的空间三维对象。

  1. Polyline

多边形元素,在REVIT一些房间等多边形元素,都是基于这个对象。

你可能感兴趣的:(Revit二次开发之十八 Revit图形元素)