IFC 4.3.2.20251031 (IFC4X3_ADD2) under development

8.8.3.35 IfcSectionedSolidHorizontal(水平截面实体)

AbV ⓘ

8.8.3.35.1 语义定义(Semantic definition)

IfcSectionedSolidHorizontal 是一种通过在曲线上水平扫掠可能变化的横截面而构建的实体模型。

该实体通过在_截面位置_之间对_截面_进行扫掠生成,沿着准线对具有相同标签的轮廓点之间进行线性插值。轮廓法线源自关联的_IfcAxis2PlacementLinear_,而不一定是_准线_的切线。轮廓X轴是_IfcAxis2PlacementLinear_中_参考方向_的方向,轮廓Y轴是_轴_的方向。

对于根据单一超高值旋转截面的情况,可使用_IfcDerivedProfileDef_来指示此类旋转,其中每个_父轮廓_引用相同的底层轮廓。对于根据多个超高值变换截面且各点独立变化的情况,每个轮廓可以是不同的实例但属于相同类型(例如_IfcArbitraryClosedProfileDef_),并可选择通过使用带_IfcCartesianPointList2D.TagList_的_IfcIndexedPolyCurve_匹配标签,将截面点与字符串线("引导曲线")关联。

图1展示了具有恒定参数化轮廓的四个桥梁梁、具有恒定任意轮廓的两个护栏(其中一个镜像)以及具有可变任意轮廓的桥面板。

空间结构
图1 — 水平截面实体
IfcSectionedSolidHorizontal1
图2 — 显示多个截面位置的侧视图
IfcSectionedSolidHorizontal2
图3 — 基于两个截面的示例形状(红色显示),两个截面均不从起点或终点开始且形状不同。

非正式命题

  1. 任何两个相邻截面不得相交。
  2. 如果截面类型不是IfcParameterizedProfileDef(即任意轮廓),则两个相邻轮廓的点和边数量应相同。
  3. 如果准线不是切线连续的,则生成的实体将通过两个线段之间的半角斜接创建。
  4. 非常尖锐的边缘可能导致几乎无法实现的斜接;实施者协议可定义切线不连续性的可接受限制,或要求准线为切线连续。
  5. 准线不得自相交。

8.8.3.35.2 实体继承(Entity inheritance)

8.8.3.35.3 特性(Attributes)

# 特性(Attributes) 类型 描述
IfcRepresentationItem (2)
LayerAssignment SET [0:1] OF IfcPresentationLayerAssignment FOR AssignedItems

将表示项分配给单个或多个层。LayerAssignments 可以覆盖其所在的 IfcRepresentationItems 列表中的 LayerAssignments

StyledByItem SET [0:1] OF IfcStyledItem FOR Item

引用为表示提供表现信息的 IfcStyledItem,例如,为几何曲线提供曲线样式,包括颜色和厚度。

IfcSolidModel (1)
* Dim IfcDimensionCount

此属性是形式化派生的

3

本类的空间维度,恒为3。

IfcSectionedSolid (2)
1 Directrix IfcCurve

用于定义扫掠操作的曲线。

2 CrossSections LIST [2:?] OF IfcProfileDef

沿 Directrix 依次排列的横截面列表。

点击显示 5 个隐藏的继承特性 点击隐藏 5 个继承特性
IfcSectionedSolidHorizontal (1)
3 CrossSectionPositions LIST [2:?] OF IfcAxis2PlacementLinear

按顺序递增的位置坐标系与_截面_配对,指示相应截面沿_准线_的位置。

表 8.8.3.35.B

8.8.3.35.4 形式化命题(Formal propositions)

名称 描述
CorrespondingSectionPositions

截面集合与截面位置集合的大小必须相同。

SIZEOF(CrossSections) = SIZEOF(CrossSectionPositions)
NoLongitudinalOffsets

距离表达式不得使用纵向偏移。

SIZEOF(QUERY(temp <* CrossSectionPositions | EXISTS(temp.Location.OffsetLongitudinal))) = 0
表 8.8.3.35.C

8.8.3.35.5 形式化表示(Formal representation)

ENTITY IfcSectionedSolidHorizontal
 SUBTYPE OF (IfcSectionedSolid);
	CrossSectionPositions : LIST [2:?] OF IfcAxis2PlacementLinear;
 WHERE
	CorrespondingSectionPositions : SIZEOF(CrossSections) = SIZEOF(CrossSectionPositions);
	NoLongitudinalOffsets : SIZEOF(QUERY(temp <* CrossSectionPositions | EXISTS(temp.Location.OffsetLongitudinal))) = 0;
END_ENTITY;

8.8.3.35.6 参考文献