Revit房间边界
房间的边界是一个闭合区间,房间边界可以是下面的元素:
•墙
•房间分隔
•建筑柱
•屋顶
•楼板
•天花板
元素可以被作为房间的边界,但需满足下面的条件:
在Revit界面上,选择一个房间之后,对应的边界就会髙亮显示,如图所示。

面积的边界只能是模型曲线(ModelCurve),但是房间的边界可以是墙或者其他元素,如上图中,房间边界对应的元素就是屋顶。
在 API 里面,用户可以调用 Room.GetBoundarySegments(SpatialElement-BoundaryOptions options)来得到房间边界,返回值是BoundarySegment集合的集合IList<IList<BoundarySegment>>。SpatialElementBoundaryOptions 有两个重要属性: SpatialElementBoundaryLocation 和 StoreFreeBoundaryFaces,分别指定边界的计算方式和是否计算自由边界面。
房间边界相关的类图如图所示。

•墙
•房间分隔
•建筑柱
•屋顶
•楼板
•天花板
元素可以被作为房间的边界,但需满足下面的条件:
•对于模型曲线的元素,它的类别必须是BuiltInCategory.OST_AreaSeparationLines。
•对于其他元素,比如墙、柱或屋顶,它们的“房间边界 ”(BuihInParameter.WALL_ATTR_ROOM_BOUNDING)参数必须设为True。如下图:
在Revit界面上,选择一个房间之后,对应的边界就会髙亮显示,如图所示。
面积的边界只能是模型曲线(ModelCurve),但是房间的边界可以是墙或者其他元素,如上图中,房间边界对应的元素就是屋顶。
在 API 里面,用户可以调用 Room.GetBoundarySegments(SpatialElement-BoundaryOptions options)来得到房间边界,返回值是BoundarySegment集合的集合IList<IList<BoundarySegment>>。SpatialElementBoundaryOptions 有两个重要属性: SpatialElementBoundaryLocation 和 StoreFreeBoundaryFaces,分别指定边界的计算方式和是否计算自由边界面。
房间边界相关的类图如图所示。
注意:当墙的两端作为边界的时候,BoundarySegment的Element属性返回值为空,但是Curve属性返回值不是空。
=========【更多高级应用请关注公众号】========
==================================