Navigation
Navigate Navigate Navigate Navigate Navigate Navigate Navigate Navigate

IfcOpeningElement

Definition from IAI: The opening element stands for opening, recess or chase, all reflecting voids. It represents a void within any element that has physical manifestation. Openings must be handled by all sectors and disciplines in AEC/FM industry, therefore the interoperability for opening elements is provided at this high level.

There are two different types of opening elements:

The inherited attribute ObjectType should be used to capture the differences,

An IfcOpeningElement has to be inserted into a building element (all subtypes of IfcBuildingElement) by using the IfcRelVoidsElement relationship. It is also directly linked to the spatial structure of the project (and here normally to the IfcBuildingStorey) by using the IfcRelContainedInSpatialStructure relationship. It should not be linked directly to the spatial structure of the project, i.e. the inverse relationship ContainedInStructure shall be NIL. It is assigned to the spatial structure through the elements it penetrates.

HISTORY New entity in IFC Release 1.0
IFC2x PLATFORM CHANGE: The intermediate ABSTRACT supertypes IfcFeatureElement and IfcFeatureSubtraction have been added between IfcElement and IfcOpeningElement with upward compatibility.

Property Set Use Definition:

The property sets relating to the IfcOpeningElement are defined by the IfcPropertySet and attached by the IfcRelDefinesByProperties relationship. It is accessible by the inverse IsDefinedBy relationship. The following property set definitions specific to the IfcOpeningElement are part of this IFC release:

Quantity Use Definition:

The quantities relating to the IfcOpeningElement are defined by the IfcElementQuantity and attached by the IfcRelDefinesByProperties. The following quantities are foreseen, but will be subjected to the local standard of measurement:

Name Description Value Type
NominalArea Area of the opening as viewed by an elevation view (for wall openings) or as viewed by a ground floor view (for floor openings). The exact definition and calculation rules depend on the method of measurement used. IfcQuantityArea
NominalVolume Volume of the opening. The exact definition and calculation rules depend on the method of measurement used. IfcQuantityVolume

Geometry Use Definitions

The geometric representation of IfcOpeningElement is given by the IfcProductDefinitionShape and IfcLocalPlacement allowing multiple geometric representations.

Local Placement

The local placement for IfcOpeningElement is defined in its supertype IfcProduct. It is defined by the IfcLocalPlacement, which defines the local coordinate system that is referenced by all geometric representations.

Geometric Representation

Currently, the use of 'SweptSolid', 'Brep', and 'MappedRepresentation' representation is supported.

Swept Solid Representation with Horizontal Extrusion
The 'SweptSolid' geometric representation of IfcOpeningElement, using horizontal extrusion direction (for walls), is defined using the swept area solid geometry. The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:

The following additional constraints apply to the swept solid representation:

Special agreement for defining openings in round building elements, e.g., in round walls. The opening width, in case of a rectangular opening equal with the IfcRectangleProfileDef.XDim, is defined as the straight line distance between two parallel jambs. If the jambs are defined radial (to the center of the arc used to define the round wall) then the opening width is defined to be the outer arc length.

NOTE: In case of non-parallel jambs, the shape representation shall be a 'SweptSolid' representation with vertical extrusion.

EXAMPLE for openings

standard opening

The following interpretation of dimension parameter applies for rectangular openings:

  • IfcRectangleProfileDef.YDim interpreted as opening width
  • IfcRectangleProfileDef.XDim interpreted as opening height

NOTE: Rectangles are now defined centric, the placement location has to be set:

  • IfcCartesianPoint(XDim/2,YDim/2)

EXAMPLE for recesses

recess

The following interpretation of dimension parameter applies for rectangular recess:

  • IfcRectangleProfileDef.YDim interpreted as recess width
  • IfcRectangleProfileDef.XDim interpreted as recess height
  • IfcExtrudedAreaSolid.Depth is interpreted as recess depth

NOTE: Rectangles are now defined centric, the placement location has to be set:

  • IfcCartesianPoint(XDim/2,YDim/2)

NOTE: The local placement directions for the IfcOpeningElement are only given as an example, other directions are valid as well.

NOTE  In case of recesses also profiles of type IfcArbitraryProfileDefWithVoid shall be supported as a 'SweptSolid' representation.

Swept Solid Representation with Vertical Extrusion
The 'SweptSolid' geometric representation of IfcOpeningElement, using vertical extrusion direction (for walls), is defined using the swept area solid geometry, however the extrusion direction may be vertical, i.e. in case of a wall opening, the extrusion would be in the direction of the wall height. The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:

The following additional constraints apply to the swept solid representation:

Vertical extrusions shall be used when an opening or recess has a non rectangular foot print geometry that does not change along the height of the opening or recess.

Brep Representation
The general b-rep geometric representation of IfcOpeningElement is defined using the Brep geometry. The Brep representation allows for the representation of complex element shape. The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:

EXPRESS specification:

ENTITY IfcOpeningElement
SUBTYPE OF ( IfcFeatureElementSubtraction);
INVERSE
HasFillings  :  SET OF IfcRelFillsElement FOR RelatingOpeningElement;
END_ENTITY;

Attribute definitions:

HasFillings  :  Reference to the Filling Relationship that is used to assign Elements as Fillings for this Opening Element. The Opening Element can be filled with zero-to-many Elements.

Inheritance graph

ENTITY IfcOpeningElement;
ENTITY IfcRoot;
GlobalId  :  IfcGloballyUniqueId;
OwnerHistory  :  IfcOwnerHistory;
Name  :  OPTIONAL IfcLabel;
Description  :  OPTIONAL IfcText;
ENTITY IfcObjectDefinition;
INVERSE
HasAssignments  :  SET OF IfcRelAssigns FOR RelatedObjects;
IsDecomposedBy  :  SET OF IfcRelDecomposes FOR RelatingObject;
Decomposes  :  SET [0:1] OF IfcRelDecomposes FOR RelatedObjects;
HasAssociations  :  SET OF IfcRelAssociates FOR RelatedObjects;
ENTITY IfcObject;
ObjectType  :  OPTIONAL IfcLabel;
INVERSE
IsDefinedBy  :  SET OF IfcRelDefines FOR RelatedObjects;
ENTITY IfcProduct;
ObjectPlacement  :  OPTIONAL IfcObjectPlacement;
Representation  :  OPTIONAL IfcProductRepresentation;
INVERSE
ReferencedBy  :  SET OF IfcRelAssignsToProduct FOR RelatingProduct;
ENTITY IfcElement;
Tag  :  OPTIONAL IfcIdentifier;
INVERSE
HasStructuralMember  :  SET OF IfcRelConnectsStructuralElement FOR RelatingElement;
FillsVoids  :  SET [0:1] OF IfcRelFillsElement FOR RelatedBuildingElement;
ConnectedTo  :  SET OF IfcRelConnectsElements FOR RelatingElement;
HasCoverings  :  SET OF IfcRelCoversBldgElements FOR RelatingBuildingElement;
HasProjections  :  SET OF IfcRelProjectsElement FOR RelatingElement;
ReferencedInStructures  :  SET OF IfcRelReferencedInSpatialStructure FOR RelatedElements;
HasPorts  :  SET OF IfcRelConnectsPortToElement FOR RelatedElement;
HasOpenings  :  SET OF IfcRelVoidsElement FOR RelatingBuildingElement;
IsConnectionRealization  :  SET OF IfcRelConnectsWithRealizingElements FOR RealizingElements;
ProvidesBoundaries  :  SET OF IfcRelSpaceBoundary FOR RelatedBuildingElement;
ConnectedFrom  :  SET OF IfcRelConnectsElements FOR RelatedElement;
ContainedInStructure  :  SET [0:1] OF IfcRelContainedInSpatialStructure FOR RelatedElements;
ENTITY IfcFeatureElement;
ENTITY IfcFeatureElementSubtraction;
INVERSE
VoidsElements  :  IfcRelVoidsElement FOR RelatedOpeningElement;
ENTITY IfcOpeningElement;
INVERSE
HasFillings  :  SET OF IfcRelFillsElement FOR RelatingOpeningElement;
END_ENTITY;