Alignment 2D Vertical Segment |
Item | SPF | XML | Change | Description | IFC4x3_RC1 to IFC4x3_RC2 |
---|---|---|---|---|
IfcAlignmentVerticalSegment | MODIFIED | Name changed from IfcAlignment2DVerticalSegment to IfcAlignmentVerticalSegment. Instantiation changed from ABSTRACT. | ||
StartTag | X | X | MODIFIED | Name changed from TangentialContinuity to StartTag. Type changed from IfcBoolean to IfcLabel. |
EndTag | X | MODIFIED | Name changed from StartTag to EndTag. | |
StartDistAlong | X | X | MODIFIED | Name changed from EndTag to StartDistAlong. Type changed from IfcLabel to IfcLengthMeasure. Instantiation changed from OPTIONAL. |
HorizontalLength | MODIFIED | Name changed from StartDistAlong to HorizontalLength. Type changed from IfcLengthMeasure to IfcPositiveLengthMeasure. | ||
StartHeight | X | X | MODIFIED | Name changed from HorizontalLength to StartHeight. Type changed from IfcPositiveLengthMeasure to IfcLengthMeasure. |
StartGradient | X | MODIFIED | Name changed from StartHeight to StartGradient. | |
EndGradient | MODIFIED | Name changed from StartGradient to EndGradient. Type changed from IfcRatioMeasure to IfcLengthMeasure. | ||
RadiusOfCurvature | ADDED | |||
PredefinedType | ADDED | |||
LayerAssignment | DELETED | |||
StyledByItem | DELETED | |||
ToVertical | DELETED | IFC4x3_RC3 to IFC4x3_RC4 | ||
IfcAlignmentVerticalSegment | ||||
HorizontalLength | MODIFIED | Type changed from IfcPositiveLengthMeasure to IfcNonNegativeLengthMeasure. | ||
RadiusOfCurvature | X | X | MODIFIED | Type changed from IfcPositiveLengthMeasure to IfcLengthMeasure. |
Individual segment along the IfcAlignmentVertical, being defined in the distance-along/z coordinate space.
The vertical alignment is defined by segments that connects end-to-start. The vertical alignment curve geometry is defined in a plane with x = distance along horizontal, the y = height (or elevation). The transition at the segment connection is not enforced to be tangential, The IfcSegment Transition enumeration specifies the type of transition explicitly.
The following vertical segment types are defined:
For each vertical segment, the following non-redundant information is provided:
The following information can be calculated (and is therefore not exchanged explicitly to avoid redundancy and inconsistencies)
The following checks can be done to validate the correct exchange:
NOTE Specific subtypes of the IfcAlignmentVerticalSegment add specific geometric curve parameters. Connectivity between vertical segments is not necessarily tangential, but this can be enforced as a requirement through the attribute TangentialContinuity.
Figure 463 — Alignment vertical segment |
# | Attribute | Type | Cardinality | Description | G |
---|---|---|---|---|---|
3 | StartDistAlong | IfcLengthMeasure |
Distance along the horizontal alignment as measured along the corresponding IfcAlignmentHorizontal.
NOTE 1 The distance along is measured from the start point of IfcAlignmentHorizontal, any optionally provided offset expressed by IfcAlignmentHorizontal.StartDistanceAlong is not taken into account. NOTE 2 The unit of measurement is the global length unit, as set by IfcContext.UnitInContext | X | |
4 | HorizontalLength | IfcNonNegativeLengthMeasure | Length measured as distance along the horizontal alignment of the segment. | X | |
5 | StartHeight | IfcLengthMeasure |
Elevation in Z of the start point relative to the IfcAlignment coordinate system.
NOTE It is strongly advised to not offset the IfcAlignment coordinate system from the project engineering coordinate system. | X | |
6 | StartGradient | IfcRatioMeasure | Start gradient of the segment. | X | |
7 | EndGradient | IfcRatioMeasure | End gradient of the segment. In the case of a PredefinedType='.CONSTANTGRADIENT.' the value is the same as StartGradient. | X | |
8 | RadiusOfCurvature | IfcLengthMeasure | ? |
Radius of parabola or arc. Positive values imply a CCW direction whereas negative CW.
NOTE1 For PredefinedType is ARC. The radius of the basis circle for the arc. | X |
9 | PredefinedType | IfcAlignmentVerticalSegmentTypeEnum | Predefined type of the vertical alignmnent segment. | X |
# | Attribute | Type | Cardinality | Description | G |
---|---|---|---|---|---|
IfcAlignmentParameterSegment | |||||
1 | StartTag | IfcLabel | ? | Tag to annotate the start point of the alignment segment. | X |
2 | EndTag | IfcLabel | ? | Tag to annotate the end point of the alignment segment. | X |
IfcAlignmentVerticalSegment | |||||
3 | StartDistAlong | IfcLengthMeasure |
Distance along the horizontal alignment as measured along the corresponding IfcAlignmentHorizontal.
NOTE 1 The distance along is measured from the start point of IfcAlignmentHorizontal, any optionally provided offset expressed by IfcAlignmentHorizontal.StartDistanceAlong is not taken into account. NOTE 2 The unit of measurement is the global length unit, as set by IfcContext.UnitInContext | X | |
4 | HorizontalLength | IfcNonNegativeLengthMeasure | Length measured as distance along the horizontal alignment of the segment. | X | |
5 | StartHeight | IfcLengthMeasure |
Elevation in Z of the start point relative to the IfcAlignment coordinate system.
NOTE It is strongly advised to not offset the IfcAlignment coordinate system from the project engineering coordinate system. | X | |
6 | StartGradient | IfcRatioMeasure | Start gradient of the segment. | X | |
7 | EndGradient | IfcRatioMeasure | End gradient of the segment. In the case of a PredefinedType='.CONSTANTGRADIENT.' the value is the same as StartGradient. | X | |
8 | RadiusOfCurvature | IfcLengthMeasure | ? |
Radius of parabola or arc. Positive values imply a CCW direction whereas negative CW.
NOTE1 For PredefinedType is ARC. The radius of the basis circle for the arc. | X |
9 | PredefinedType | IfcAlignmentVerticalSegmentTypeEnum | Predefined type of the vertical alignmnent segment. | X |
<xs:element name="IfcAlignmentVerticalSegment" type="ifc:IfcAlignmentVerticalSegment" substitutionGroup="ifc:IfcAlignmentParameterSegment" nillable="true"/>
<xs:complexType name="IfcAlignmentVerticalSegment">
<xs:complexContent>
<xs:extension base="ifc:IfcAlignmentParameterSegment">
<xs:attribute name="StartDistAlong" type="ifc:IfcLengthMeasure" use="optional"/>
<xs:attribute name="HorizontalLength" type="ifc:IfcNonNegativeLengthMeasure" use="optional"/>
<xs:attribute name="StartHeight" type="ifc:IfcLengthMeasure" use="optional"/>
<xs:attribute name="StartGradient" type="ifc:IfcRatioMeasure" use="optional"/>
<xs:attribute name="EndGradient" type="ifc:IfcRatioMeasure" use="optional"/>
<xs:attribute name="RadiusOfCurvature" type="ifc:IfcLengthMeasure" use="optional"/>
<xs:attribute name="PredefinedType" type="ifc:IfcAlignmentVerticalSegmentTypeEnum" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
ENTITY IfcAlignmentVerticalSegment
SUBTYPE OF (IfcAlignmentParameterSegment);
StartDistAlong : IfcLengthMeasure;
HorizontalLength : IfcNonNegativeLengthMeasure;
StartHeight : IfcLengthMeasure;
StartGradient : IfcRatioMeasure;
EndGradient : IfcRatioMeasure;
RadiusOfCurvature : OPTIONAL IfcLengthMeasure;
PredefinedType : IfcAlignmentVerticalSegmentTypeEnum;
END_ENTITY;