Alignment 2D Vertical Segment Parabolic Arc |
Item | SPF | XML | Change | Description | IFC4x1 Release Candidate 1 |
---|---|---|---|---|
IfcAlignment2DVerSegParabolicArc | ADDED | IFC4x1 Release Candidate 2 | ||
IfcAlignment2DVerSegParabolicArc | ||||
ToVertical | ADDED | IFC4x1 Release Candidate 3 | ||
IfcAlignment2DVerSegParabolicArc | ||||
LayerAssignment | ADDED | |||
StyledByItem | ADDED |
The vertical parabolic segment is defined as a parabola using the inherited attributes from IfcAlignment2DVerticalSegment and the following additional curve parameters ParabolaConstant as the minimum radius of the parabolic arc at its apex, and IsConvex to indicate the whether the parabolic arc defined a sag or a crest.
The parabolic arc is described by (see figure 1):
The following equations are used for any point along the parabola:
Legend: red: the parabolic curve with start point and calculated end point used as an vertical alignment yellow: the underlying unbounded parabola definition blue: the minimum circle defined by the parabola constant agreeing to the "is convex" fag, the constant, and the start gradient |
Figure 313 — Alignment vertical segment parabola convex |
start point provided by StartDistAlong and StartHeight instanteneous gradient provided by StartGradient, and length provided by HorizontalLength | |
Figure 314 — Alignment vertical parabolic arc segment convex |
start point provided by StartDistAlong and StartHeight instanteneous gradient provided by StartGradient, and length provided by HorizontalLength | |
Figure 314 — Alignment vertical parabolic arc segment concave |
# | Attribute | Type | Cardinality | Description | G |
---|---|---|---|---|---|
8 | ParabolaConstant | IfcPositiveLengthMeasure | Parabola constant (determining the “steepness” of the parabola). The parabola constant is provided by the “minimum parabola radius”, the true radius of a parabola at its vertical axis (the zero-gradient point of the parabola). The minimum radius is twice the focal length of the parabola (the distance between the focal point and the vertex). | X | |
9 | IsConvex | IfcBoolean | Orientation of the parabolic arc, convex (Boolean=”true”) means decreasing gradient along the arc at the beginning such as at the crest of a hill, concave (Boolean=”false”) means increasing gradient along the arc at the beginning such as at the base of a valley. | 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 | |||||
IfcAlignment2DSegment | |||||
1 | TangentialContinuity | IfcBoolean | ? | Connectivity between the continuous segments is not enforced per se to be tangential. Setting "TangentialContinuity" to True means that the current segment shall continue with tangential continuity to the previous one. | X |
2 | StartTag | IfcLabel | ? | Tag to annotate the start point of the alignment segment. | X |
3 | EndTag | IfcLabel | ? | Tag to annotate the end point of the alignment segment. | X |
IfcAlignment2DVerticalSegment | |||||
4 | StartDistAlong | IfcLengthMeasure | Distance along the horizontal alignment, measured along the IfcAlignment2DHorizontal given in the length unit of the global IfcUnitAssignment. | X | |
5 | HorizontalLength | IfcPositiveLengthMeasure | Length measured as distance along the horizontal alignment of the segment. | X | |
6 | 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 | |
7 | StartGradient | IfcRatioMeasure |
Gradient of the tangent of the vertical segment at the start point. It is provided as a ratio measure. The ratio is percentage/100 (0.1 is equal to 10%). It has a theoretical range of -∞ < n < ∞ using a ratio measure. The equivalent range measured in degree is -90° < n < 90°.
NOTE For practical application of start gradient, the range of the ratio measure should be within the limits of -1 ≤ n ≤ 1 (equivalent in degree -45° ≤ n ≤ 45°). However larger limits might apply for particular usages. Positive gradient means an increasing height at the start (or uphill), a negative gradient means decreasing height at the start (or downhill). | X | |
ToVertical | IfcAlignment2DVertical @Segments | S[1:1] | X | ||
IfcAlignment2DVerSegParabolicArc | |||||
8 | ParabolaConstant | IfcPositiveLengthMeasure | Parabola constant (determining the “steepness” of the parabola). The parabola constant is provided by the “minimum parabola radius”, the true radius of a parabola at its vertical axis (the zero-gradient point of the parabola). The minimum radius is twice the focal length of the parabola (the distance between the focal point and the vertex). | X | |
9 | IsConvex | IfcBoolean | Orientation of the parabolic arc, convex (Boolean=”true”) means decreasing gradient along the arc at the beginning such as at the crest of a hill, concave (Boolean=”false”) means increasing gradient along the arc at the beginning such as at the base of a valley. | X |
<xs:element name="IfcAlignment2DVerSegParabolicArc" type="ifc:IfcAlignment2DVerSegParabolicArc" substitutionGroup="ifc:IfcAlignment2DVerticalSegment" nillable="true"/>
<xs:complexType name="IfcAlignment2DVerSegParabolicArc">
<xs:complexContent>
<xs:extension base="ifc:IfcAlignment2DVerticalSegment">
<xs:attribute name="ParabolaConstant" type="ifc:IfcPositiveLengthMeasure" use="optional"/>
<xs:attribute name="IsConvex" type="ifc:IfcBoolean" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
ENTITY IfcAlignment2DVerSegParabolicArc
SUBTYPE OF (IfcAlignment2DVerticalSegment);
ParabolaConstant : IfcPositiveLengthMeasure;
IsConvex : IfcBoolean;
END_ENTITY;