Alignment Curve 2D Horizontal Segment |
Item | SPF | XML | Change | Description | IFC4x3_RC1 to IFC4x3_RC2 |
---|---|---|---|---|
IfcAlignmentHorizontalSegment | MODIFIED | Name changed from IfcAlignment2DHorizontalSegment to IfcAlignmentHorizontalSegment. | ||
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. | |
StartPoint | X | X | MODIFIED | Name changed from EndTag to StartPoint. Type changed from IfcLabel to IfcCartesianPoint. Instantiation changed from OPTIONAL. |
StartDirection | X | X | MODIFIED | Name changed from CurveGeometry to StartDirection. Type changed from IfcCurveSegment2D to IfcPlaneAngleMeasure. |
StartRadiusOfCurvature | ADDED | |||
EndRadiusOfCurvature | ADDED | |||
SegmentLength | ADDED | |||
GravityCenterLineHeight | ADDED | |||
PredefinedType | ADDED | |||
LayerAssignment | DELETED | |||
StyledByItem | DELETED | |||
ToHorizontal | DELETED | IFC4x3_RC2 to IFC4x3_RC3 | ||
IfcAlignmentHorizontalSegment | ||||
SegmentLength | MODIFIED | Type changed from IfcPositiveLengthMeasure to IfcNonNegativeLengthMeasure. |
Individual segment along the IfcAlignmentHorizontal, being defined in the x/y coordinate space. Each single horizontal alignment segment has an optional associated segment definition. The placement of IfcAlignmentHorizontalSegment and the IfcCurveSegment StartPlacement correspond to each other.
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:
# | Attribute | Type | Cardinality | Description | G |
---|---|---|---|---|---|
3 | StartPoint | IfcCartesianPoint | The start point of the segment defined by a Cartesian point. | X | |
4 | StartDirection | IfcPlaneAngleMeasure | The direction of the tangent at the start point. Direction value 0. indicates a curve with a start tangent along the positive x-axis. Values increases counter-clockwise, and decreases clockwise. Depending on the plane angle unit, either degree or radians, the sensible range is -360° ≤ n ≤ 360° (or -2π ≤ n ≤ 2π). Values larger then a full circle (>|360°| or >|2 π| shall not be used. | X | |
5 | StartRadiusOfCurvature | IfcLengthMeasure | For a NONLINEAR horizontal segment type the radius of the curve at the start point (Placement of the segment). For CIRCULAR type it is constant i.e. StartRadiusOfCurvature and EndRadiusOfCurvature are always the same. For LINE type, both StartRadiusOfCurvature and EndRadiusOfCurvature is 0. If the radius is 0 it shall be interpreted as INFINITE. Positive values imply a CCW direction whereas negative CW. | X | |
6 | EndRadiusOfCurvature | IfcLengthMeasure | For a NONLINEAR horizontal segment type the radius of the curve at the end point. If the radius is 0 it shall be interpreted as INFINITE. Positive values imply a CCW direction whereas negative CW. | X | |
7 | SegmentLength | IfcNonNegativeLengthMeasure | The length along the curve. | X | |
8 | GravityCenterLineHeight | IfcPositiveLengthMeasure | ? | Optional attribute require for the exchange of Vienna bend transition segment. | X |
9 | PredefinedType | IfcAlignmentHorizontalSegmentTypeEnum | Predefined type of the horizontal 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 |
IfcAlignmentHorizontalSegment | |||||
3 | StartPoint | IfcCartesianPoint | The start point of the segment defined by a Cartesian point. | X | |
4 | StartDirection | IfcPlaneAngleMeasure | The direction of the tangent at the start point. Direction value 0. indicates a curve with a start tangent along the positive x-axis. Values increases counter-clockwise, and decreases clockwise. Depending on the plane angle unit, either degree or radians, the sensible range is -360° ≤ n ≤ 360° (or -2π ≤ n ≤ 2π). Values larger then a full circle (>|360°| or >|2 π| shall not be used. | X | |
5 | StartRadiusOfCurvature | IfcLengthMeasure | For a NONLINEAR horizontal segment type the radius of the curve at the start point (Placement of the segment). For CIRCULAR type it is constant i.e. StartRadiusOfCurvature and EndRadiusOfCurvature are always the same. For LINE type, both StartRadiusOfCurvature and EndRadiusOfCurvature is 0. If the radius is 0 it shall be interpreted as INFINITE. Positive values imply a CCW direction whereas negative CW. | X | |
6 | EndRadiusOfCurvature | IfcLengthMeasure | For a NONLINEAR horizontal segment type the radius of the curve at the end point. If the radius is 0 it shall be interpreted as INFINITE. Positive values imply a CCW direction whereas negative CW. | X | |
7 | SegmentLength | IfcNonNegativeLengthMeasure | The length along the curve. | X | |
8 | GravityCenterLineHeight | IfcPositiveLengthMeasure | ? | Optional attribute require for the exchange of Vienna bend transition segment. | X |
9 | PredefinedType | IfcAlignmentHorizontalSegmentTypeEnum | Predefined type of the horizontal alignmnent segment. | X |
<xs:element name="IfcAlignmentHorizontalSegment" type="ifc:IfcAlignmentHorizontalSegment" substitutionGroup="ifc:IfcAlignmentParameterSegment" nillable="true"/>
<xs:complexType name="IfcAlignmentHorizontalSegment">
<xs:complexContent>
<xs:extension base="ifc:IfcAlignmentParameterSegment">
<xs:sequence>
<xs:element name="StartPoint" type="ifc:IfcCartesianPoint" nillable="true"/>
</xs:sequence>
<xs:attribute name="StartDirection" type="ifc:IfcPlaneAngleMeasure" use="optional"/>
<xs:attribute name="StartRadiusOfCurvature" type="ifc:IfcLengthMeasure" use="optional"/>
<xs:attribute name="EndRadiusOfCurvature" type="ifc:IfcLengthMeasure" use="optional"/>
<xs:attribute name="SegmentLength" type="ifc:IfcNonNegativeLengthMeasure" use="optional"/>
<xs:attribute name="GravityCenterLineHeight" type="ifc:IfcPositiveLengthMeasure" use="optional"/>
<xs:attribute name="PredefinedType" type="ifc:IfcAlignmentHorizontalSegmentTypeEnum" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
ENTITY IfcAlignmentHorizontalSegment
SUBTYPE OF (IfcAlignmentParameterSegment);
StartPoint : IfcCartesianPoint;
StartDirection : IfcPlaneAngleMeasure;
StartRadiusOfCurvature : IfcLengthMeasure;
EndRadiusOfCurvature : IfcLengthMeasure;
SegmentLength : IfcNonNegativeLengthMeasure;
GravityCenterLineHeight : OPTIONAL IfcPositiveLengthMeasure;
PredefinedType : IfcAlignmentHorizontalSegmentTypeEnum;
END_ENTITY;