8.15.3.9 IfcCompositeProfileDef(复合轮廓定义)
8.15.3.9.1 语义定义(Semantic definition)
IfcCompositeProfileDef 通过组合其他轮廓来定义轮廓。该组合由至少两个其他轮廓定义组成。任何轮廓定义(除其他复合轮廓外)均可用于构建复合轮廓。
图314展示了复合轮廓定义。IfcCompositeProfileDef 不定义自身的位置坐标系,而是直接在基础坐标系中定义。基础坐标系由使用该轮廓定义的扫描曲面或扫描实体定义。它是以下任一情况的xy平面:
- IfcSweptSurface.Position
- IfcSweptAreaSolid.Position
或在截面脊线情况下,它是 IfcSectionedSpine.CrossSectionPositions 每个列表成员的xy平面。IfcCompositeProfileDef 使用其他轮廓定义进行定义。这些其他轮廓定义直接插入基础坐标系中。
- 对于参数化轮廓定义,这些标准轮廓的 Position 属性用于相对放置各个轮廓。
- 对于任意轮廓定义,每个笛卡尔坐标直接在基础坐标系中给出。

双轮廓特殊情况
如果通过轮廓组合对双轮廓进行建模,基轮廓应仅指定一次。然后通过 IfcMirroredProfileDef 直接包含在复合轮廓中,并间接附加包含。例如,由两个L100x10角钢组成、中间有10mm空气间隙的双角钢,即 | | 形状,可建模为:
```
single_L : IfcLShapeProfileDef := IfcLShapeProfileDef(AREA, 'L100X100X10', IfcAxis2Placement2D(IfcCartesianPoint(((.100+.010)/2., .0)), ?), .100, .100, .010, .012, ?, 0., ?, ?);
double_L : IfcCompositeProfileDef := IfcCompositeProfileDef(AREA, 'double angle', (single_L, IfcMirroredProfileDef(AREA, ?, single_L, ?)), 'twin profile');
```
8.15.3.9.2 实体继承(Entity inheritance)
8.15.3.9.3 特性(Attributes)
| # | 特性(Attributes) | 类型 | 描述 |
|---|---|---|---|
| IfcProfileDef (4) | |||
| 1 | ProfileType | IfcProfileTypeEnum |
定义此轮廓定义应解析的几何类型,是曲线还是曲面区域。如果是曲线,轮廓应由扫描曲面引用;如果是区域,轮廓应由扫描实体引用。 |
| 2 | ProfileName | OPTIONAL IfcLabel |
轮廓的人类可读名称,例如根据标准轮廓表。如上所述,机器可读的标准轮廓名称应在 IfcExternalReference.ItemReference 中提供。 |
| HasExternalReference | SET [0:?] OF IfcExternalReferenceRelationship FOR RelatedResourceObjects |
与轮廓关联的外部信息(例如库、分类或文档信息)的引用。 |
|
| HasProperties | SET [0:?] OF IfcProfileProperties FOR ProfileDefinition |
轮廓的附加属性,例如机械属性。 |
|
| 点击显示 4 个隐藏的继承特性 点击隐藏 4 个继承特性 | |||
| IfcCompositeProfileDef (2) | |||
| 3 | Profiles | SET [2:?] OF IfcProfileDef |
用于定义复合轮廓的轮廓集合。 |
| 4 | Label | OPTIONAL IfcLabel |
可用于引用该组合的名称。名称的实际含义需在应用上下文中定义。 |
8.15.3.9.4 形式化命题(Formal propositions)
| 名称 | 描述 |
|---|---|
| InvariantProfileType |
所有轮廓必须均为面积轮廓或均为曲线轮廓。 |
|
|
| NoRecursion |
复合轮廓不应包含其他复合轮廓,即不允许递归定义。 |
|
|
8.15.3.9.5 属性集
-
Pset_ProfileMechanical
- MassPerLength
- CrossSectionArea
- Perimeter
- MinimumPlateThickness
- MaximumPlateThickness
- CentreOfGravityInX
- CentreOfGravityInY
- ShearCentreZ
- ShearCentreY
- MomentOfInertiaY
- MomentOfInertiaZ
- MomentOfInertiaYZ
- TorsionalConstantX
- WarpingConstant
- ShearDeformationAreaZ
- ShearDeformationAreaY
- MaximumSectionModulusY
- MinimumSectionModulusY
- MaximumSectionModulusZ
- MinimumSectionModulusZ
- TorsionalSectionModulus
- ShearAreaZ
- ShearAreaY
- PlasticShapeFactorY
- PlasticShapeFactorZ
8.15.3.9.6 概念用法(Concept usage)
8.15.3.9.7 形式化表示(Formal representation)
ENTITY IfcCompositeProfileDef
SUBTYPE OF (IfcProfileDef);
Profiles : SET [2:?] OF IfcProfileDef;
Label : OPTIONAL IfcLabel;
WHERE
InvariantProfileType : SIZEOF(QUERY(temp <* Profiles | temp.ProfileType <> Profiles[1].ProfileType)) = 0;
NoRecursion : SIZEOF(QUERY(temp <* Profiles | 'IFC4X3_DEV_62887e3f.IFCCOMPOSITEPROFILEDEF' IN TYPEOF(temp))) = 0;
END_ENTITY;