IFC 4.3.0.1 (IFC4X3) development

4.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.4.3.2.A

General Usage

ApplicableEntity
IfcElement
Table 4.4.3.2.B

Edit on Github


Is this page difficult to understand? Let us know!