Item | SPF | XML | Change | Description | IFC4x3_RC1 to IFC4x3_RC2 |
---|---|---|---|---|
IfcSegmentedReferenceCurve | ADDED | IFC4x3_RC2 to IFC4x3_RC3 | ||
IfcSegmentedReferenceCurve | ||||
Segments | X | X | MODIFIED | Name changed from BaseCurve to Segments. Type changed from IfcBoundedCurve to IfcSegment. Aggregation changed from NONE to LIST. |
SelfIntersect | X | X | MODIFIED | Name changed from Segments to SelfIntersect. Type changed from IfcCurveSegment to IfcLogical. Aggregation changed from LIST to NONE. |
BaseCurve | X | X | MODIFIED | Name changed from EndPoint to BaseCurve. Type changed from IfcPlacement to IfcBoundedCurve. Instantiation changed from OPTIONAL. |
EndPoint | ADDED | |||
PositioningElement | DELETED |
A segmented reference curve is constructed from a referenced base curve (BaseCurve) that should in most cases (there can be exceptions) be used for positioning of a list of IfcCurveSegment occurrences. The type of the base curve that IfcCurveSegment references provides the information of the interpolation method between the start point of the segment and its end point defined by the segment length of the IfcCurveSegment.ParentCurve.
The parametrization of IfcSegmentReferenceCurve is based on the parametrization of BaseCurve and is not altered by the Segments.
Figure 527 shows a cross section of a IfcSegmentedReferenceCurve usage for an alignmnent representation featuring cant
Figure 527 — use of a segmented reference curve on a cant segment based on a gradient curve |
# | Attribute | Type | Cardinality | Description | G |
---|---|---|---|---|---|
3 | BaseCurve | IfcBoundedCurve | X | ||
4 | EndPoint | IfcPlacement | ? | X |
# | Attribute | Type | Cardinality | Description | G |
---|---|---|---|---|---|
IfcRepresentationItem | |||||
LayerAssignment | IfcPresentationLayerAssignment @AssignedItems | S[0:1] | Assignment of the representation item to a single or multiple layer(s). The LayerAssignments can override a LayerAssignments of the IfcRepresentation it is used within the list of Items.
IFC2x3 CHANGE The inverse attribute LayerAssignments has been added. IFC4 CHANGE The inverse attribute LayerAssignment has been restricted to max 1. Upward compatibility for file based exchange is guaranteed. | X | |
StyledByItem | IfcStyledItem @Item | S[0:1] | Reference to the IfcStyledItem that provides presentation information to the representation, e.g. a curve style, including colour and thickness to a geometric curve.
IFC2x3 CHANGE The inverse attribute StyledByItem has been added. | X | |
IfcGeometricRepresentationItem | |||||
IfcCurve | |||||
Dim :=IfcCurveDim(SELF) | IfcDimensionCount | The space dimensionality of this abstract class, defined differently for all subtypes, i.e. for IfcLine, IfcConic and IfcBoundedCurve. | X | ||
IfcBoundedCurve | |||||
IfcCompositeCurve | |||||
1 | Segments | IfcSegment | L[1:?] |
The component bounded curves, their transitions and senses. The transition attribute for the last segment defines the transition between the end of the last segment and the start of the first; this transition attribute may take the value discontinuous, which indicates an open curve.
NOTE : For IfcGradientCurve and IfcSegmentedReferenceCurve the segments define the interpolation between segment start and and segment end. | X |
2 | SelfIntersect | IfcLogical | Indication of whether the curve intersects itself or not; this is for information only. | X | |
NSegments :=SIZEOF(Segments) | IfcInteger | The number of component curves. | X | ||
ClosedCurve :=Segments[NSegments].Transition <> Discontinuous | IfcLogical | Indication whether the curve is closed or not; this is derived from the transition code of the last segment. | X | ||
IfcSegmentedReferenceCurve | |||||
3 | BaseCurve | IfcBoundedCurve | X | ||
4 | EndPoint | IfcPlacement | ? | X |
<xs:element name="IfcSegmentedReferenceCurve" type="ifc:IfcSegmentedReferenceCurve" substitutionGroup="ifc:IfcCompositeCurve" nillable="true"/>
<xs:complexType name="IfcSegmentedReferenceCurve">
<xs:complexContent>
<xs:extension base="ifc:IfcCompositeCurve">
<xs:sequence>
<xs:element name="BaseCurve" type="ifc:IfcBoundedCurve" nillable="true"/>
<xs:element name="EndPoint" type="ifc:IfcPlacement" nillable="true" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
ENTITY IfcSegmentedReferenceCurve
SUBTYPE OF (IfcCompositeCurve);
BaseCurve : IfcBoundedCurve;
EndPoint : OPTIONAL IfcPlacement;
END_ENTITY;