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 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 the occurrence definition (or project instance)
- the IfcWindowStyle is the specific definition (or project type)

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

> HISTORY New entity in IFC Release 1.0.

Property Set Use Definition:

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

- Pset_WindowCommon: common property set for all window occurrences
- Pset_DoorWindowGlazingType: specific property set for the glazing properties of the window glazing, if available
- Pset_DoorWindowShadingType: specific property set for the shading properties of the window glazing, if available

Geometry Use Definitions:

The geometric representation of IfcWindow is given by the IfcProductDefinitionShape, allowing multiple geometric representations. The IfcWindow, in case of an occurrence object, gets its parameter and shape from the IfcWindowStyle. If an IfcRepresentationMap (a block definition) is defined for the IfcWindowStyle, then the IfcWindow inserts it through the IfcMappedItem (referred 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, then the PlacementRelTo relationship of IfcLocalPlacement shall point (if given) to the local placement of the same IfcSpatialStructureElement that is used in the ContainedInStructure inverse attribute or to a referenced spatial structure element at a higher level.
3. If the relative placement is not used, the absolute placement is defined within the world coordinate system.

Geometric Representation

The geometric representation of IfcWindow is defined using the following (potentially multiple) IfcShapeRepresentation's for its IfcProductDefinitionShape:

- Profile: A 'GeometricCurveSet' consisting of a single losed curve defining the outer boundary of the window (lining). The window parametric representation uses this profile in order to apply the window lining and panel parameter. If not provided, the profile of the IfcOpeningElement is taken.
- FootPrint: A 'GeometricCurveSet', or 'Annotation2D' representation defining the 2D shape of the window
- Body: A 'SweptSolid', 'SurfaceModel', or 'Brep' representation defining the 3D shape of the window.

In addition the parametric representation of a (limited) window shape is available by applying the parameters from IfcWindow Style referencing IfcWindow LiningProperties and IfcWindow PanelProperties. The purpose of the parameter is described at those entities and below (parametric representation).

Profile - 'GeometricCurveSet' representation

The window profile is represented by a three-dimensional closed curve within a particular shape representation. The profile is used to apply the parameter of the parametric window representation. The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:

- RepresentationIdentifier : 'Profile'
- RepresentationType : 'GeometricCurveSet', only a single closed curve shall be contained in the set of IfcShapeRepresentation.Items.

A 'Profile' representation has to be provided if:

- a parametric representation shall be applied to the window AND

- the window is 'free standing', or
- the opening into which the window is inserted is not extruded horizontally (i.e. where the opening profile does not match the window profile)

FootPrint - 'GeometricCurveSet' or 'Annotation2D' representation

The window foot print is represented by a set of two-dimensional curves (or in case of 'Annotation2D' additional hatching and text) within a particular shape representation. The foot print is used for the plan view representation of the window. The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:

- RepresentationIdentifier : 'FootPrint'
- RepresentationType : 'GeometricCurveSet', or 'Annotation2D'

Body - 'SweptSolid', 'SurfaceModel', or 'Brep' representation

The window body is either represented parameterically (see parametric representation) or by explicit 3D shape. The 3D shape is given by using extrusion geometry, or surface models, or Brep models within a particular shape representation. The body is used for the model view representation of the window. The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:

- RepresentationIdentifier : 'Body'
- RepresentationType : 'SweptSolid', 'SurfaceModel', or 'Brep'

MappedRepresentation

The 'FootPrint' and 'Body' geometric representation of IfcWindow can be shared among several identical windows using the 'MappedRepresentation'. The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:

- RepresentationIdentifier : 'FootPrint', 'Body'
- RepresentationType : 'MappedRepresentation'

The same constraints, as given for the 'FootPrint', 'Body' representation identifiers, shall apply to the MappedRepresentation of the IfcRepresentationMap.

Parameteric Representation using parameters given by IfcWindowStyle

The parameters, which define 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

| 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'
| The final window (DoublePanelHorizontal) with first panel PanelPosition = TOP OperationType = BOTTOMHUNG second panel PanelPosition = BOTTOM OperationType = TILTANDTURNLEFTHAND

Window opening operation by window style

The parameters that 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 which determines the opening direction of the window. The overall layout of the IfcWindow is determined by its IfcWindowStyle.OperationType. Each window panel has its own operation type, provided by IfcWindowPanelProperties.OperationType. All window panels are assumed to open into the same direction (if relevant for the particular window panel operation. The hinge side (whether a window opens to the left or to the right) is determined by the Ifc WindowPanelProperties.OperationType.

| The window panel (for side hung windows) opens always into the direction of the positive Y axis of the local placement. The determination of whether the window opens to the left or to the right is done at IfcWindowPanelProperties.OperationType. Here it is a left side opening window given by OperationType = SideHungLeftHand.
| If the window should open to the other side, then the local placement has to be changed. It is still a left hung window, given by IfcWindowPanelProperties.OperationType = SideHungLeftHand.
| If the window panel (for side hung windows) opens to the right, a separate window panel style needs to be used (here IfcWindowPanelProperties.OperationType = SideHungRightHand) and it always opens into the direction of the positive Y axis of the local placement.
| If the window should open to the other side, then the local placement has to be changed. It is still a right hung window, given by IfcWindowPanelProperties.OperationType = SideHungRightHand. .

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 opening. If omitted, the OverallHeight should be taken from the geometric representation of the IfcOpening in which the window is inserted. NOTE The body of the window might be taller then the window opening (e.g. in cases where the window lining includes a casing). In these cases the OverallHeight shall still be given as the window opening height, and not as the total height of the window lining.
OverallWidth | : | Overall measure of the width, it reflects the X Dimension of a bounding box, enclosing the body of the window opening. If omitted, the OverallWidth should be taken from the geometric representation of the IfcOpening in which the window is inserted. NOTE The body of the window might be wider then the window opening (e.g. in cases where the window lining includes a casing). In these cases the OverallWidth shall still be given as the window opening width, and not as the total width of the window lining.

Inheritance graph

ENTITY IfcWindow;
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 IfcBuildingElement;
ENTITY IfcWindow;
OverallHeight | : | OPTIONAL IfcPositiveLengthMeasure;
OverallWidth | : | OPTIONAL IfcPositiveLengthMeasure;
END_ENTITY;