Navigation

IfcWindow

Definition form ISO 6707-1:1989: Construction for closing a vertical or near vertical opening in a wall or pitched roof that will admit light and may admit fresh air.

Definition from IAI: A window (IfcWindow) consists of a lining and one or several panels. Properties concerning the lining and panel(s) are defined by the IfcWindowLiningProperties and the IfcWindowPanelProperties.

The window entity (IfcWindow) defines a particular occurrence of a window inserted in the spatial context of a project. The actual parameter of the window and/or its shape is defined at the IfcWindowStyle, to which the IfcWindow is related by the inverse relationship IsDefinedBy pointing to IfcRelDefinesByType. The IfcWindowStyle also defines the particular attributes for the lining (IfcWindowLiningProperties) and panels (IfcWindowPanelProperties). Therefore:

The IfcWindow is normally inserted into an IfcOpeningElement (but does not need to) using the IfcRelFillsElement relationship. It is also directly liked to the spatial structure of the project (and here normally to the IfcBuildingStorey) using the IfcRelContainsInSpatialStructure relationship.

HISTORY New entity in IFC Release 1.0
ISSUE See issue and change log for changes made in IFC Release 2x.

Geometry Use Definitions:

The geometric representation of IfcWindow is given by the IfcProductDefinitionShape, allowing multiple geometric representation. The IfcWindow, in case of an occurrance object, gets its parameter and shape from the IfcWindowStyle. If an IfcRepresentationMap (a block definition) is defined for the IfcWindowStyle, than the IfcWindow inserts it through the IfcMappedItem (refered to by IfcShapeRepresentation.Items).

Local Placement

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

  1. The PlacementRelTo relationship of IfcLocalPlacement shall point to the local placement of the same element (if given), in which the IfcWindow is used as a filling (normally an IfcOpeningElement), as provided by the IfcRelFillsElement relationship.
  2. If the IfcWindow is not inserted into an IfcOpeningElement, than the PlacementRelTo relationship of IfcLocalPlacement shall point (if given) to the local placement of the same IfcSpatialStructureElement , which is used in the ContainedInStructure inverse attribute, or to a spatial structure element at a higher level, referenced by that.
  3. If the relative placement is not used, the absolute placement is defined within the world coordinate system.

Standard Geometric Representation using parameters given by the style

The parameters, which defines the shape of the IfcWindow, are given at the IfcWindowStyle and the property sets, which are included in the IfcWindowStyle. The IfcWindow only defines the local placement. The overall size of the IfcWindow is determined by its OverallWidth and OverallHeight parameter, if omitted, it should be taken from the profile of the IfcOpening, in which the IfcWindow is inserted.

EXAMPLE Inserting the IfcWindowStyle.OperationType = DoublePanelHorizontal
window 1 The insertion of the window style into the IfcOpeningElement by creating an instance of IfcWindow. The parameter:
  • OverallHeigth
  • OverallWidth

show the extend of the window in the positive Z and X axis of the local placement of the window. The lining and the transom are created by the given parameter (the flag ParameterTakesPrecedence = TRUE).

The representation type of the inserted window is

  • IfcShapeRepresentation.RepresentationType = 'MappedRepresentation'
window 2 The final window (DoublePanelHorizontal) with
  • first panel
    PanelPosition = TOP
    OperationType = BOTTOMHUNG
  • second panel
    PanelPosition = BOTTOM
    OperationType = TILTANDTURNLEFTHAND

EXPRESS specification:

ENTITY IfcWindow
SUBTYPE OF ( IfcBuildingElement);
OverallHeight  :  OPTIONAL IfcPositiveLengthMeasure;
OverallWidth  :  OPTIONAL IfcPositiveLengthMeasure;
END_ENTITY;

Attribute definitions:

OverallHeight  :  Overall measure of the height, it reflects the Z Dimension of a bounding box, enclosing the body of the window. If omitted, the overall height should be taken from the geometric representation of the IfcOpening, in which the window is inserted.
OverallWidth  :  Overall measure of the width, it reflects the X Dimension of a bounding box, enclosing the body of the window. If omitted, the overall width should be taken from the geometric representation of the IfcOpening, in which the window is inserted.

References (1):

Name Type Referred through Express-G
IfcBuildingElement Entity
Subtype
Diagram 1

Inheritance graph

ENTITY IfcWindow;
ENTITY IfcRoot;
GlobalId  :  IfcGloballyUniqueId;
OwnerHistory  :  IfcOwnerHistory;
Name  :  OPTIONAL IfcLabel;
Description  :  OPTIONAL IfcText;
ENTITY IfcObject;
ObjectType  :  OPTIONAL IfcLabel;
INVERSE
IsDefinedBy  :  SET OF IfcRelDefines FOR RelatedObjects;
HasAssociations  :  SET OF IfcRelAssociates FOR RelatedObjects;
HasAssignments  :  SET OF IfcRelAssigns FOR RelatedObjects;
Decomposes  :  SET OF IfcRelDecomposes FOR RelatedObjects;
IsDecomposedBy  :  SET [0:1] OF IfcRelDecomposes FOR RelatingObject;
ENTITY IfcProduct;
ObjectPlacement  :  OPTIONAL IfcObjectPlacement;
Representation  :  OPTIONAL IfcProductRepresentation;
INVERSE
ReferencedBy  :  SET OF IfcRelAssignsToProduct FOR RelatingProduct;
ENTITY IfcElement;
Tag  :  OPTIONAL IfcIdentifier;
INVERSE
ConnectedTo  :  SET OF IfcRelConnectsElements FOR RelatingElement;
ConnectedFrom  :  SET OF IfcRelConnectsElements FOR RelatedElement;
ContainedInStructure  :  SET [0:1] OF IfcRelContainedInSpatialStructure FOR RelatedElements;
ENTITY IfcBuildingElement;
INVERSE
ProvidesBoundaries  :  SET OF IfcRelSpaceBoundary FOR RelatedBuildingElement;
HasOpenings  :  SET OF IfcRelVoidsElement FOR RelatingBuildingElement;
FillsVoids  :  SET [0:1] OF IfcRelFillsElement FOR RelatedBuildingElement;
ENTITY IfcWindow;
OverallHeight  :  OPTIONAL IfcPositiveLengthMeasure;
OverallWidth  :  OPTIONAL IfcPositiveLengthMeasure;
END_ENTITY;