Model Window
Overview
Provides the information concerning windows required for a basic building model. This information includes:
- Specification of window name and description if required
- Width and height dimensions of the window
- Shape representation of the window
- Specification of window type (style)and identification of the type (style) to which a window occurrence conforms
- The material forming the basic construction of the window occurrence
- The number and general layout of the panels the window occurrence
- Indicator for whether geometry of the window is determined by the style information or by lining and panel properties
- Lining thickness and depth
- Transom thickness and offset
- Mullion thickness and offset
- Frame thickness and depth
- Panel hanging and operation
- Panel position
Note that a window can have multiple sets of data concerning lining, transom, mullion, frame and panel depending on the number of each that are within a particular window construction.
Results
Model of window occurrence(s) including shape representation and other basic information
| Description | Entity/Pset/Functional Part | MAN | REC | OPT |
|---|---|---|---|---|
| Model the window type (style) | ||||
|
IfcWindowStyle.GlobalId::IfcGloballyUniqueId | |||
|
IfcWindowStyle.OwnerHistory::fp_apply_owner_history | |||
|
IfcWindowStyle.Name | |||
|
IfcWindowStyle.Description | |||
|
IfcWindowStyle.ConstructionType::IfcWindowStyleConstructionEnum | |||
|
IfcWindowStyle.OperationType::IfcWindowStyleOperationEnum | |||
|
IfcWindowStyle.ParameterTakesPrecedence::BOOLEAN | |||
|
IfcWindowStyle.Sizeable::BOOLEAN | |||
|
IfcWindowStyle.RepresentationMaps::fp_map_representation | |||
| Model the window occurrence | ||||
|
IfcWindow.GlobalId::IfcGloballyUniqueId | |||
|
IfcWindow.OwnerHistory::fp_apply_owner_history | |||
|
IfcWindow.Name::IfcLabel | |||
|
IfcWindow.Description::IfcText | |||
|
IfcWindow.OverallHeight::IfcPositiveLengthMeasure | |||
|
IfcWindow.OverallWidth::IfcPositiveLengthMeasure | |||
|
IfcWindow.ObjectPlacement::fp_place_object | |||
|
IfcWindow.Representation::fp_represent_product | |||
|
fp_define_by_type | |||
| Model the window lining properties | ||||
|
IfcWindowLiningProperties.GlobalId::IfcGloballyUniqueId | |||
|
IfcWindowLiningProperties.OwnerHistory::fp_apply_owner_history | |||
|
IfcWindowLiningProperties.Name::IfcLabel | |||
|
IfcWindowLiningProperties.Description::IfcText | |||
|
IfcWindowLiningProperties.LiningThickness IfcWindowLiningProperties.LiningDepth |
|||
|
IfcWindowLiningProperties.TransomThickness | |||
|
IfcWindowLiningProperties.FirstTransomOffset IfcWindowLiningProperties.SecondTransomOffset |
|||
|
IfcWindowLiningProperties.TransomThickness | |||
|
IfcWindowLiningProperties.FirstMullionOffset IfcWindowLiningProperties.SecondMullionOffset |
|||
|
IfcWindowLiningProperties.ShapeAspectStyle::fp_style_shape_aspect *** | |||
| Model the window panel properties | ||||
|
IfcWindowPanelProperties.GlobalId::IfcGloballyUniqueId | |||
|
OwnerHistory::fp_apply_owner_history | |||
|
IfcWindowPanelProperties.Name::IfcLabel | |||
|
IfcWindowPanelProperties.Description::IfcText | |||
|
IfcWindowPanelProperties.FrameDepth | |||
|
IfcWindowPanelProperties.FrameThickness | |||
|
IfcWindowPanelProperties.OperationType | |||
|
IfcWindowPanelProperties.PanelPosition | |||
|
IfcWindowPanelProperties.ShapeAspectStyle::fp_style_shape_aspect *** | |||
| Set values in the property set Pset_WindowCommon as indicated below. | ||||
|
Pset_WindowCommon.Reference | |||
|
Pset_WindowCommon.FireRating | |||
|
Pset_WindowCommon.IsExternal | |||
| Set values in the property set Pset_ DoorWindowGlazingType as indicated below. |
||||
|
Pset_DoorWindowGlazingType.GlassLayers | |||
|
fp_define_by_properties |
IFC Entities Required
- IfcBuildingElement
- IfcElement
- IfcObject
- IfcProduct
- IfcPropertyDefinition
- IfcPropertySetDefinition
- IfcPropertySet
- IfcRoot
- IfcTypeObject
- IfcTypeProduct
- IfcWindow
- IfcWindowLiningProperties
- IfcWindowPanelProperties
- IfcWindowStyle
IFC Datatypes Required
- IfcGloballyUniqueId
- IfcIdentifier
- IfcLabel
- IfcLengthMeasure
- IfcNormalisedRatioMeasure
- IfcPositiveLengthMeasure
- IfcRatioMeasure
- IfcText
- IfcWindowPanelOperationEnum
- IfcWindowPanelPositionEnum
- IfcWindowStyleConstructionEnum
- IfcWindowStyleOperationEnum
IFC Functions Required
- -
IFC Property Sets Required
- Pset_WindowCommon
- Pset_DoorWindowGlazingType
IDM Functional Parts Required
- fp_apply_owner_history
- fp_define_property_set
- fp_map_representation
- fp_place_object
- fp_property
- fp_represent_product
- fp_style_shape_aspect
EXPRESS-G
EXPRESS Schema
SCHEMA FP_MODEL_WINDOW;
TYPE IfcGloballyUniqueId = STRING (22) FIXED;
END_TYPE;
TYPE IfcIdentifier = STRING;
END_TYPE;
TYPE IfcLabel = STRING;
END_TYPE;
TYPE IfcLengthMeasure = REAL;
END_TYPE;
TYPE IfcNormalisedRatioMeasure = IfcRatioMeasure;
WHERE
WR1 : {0.0 <= SELF <= 1.0};
END_TYPE;
TYPE IfcRatioMeasure = REAL;
END_TYPE;
TYPE IfcPositiveLengthMeasure = IfcLengthMeasure;
WHERE
WR1 : SELF > 0;
END_TYPE;
TYPE IfcText = STRING;
END_TYPE;
TYPE IfcWindowPanelOperationEnum = ENUMERATION OF
(SIDEHUNGRIGHTHAND,
SIDEHUNGLEFTHAND,
TILTANDTURNRIGHTHAND,
TILTANDTURNLEFTHAND,
TOPHUNG,
BOTTOMHUNG,
PIVOTHORIZONTAL,
PIVOTVERTICAL,
SLIDINGHORIZONTAL,
SLIDINGVERTICAL,
REMOVABLECASEMENT,
FIXEDCASEMENT,
OTHEROPERATION,
NOTDEFINED);
END_TYPE;
TYPE IfcWindowPanelPositionEnum = ENUMERATION OF
(LEFT,
MIDDLE,
RIGHT,
BOTTOM,
TOP,
NOTDEFINED);
END_TYPE;
TYPE IfcWindowStyleConstructionEnum = ENUMERATION OF
(ALUMINIUM,
HIGH_GRADE_STEEL,
STEEL,
WOOD,
ALUMINIUM_WOOD,
PLASTIC,
OTHER_CONSTRUCTION,
NOTDEFINED);
END_TYPE;
TYPE IfcWindowStyleOperationEnum = ENUMERATION OF
(SINGLE_PANEL,
DOUBLE_PANEL_VERTICAL,
DOUBLE_PANEL_HORIZONTAL,
TRIPLE_PANEL_VERTICAL,
TRIPLE_PANEL_BOTTOM,
TRIPLE_PANEL_TOP,
TRIPLE_PANEL_LEFT,
TRIPLE_PANEL_RIGHT,
TRIPLE_PANEL_HORIZONTAL,
USERDEFINED,
NOTDEFINED);
END_TYPE;
ENTITY IfcProduct
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcObject);
ObjectPlacement : fp_place_object;
Representation : fp_represent_product;
WHERE
WR1 : (EXISTS(Representation) AND EXISTS(ObjectPlacement))
OR (EXISTS(Representation) AND
(NOT('IFC2X2_FINAL.IFCPRODUCTDEFINITIONSHAPE' IN TYPEOF(Representation))))
OR (NOT(EXISTS(Representation)));
END_ENTITY;
ENTITY IfcObject
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcRoot);
ObjectType : OPTIONAL IfcLabel;
WHERE
WR1 : SIZEOF(QUERY(temp <* IsDefinedBy | 'IFC2X2_FINAL.IFCRELDEFINESBYTYPE' IN TYPEOF(temp))) <= 1;
END_ENTITY;
ENTITY IfcRoot
ABSTRACT SUPERTYPE OF (ONEOF(IfcObject, IfcPropertyDefinition));
GlobalId : IfcGloballyUniqueId;
Name : OPTIONAL IfcLabel;
Description : OPTIONAL IfcText;
OwnerHistory : fp_apply_owner_history;
UNIQUE
UR1 : GlobalId;
END_ENTITY;
ENTITY IfcPropertyDefinition
ABSTRACT SUPERTYPE OF (ONEOF(IfcPropertySetDefinition, IfcTypeObject))
SUBTYPE OF(IfcRoot);
END_ENTITY;
ENTITY IfcPropertySetDefinition
ABSTRACT SUPERTYPE OF (ONEOF(IfcWindowLiningProperties, IfcWindowPanelProperties, IfcPropertySet))
SUBTYPE OF(IfcPropertyDefinition);
INVERSE
DefinesType : SET [0:1] OF IfcTypeObject FOR HasPropertySets;
END_ENTITY;
ENTITY IfcWindowLiningProperties
SUBTYPE OF(IfcPropertySetDefinition);
LiningDepth : OPTIONAL IfcPositiveLengthMeasure;
LiningThickness : OPTIONAL IfcPositiveLengthMeasure;
TransomThickness : OPTIONAL IfcPositiveLengthMeasure;
MullionThickness : OPTIONAL IfcPositiveLengthMeasure;
FirstTransomOffset : OPTIONAL IfcNormalisedRatioMeasure;
SecondTransomOffset : OPTIONAL IfcNormalisedRatioMeasure;
FirstMullionOffset : OPTIONAL IfcNormalisedRatioMeasure;
SecondMullionOffset : OPTIONAL IfcNormalisedRatioMeasure;
ShapeAspectStyle : OPTIONAL fp_style_shape_aspect;
WHERE
WR1 : (EXISTS(LiningDepth) AND EXISTS(LiningThickness)) XOR
(NOT(EXISTS(LiningDepth)) AND NOT(EXISTS(LiningThickness)));
END_ENTITY;
ENTITY fp_style_shape_aspect;
END_ENTITY;
ENTITY IfcWindowPanelProperties
SUBTYPE OF(IfcPropertySetDefinition);
OperationType : IfcWindowPanelOperationEnum;
PanelPosition : IfcWindowPanelPositionEnum;
FrameDepth : OPTIONAL IfcPositiveLengthMeasure;
FrameThickness : OPTIONAL IfcPositiveLengthMeasure;
ShapeAspectStyle : OPTIONAL fp_style_shape_aspect;
END_ENTITY;
ENTITY IfcPropertySet
SUBTYPE OF(IfcPropertySetDefinition);
HasProperties : SET [1:?] OF fp_property;
WHERE
WR31 : EXISTS(SELF\IfcRoot.Name);
WR32 : IfcUniquePropertyName(HasProperties);
END_ENTITY;
ENTITY fp_property;
END_ENTITY;
ENTITY IfcTypeObject
SUBTYPE OF(IfcPropertyDefinition);
ApplicableOccurrence : OPTIONAL IfcLabel;
HasPropertySets : OPTIONAL LIST [1:?] OF IfcPropertySetDefinition;
WHERE
WR1 : EXISTS(SELF\IfcRoot.Name);
END_ENTITY;
ENTITY IfcTypeProduct
SUBTYPE OF(IfcTypeObject);
Tag : OPTIONAL IfcLabel;
RepresentationMaps : SET [1:?] OF fp_map_representation;
WHERE
WR41 : NOT(EXISTS(SELF\IfcTypeObject.ObjectTypeOf[1])) OR
(SIZEOF(QUERY(temp <* SELF\IfcTypeObject.ObjectTypeOf[1].RelatedObjects |
NOT('IFC2X2_FINAL.IFCPRODUCT' IN TYPEOF(temp)))
) = 0);
END_ENTITY;
ENTITY IfcWindowStyle
SUBTYPE OF(IfcTypeProduct);
ConstructionType : IfcWindowStyleConstructionEnum;
OperationType : IfcWindowStyleOperationEnum;
ParameterTakesPrecedence : BOOLEAN;
Sizeable : BOOLEAN;
END_ENTITY;
ENTITY fp_map_representation;
END_ENTITY;
ENTITY fp_apply_owner_history;
END_ENTITY;
ENTITY IfcElement
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcProduct);
Tag : OPTIONAL IfcIdentifier;
END_ENTITY;
ENTITY IfcBuildingElement
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcElement);
END_ENTITY;
ENTITY IfcWindow
SUBTYPE OF(IfcBuildingElement);
OverallHeight : OPTIONAL IfcPositiveLengthMeasure;
OverallWidth : OPTIONAL IfcPositiveLengthMeasure;
END_ENTITY;
ENTITY fp_place_object;
END_ENTITY;
ENTITY fp_represent_product;
END_ENTITY;
END_SCHEMA;