4.1.4.4.1.1 Alignment Layout - Horizontal, Vertical and Cant
Nesting relationships between IfcAlignment and the three layouts, with respective segments, that may define it (i.e., IfcAlignmentHorizontal , IfcAlignmentVerticalSegment , IfcAlignmentCant ).
When defining the list of segments for the business logic (i.e., IfcAlignmentHorizontalSegment , IfcAlignmentVerticalSegment , IfcAlignmentCantSegment ):
A zero-length segment shall be added, at the end of the list of segments for IfcAlignmentSegment .DesignParameters .
If the geometry definition is also present, then each of the zero-length segments shall have a IfcCurveSegment counterpart - of length zero.
The following diagram shows the generic classes and relationships used when applying this concept.
In addition, concepts may have particular importance to common or standardised industry practices and scenarios. For these specific usage scenarios, the table below shows a recommended list of general usage patterns that users may adopt.
G
<a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignment.htm'>IfcAlignment</a>
IfcAlignment
1. GlobalId
[1:1]
2. OwnerHistory
[0:1]
3. Name
[0:1]
4. Description
[0:1]
HasAssignments
[0:?]
Nests
[0:1]
IsNestedBy
[0:?]
HasContext
[0:1]
IsDecomposedBy
[0:?]
Decomposes
[0:1]
HasAssociations
[0:?]
5. ObjectType
[0:1]
IsDeclaredBy
[0:1]
Declares
[0:?]
IsTypedBy
[0:1]
IsDefinedBy
[0:?]
6. ObjectPlacement
[0:1]
7. Representation
[0:1]
ReferencedBy
[0:?]
PositionedRelativeTo
[0:?]
ReferencedInStructures
[0:?]
ContainedInStructure
[0:1]
Positions
[0:?]
8. PredefinedType
[0:1]
IfcRelNests_0
IfcRelNests
1. GlobalId
[1:1]
2. OwnerHistory
[0:1]
3. Name
[0:1]
4. Description
[0:1]
5. RelatingObject
[1:1]
6. RelatedObjects
[1:?]
<a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignment.htm'>IfcAlignment</a>:IsNestedBy1->IfcRelNests_0:RelatingObject0
<a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignmentHorizontal.htm'>IfcAlignmentHorizontal</a>
IfcAlignmentHorizontal
1. GlobalId
[1:1]
2. OwnerHistory
[0:1]
3. Name
[0:1]
4. Description
[0:1]
HasAssignments
[0:?]
Nests
[0:1]
IsNestedBy
[0:?]
HasContext
[0:1]
IsDecomposedBy
[0:?]
Decomposes
[0:1]
HasAssociations
[0:?]
5. ObjectType
[0:1]
IsDeclaredBy
[0:1]
Declares
[0:?]
IsTypedBy
[0:1]
IsDefinedBy
[0:?]
6. ObjectPlacement
[0:1]
7. Representation
[0:1]
ReferencedBy
[0:?]
PositionedRelativeTo
[0:?]
ReferencedInStructures
[0:?]
IfcRelNests_0:RelatedObjects1-><a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignmentHorizontal.htm'>IfcAlignmentHorizontal</a>:IfcAlignmentHorizontal0
<a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignmentVertical.htm'>IfcAlignmentVertical</a>
IfcAlignmentVertical
1. GlobalId
[1:1]
2. OwnerHistory
[0:1]
3. Name
[0:1]
4. Description
[0:1]
HasAssignments
[0:?]
Nests
[0:1]
IsNestedBy
[0:?]
HasContext
[0:1]
IsDecomposedBy
[0:?]
Decomposes
[0:1]
HasAssociations
[0:?]
5. ObjectType
[0:1]
IsDeclaredBy
[0:1]
Declares
[0:?]
IsTypedBy
[0:1]
IsDefinedBy
[0:?]
6. ObjectPlacement
[0:1]
7. Representation
[0:1]
ReferencedBy
[0:?]
PositionedRelativeTo
[0:?]
ReferencedInStructures
[0:?]
IfcRelNests_0:RelatedObjects1-><a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignmentVertical.htm'>IfcAlignmentVertical</a>:IfcAlignmentVertical0
<a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignmentCant.htm'>IfcAlignmentCant</a>
IfcAlignmentCant
1. GlobalId
[1:1]
2. OwnerHistory
[0:1]
3. Name
[0:1]
4. Description
[0:1]
HasAssignments
[0:?]
Nests
[0:1]
IsNestedBy
[0:?]
HasContext
[0:1]
IsDecomposedBy
[0:?]
Decomposes
[0:1]
HasAssociations
[0:?]
5. ObjectType
[0:1]
IsDeclaredBy
[0:1]
Declares
[0:?]
IsTypedBy
[0:1]
IsDefinedBy
[0:?]
6. ObjectPlacement
[0:1]
7. Representation
[0:1]
ReferencedBy
[0:?]
PositionedRelativeTo
[0:?]
ReferencedInStructures
[0:?]
8. RailHeadDistance
[1:1]
IfcRelNests_0:RelatedObjects1-><a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignmentCant.htm'>IfcAlignmentCant</a>:IfcAlignmentCant0
IfcRelNests_1
IfcRelNests
1. GlobalId
[1:1]
2. OwnerHistory
[0:1]
3. Name
[0:1]
4. Description
[0:1]
5. RelatingObject
[1:1]
6. RelatedObjects
[1:?]
<a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignmentHorizontal.htm'>IfcAlignmentHorizontal</a>:IsNestedBy1->IfcRelNests_1:RelatingObject0
IfcRelNests_2
IfcRelNests
1. GlobalId
[1:1]
2. OwnerHistory
[0:1]
3. Name
[0:1]
4. Description
[0:1]
5. RelatingObject
[1:1]
6. RelatedObjects
[1:?]
<a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignmentVertical.htm'>IfcAlignmentVertical</a>:IsNestedBy1->IfcRelNests_2:RelatingObject0
IfcRelNests_3
IfcRelNests
1. GlobalId
[1:1]
2. OwnerHistory
[0:1]
3. Name
[0:1]
4. Description
[0:1]
5. RelatingObject
[1:1]
6. RelatedObjects
[1:?]
<a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignmentCant.htm'>IfcAlignmentCant</a>:IsNestedBy1->IfcRelNests_3:RelatingObject0
IfcAlignmentSegment_0
IfcAlignmentSegment
1. GlobalId
[1:1]
2. OwnerHistory
[0:1]
3. Name
[0:1]
4. Description
[0:1]
HasAssignments
[0:?]
Nests
[0:1]
IsNestedBy
[0:?]
HasContext
[0:1]
IsDecomposedBy
[0:?]
Decomposes
[0:1]
HasAssociations
[0:?]
5. ObjectType
[0:1]
IsDeclaredBy
[0:1]
Declares
[0:?]
IsTypedBy
[0:1]
IsDefinedBy
[0:?]
6. ObjectPlacement
[0:1]
7. Representation
[0:1]
ReferencedBy
[0:?]
PositionedRelativeTo
[0:?]
ReferencedInStructures
[0:?]
8. DesignParameters
[1:1]
IfcRelNests_1:RelatedObjects1->IfcAlignmentSegment_0:IfcAlignmentSegment0
<a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignmentHorizontalSegment.htm'>IfcAlignmentHorizontalSegment</a>
IfcAlignmentHorizontalSegment
1. StartTag
[0:1]
2. EndTag
[0:1]
3. StartPoint
[1:1]
4. StartDirection
[1:1]
5. StartRadiusOfCurvature
[1:1]
6. EndRadiusOfCurvature
[1:1]
7. SegmentLength
[1:1]
8. GravityCenterLineHeight
[0:1]
9. PredefinedType
[1:1]
IfcAlignmentSegment_0:DesignParameters1-><a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignmentHorizontalSegment.htm'>IfcAlignmentHorizontalSegment</a>:IfcAlignmentHorizontalSegment0
IfcAlignmentSegment_1
IfcAlignmentSegment
1. GlobalId
[1:1]
2. OwnerHistory
[0:1]
3. Name
[0:1]
4. Description
[0:1]
HasAssignments
[0:?]
Nests
[0:1]
IsNestedBy
[0:?]
HasContext
[0:1]
IsDecomposedBy
[0:?]
Decomposes
[0:1]
HasAssociations
[0:?]
5. ObjectType
[0:1]
IsDeclaredBy
[0:1]
Declares
[0:?]
IsTypedBy
[0:1]
IsDefinedBy
[0:?]
6. ObjectPlacement
[0:1]
7. Representation
[0:1]
ReferencedBy
[0:?]
PositionedRelativeTo
[0:?]
ReferencedInStructures
[0:?]
8. DesignParameters
[1:1]
IfcRelNests_2:RelatedObjects1->IfcAlignmentSegment_1:IfcAlignmentSegment0
<a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignmentVerticalSegment.htm'>IfcAlignmentVerticalSegment</a>
IfcAlignmentVerticalSegment
1. StartTag
[0:1]
2. EndTag
[0:1]
3. StartDistAlong
[1:1]
4. HorizontalLength
[1:1]
5. StartHeight
[1:1]
6. StartGradient
[1:1]
7. EndGradient
[1:1]
8. RadiusOfCurvature
[0:1]
9. PredefinedType
[1:1]
IfcAlignmentSegment_1:DesignParameters1-><a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignmentVerticalSegment.htm'>IfcAlignmentVerticalSegment</a>:IfcAlignmentVerticalSegment0
IfcAlignmentSegment_2
IfcAlignmentSegment
1. GlobalId
[1:1]
2. OwnerHistory
[0:1]
3. Name
[0:1]
4. Description
[0:1]
HasAssignments
[0:?]
Nests
[0:1]
IsNestedBy
[0:?]
HasContext
[0:1]
IsDecomposedBy
[0:?]
Decomposes
[0:1]
HasAssociations
[0:?]
5. ObjectType
[0:1]
IsDeclaredBy
[0:1]
Declares
[0:?]
IsTypedBy
[0:1]
IsDefinedBy
[0:?]
6. ObjectPlacement
[0:1]
7. Representation
[0:1]
ReferencedBy
[0:?]
PositionedRelativeTo
[0:?]
ReferencedInStructures
[0:?]
8. DesignParameters
[1:1]
IfcRelNests_3:RelatedObjects1->IfcAlignmentSegment_2:IfcAlignmentSegment0
<a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignmentCantSegment.htm'>IfcAlignmentCantSegment</a>
IfcAlignmentCantSegment
1. StartTag
[0:1]
2. EndTag
[0:1]
3. StartDistAlong
[1:1]
4. HorizontalLength
[1:1]
5. StartCantLeft
[1:1]
6. EndCantLeft
[0:1]
7. StartCantRight
[1:1]
8. EndCantRight
[0:1]
9. PredefinedType
[1:1]
IfcAlignmentSegment_2:DesignParameters1-><a href='/IFC/RELEASE/IFC4x3/HTML/lexical/IfcAlignmentCantSegment.htm'>IfcAlignmentCantSegment</a>:IfcAlignmentCantSegment0
Figure 4.1.4.4.1.1.A
General UsageTable 4.1.4.4.1.1.B