Class Ifc4x1::IfcSpatialStructureElement¶
Defined in File Ifc4x1.h
Nested Relationships¶
This class is a nested type of Struct Ifc4x1.
Inheritance Relationships¶
Base Type¶
public Ifc4x1::IfcSpatialElement
(Class Ifc4x1::IfcSpatialElement)
Derived Types¶
public Ifc4x1::IfcBuilding
(Class Ifc4x1::IfcBuilding)public Ifc4x1::IfcBuildingStorey
(Class Ifc4x1::IfcBuildingStorey)public Ifc4x1::IfcSite
(Class Ifc4x1::IfcSite)public Ifc4x1::IfcSpace
(Class Ifc4x1::IfcSpace)
Class Documentation¶
-
class
Ifc4x1
::
IfcSpatialStructureElement
: public Ifc4x1::IfcSpatialElement¶ A spatial structure element (IfcSpatialStructureElement) is the generalization of all spatial elements that might be used to define a spatial structure. That spatial structure is often used to provide a project structure to organize a building project. A spatial project structure might define as many levels of decomposition as necessary for the building project. Elements within the spatial project structure are:
site as IfcSite building as IfcBuilding storey as IfcBuildingStorey space as IfcSpace
or aggregations or parts thereof. The composition type declares an element to be either an element itself, or an aggregation (complex) or a decomposition (part). The interpretation of these types is given at each subtype of IfcSpatialStructureElement. The IfcRelAggregates is defined as an 1-to-many relationship and used to establish the relationship between exactly two levels within the spatial project structure. Finally the highest level of the spatial structure is assigned to IfcProject using the IfcRelAggregates. Informal proposition:
The spatial project structure, established by the IfcRelAggregates, shall be acyclic. A site should not be (directly or indirectly) associated to a building, storey or space. A building should not be (directly or indirectly) associated to a storey or space. A storey should not be (directly or indirectly) associated to a space.
HISTORY New entity in IFC Release 2x.
Relationship Use Definition The subtypes of IfcSpatialStructureElement relate to other elements and systems by establishing the following relationships:
Containment of elements : IfcRelContainedInSpatialStructure by inverse attribute ContainsElements, used to assign any element, like building elements, MEP elements, etc. to the spatial structure element in which they are primarily contained.
NOTE This relationship is mandatory for elements in several view definitions and implementer agreements.
Reference of elements : IfcRelReferencedInSpatialStructure by inverse attribute ReferencesElements, used to reference any element, like building elements, MEP elements, etc. in spatial structure elements, other then the one, where it is contained. Reference of systems : IfcRelServicesBuildings by inverse attribute ServicedBySystems, used to reference a sytem, like a building service or electrical distribution system, a zonal system, or a structural analysis system, that is assigned to this spatial structure element.
NOTE Elements within the referenced system may be directly contained (or referenced) by other spatial structure elements.
The subtypes of IfcSpatialStructureElement relate to each other by using the IfcRelAggregates relationship to build the project spatial structure.
Figure 62 shows the use of IfcRelAggregates to establish a spatial structure including site, building, building section and storey. More information is provided at the level of the subtypes.
Figure 62 — Spatial structure element composition
Subclassed by Ifc4x1::IfcBuilding, Ifc4x1::IfcBuildingStorey, Ifc4x1::IfcSite, Ifc4x1::IfcSpace
Public Types
-
typedef IfcTemplatedEntityList<IfcSpatialStructureElement>
list
¶
Public Functions
-
bool
hasCompositionType
() const¶ Whether the optional attribute CompositionType is defined for this IfcSpatialStructureElement.
-
::Ifc4x1::IfcElementCompositionEnum::Value
CompositionType
() const¶ Denotes, whether the predefined spatial structure element represents itself, or an aggregate (complex) or a part (part). The interpretation is given separately for each subtype of spatial structure element. If no CompositionType is asserted, the dafault value ‘ELEMENT’ applies.
IFC2x4 CHANGE  Attribute made optional.
-
void
setCompositionType
(::Ifc4x1::IfcElementCompositionEnum::Value v)¶
-
IfcSpatialStructureElement
(IfcEntityInstanceData *e)¶
-
IfcSpatialStructureElement
(std::string v1_GlobalId, ::Ifc4x1::IfcOwnerHistory *v2_OwnerHistory, boost::optional<std::string> v3_Name, boost::optional<std::string> v4_Description, boost::optional<std::string> v5_ObjectType, ::Ifc4x1::IfcObjectPlacement *v6_ObjectPlacement, ::Ifc4x1::IfcProductRepresentation *v7_Representation, boost::optional<std::string> v8_LongName, boost::optional<::Ifc4x1::IfcElementCompositionEnum::Value> v9_CompositionType)¶
-
typedef IfcTemplatedEntityList<IfcSpatialStructureElement>