4.1.4.3.2 Element Openings
Elements may have openings (geometric voids) defined, which may be a partial recess or extend the full depth. Openings may optionally be filled by another element such as a door or window.
The 'Body' representation of an element does not account for voids, for which CSG operations are required to produce the resulting shape.
The 'Mesh' representation of an element does account for voids, such that no additional operations are required.
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 tables below shows a recommended list of general usage patterns that users may adopt.
G
IfcElement
IfcElement
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. Tag
[0:1]
FillsVoids
[0:1]
ConnectedTo
[0:?]
IsInterferedByElements
[0:?]
InterferesElements
[0:?]
HasProjections
[0:?]
HasOpenings
HasOpenings
[0:?]
IsConnectionRealization
[0:?]
ProvidesBoundaries
[0:?]
ConnectedFrom
[0:?]
ContainedInStructure
[0:1]
HasCoverings
[0:?]
HasSurfaceFeatures
[0:?]
IfcRelVoidsElement
IfcRelVoidsElement
1. GlobalId
[1:1]
2. OwnerHistory
[0:1]
3. Name
[0:1]
4. Description
[0:1]
5. RelatingBuildingElement
[1:1]
RelatedOpeningElement
6. RelatedOpeningElement
[1:1]
IfcElement :HasOpenings1->IfcRelVoidsElement :RelatingBuildingElement0
IfcOpeningElement
IfcOpeningElement
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. Tag
[0:1]
FillsVoids
FillsVoids
[0:1]
ConnectedTo
[0:?]
IsInterferedByElements
[0:?]
InterferesElements
[0:?]
HasProjections
[0:?]
HasOpenings
[0:?]
IsConnectionRealization
[0:?]
ProvidesBoundaries
[0:?]
ConnectedFrom
[0:?]
ContainedInStructure
[0:1]
HasCoverings
[0:?]
HasSurfaceFeatures
[0:?]
VoidsElements
[1:1]
OpeningElementType
9. PredefinedType
[0:1]
HasFillings
[0:?]
IfcRelVoidsElement :RelatedOpeningElement1->IfcOpeningElement :IfcOpeningElement0
IfcOpeningElementTypeEnum
IfcOpeningElementTypeEnum
IfcOpeningElement :PredefinedType1->IfcOpeningElementTypeEnum :IfcOpeningElementTypeEnum0
IfcRelFillsElement
IfcRelFillsElement
1. GlobalId
[1:1]
2. OwnerHistory
[0:1]
3. Name
[0:1]
4. Description
[0:1]
5. RelatingOpeningElement
[1:1]
RelatedBuiltElement
6. RelatedBuildingElement
[1:1]
IfcOpeningElement :FillsVoids1->IfcRelFillsElement :RelatedBuildingElement0
IfcDoor
IfcDoor
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. Tag
[0:1]
FillsVoids
[0:1]
ConnectedTo
[0:?]
IsInterferedByElements
[0:?]
InterferesElements
[0:?]
HasProjections
[0:?]
HasOpenings
[0:?]
IsConnectionRealization
[0:?]
ProvidesBoundaries
[0:?]
ConnectedFrom
[0:?]
ContainedInStructure
[0:1]
HasCoverings
[0:?]
HasSurfaceFeatures
[0:?]
9. OverallHeight
[0:1]
10. OverallWidth
[0:1]
11. PredefinedType
[0:1]
12. OperationType
[0:1]
13. UserDefinedOperationType
[0:1]
IfcRelFillsElement :RelatedBuildingElement1->IfcDoor :IfcDoor0
IfcWindow
IfcWindow
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. Tag
[0:1]
FillsVoids
[0:1]
ConnectedTo
[0:?]
IsInterferedByElements
[0:?]
InterferesElements
[0:?]
HasProjections
[0:?]
HasOpenings
[0:?]
IsConnectionRealization
[0:?]
ProvidesBoundaries
[0:?]
ConnectedFrom
[0:?]
ContainedInStructure
[0:1]
HasCoverings
[0:?]
HasSurfaceFeatures
[0:?]
9. OverallHeight
[0:1]
10. OverallWidth
[0:1]
11. PredefinedType
[0:1]
12. PartitioningType
[0:1]
13. UserDefinedPartitioningType
[0:1]
IfcRelFillsElement :RelatedBuildingElement1->IfcWindow :IfcWindow0
Figure 4.1.4.3.2.A
General UsageTable 4.1.4.3.2.B