Navigate Navigate Navigate Navigate Navigate Navigate Navigate Navigate


Definition from ISO 6707-1:1989: Construction enclosing the building from above.

Definition from buildingSMART: The IfcRoof is a description of the total roof. It acts as a container entity, that aggregates all components of the roof, it represents. The aggregation is handled via the IfcRelAggregates relationship, relating a roof (IfcRoof) with the related roof entities, like slabs (IfcSlab), rafters and purlins (IfcBeam), or other (included) roofs, such as dormers (IfcRoof).

HISTORY: New Entity in IFC Release 2.0.

Property Set Use Definition:

The property sets relating to the IfcRoof 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 IfcRoof are part of this IFC release:

Quantity Use Definition:

The quantities relating to the IfcRoof are defined by the IfcElementQuantity and attached by the IfcRelDefinesByProperties. It is accessible by the inverse IsDefinedBy relationship. The following quantities are foreseen, but will be subjected to the local standard of measurement:

Name Description Value Type
TotalSurfaceArea Total (exposed to the outside) area of all roof slabs belonging to the roof. The exact definition and calculation rules depend on the method of measurement used. IfcQuantityArea

Geometry Use Definitions:

The geometric representation of IfcRoof is given by the IfcProductDefinitionShape, allowing multiple geometric representation. Independent geometric representations should only be used when the IfcRoof is not defined as an aggregate. If defined as an aggregate, the geometric representation is the sum of the representation of the components within the aggregate.

Local Position

The local placement for IfcRoof 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.

If the LocalPlacement is given for the IfcRoof, then all components, which are aggregated to the roof should use this placement as their relative placement.

Geometric Representation

If the IfcRoof has components (referenced by SELF\IfcObject.IsDecomposedBy) then no independent geometric representation shall defined for the IfcRoof. The IfcRoof is then geometrically represented by the geometric representation of its components. The components are accessed via SELF\IfcObject.IsDecomposedBy[1].RelatedObjects.

If the IfcRoof has no components defined (empty set of SELF\IfcObject.IsDecomposedBy) then the IfcRoof may be represented by an IfcShapeRepresentation with the RepresentationType = 'Brep'.


roof IfcRoof defining only the local placement for all components.

EXPRESS specification:

SUBTYPE OF ( IfcBuildingElement);
ShapeType  :  IfcRoofTypeEnum;
WR1  :  (HIINDEX(SELF\IfcObjectDefinition.IsDecomposedBy) = 0) OR ((HIINDEX(SELF\IfcObjectDefinition.IsDecomposedBy) = 1) AND (NOT(EXISTS(SELF\IfcProduct.Representation))));

Attribute definitions:

ShapeType  :  Predefined shape types for a roof that are specified in an enumeration.

Formal Propositions:

WR1  :  Either the roof is not decomposed into its roof slabs (the roof can have independent geometry), or the geometry shall not be given at IfcRoof directly.

Inheritance graph

GlobalId  :  IfcGloballyUniqueId;
OwnerHistory  :  IfcOwnerHistory;
Name  :  OPTIONAL IfcLabel;
Description  :  OPTIONAL IfcText;
ENTITY IfcObjectDefinition;
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;
IsDefinedBy  :  SET OF IfcRelDefines FOR RelatedObjects;
ENTITY IfcProduct;
ObjectPlacement  :  OPTIONAL IfcObjectPlacement;
Representation  :  OPTIONAL IfcProductRepresentation;
ReferencedBy  :  SET OF IfcRelAssignsToProduct FOR RelatingProduct;
ENTITY IfcElement;
Tag  :  OPTIONAL IfcIdentifier;
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;
HasStructuralMember  :  SET OF IfcRelConnectsStructuralElement 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 IfcBuildingElement;
ShapeType  :  IfcRoofTypeEnum;