Definition from IAI: The open profile IfcArbitraryOpenProfileDef defines an arbitrary two-dimensional open profile for the use within the swept surface geometry. It is given by an open boundary from with the surface can be constructed.
HISTORY: New entity in IFC Release 2x.
Informal proposition:
Illustration:
Table: Definition of arbitrary open profile definition
# | Attribute | Type | Cardinality | Description | A |
---|---|---|---|---|---|
3 | Curve | IfcBoundedCurve | [1:1] | Open bounded curve defining the profile. | X |
Rule | Description |
---|---|
WR11 |
The profile type is a .CURVE., an open profile can only be used to define a swept surface.
Note6nbsp; This does not apply to the subtype IfcCentreLineProfileDef. |
WR12 | The dimensionality of the curve shall be 2. |
# | Attribute | Type | Cardinality | Description | A |
---|---|---|---|---|---|
IfcProfileDef | |||||
1 | ProfileType | IfcProfileTypeEnum | [1:1] | Defines the type of geometry into which this profile definition shall be resolved, either a curve or a surface area. In case of curve the profile should be referenced by a swept surface, in case of area the profile should be referenced by a swept area solid. | X |
2 | ProfileName | - | This attribute is out of scope for this model view definition and shall not be set. | ||
IfcArbitraryOpenProfileDef | |||||
3 | Curve | IfcBoundedCurve | [1:1] | Open bounded curve defining the profile. | X |
<xs:element name="IfcArbitraryOpenProfileDef" type="ifc:IfcArbitraryOpenProfileDef" substitutionGroup="ifc:IfcProfileDef" nillable="true"/>
<xs:complexType name="IfcArbitraryOpenProfileDef">
<xs:complexContent>
<xs:extension base="ifc:IfcProfileDef">
<xs:sequence>
<xs:element name="Curve" type="ifc:IfcBoundedCurve" nillable="true"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
ENTITY IfcArbitraryOpenProfileDef
SUPERTYPE OF(IfcCenterLineProfileDef)
SUBTYPE OF (IfcProfileDef);
Curve : IfcBoundedCurve;
WHERE
WR11 : ('IFCPROFILERESOURCE.IFCCENTERLINEPROFILEDEF' IN TYPEOF(SELF)) OR
(SELF\IfcProfileDef.ProfileType = IfcProfileTypeEnum.CURVE);
WR12 : Curve.Dim = 2;
END_ENTITY;