Class Ifc2x3::IfcElement

Nested Relationships

This class is a nested type of Struct Ifc2x3.

Inheritance Relationships

Base Type

Derived Types

Class Documentation

class Ifc2x3::IfcElement : public Ifc2x3::IfcProduct

Definition from IAI: Generalization of all components that make up an AEC product. Those elements can be logically contained by a spatial structure element that constitutes a certain level within a project structure hierarchy (e.g., site, building, storey or space). This is done by using the IfcRelContainedInSpatialStructure relationship. Elements are physically existent objects, although they might be void elements, such as holes. Elements either remain permanently in the AEC product, or only temporarily, as formwork does. Elements can be either assembled on site or pre-manufactured and built in on site. EXAMPLEs of elements in a building construction context are walls, floors, windows and recesses. An element can have material and quantity information assigned through the IfcRelAssociatesMaterial and IfcRelDefinesByProperties relationship. In addition an element can be declared to be a specific occurrence of an element type (and thereby be defined by the element type properties) using the IfcRelDefinesByType relationship. An element can also be defined as an element assembly that is a group of semantically and topologically related elements that form a higher level part of the AEC product. Those element assemblies are defined by virtue of the IfcRelAggregates relationship. EXAMPLEs for element assembly are complete Roof Structures, made by several Roof Areas, or a Stair, composed by Flights and Landings. Elements that performs the same function may be grouped by an “Element Group By Function”. It is realized by an instance of IfcGroup with the ObjectType = ‘ElementGroupByFunction”. HISTORY New entity in IFC Release 1.0 Property Set Use Definition: The property sets relating to the IfcElement are defined by the IfcPropertySet and attached by the IfcRelDefinesByProperties relationship. It is accessible by the inverse IsDefinedBy relationship. Quantity Use Definition: The quantities relating to the IfcElement are defined by the IfcElementQuantity and attached by the IfcRelDefinesByProperties. A detailed specification for individual quantities is introduced at the level of subtypes of IfcElement. Geometry Use Definitions The geometric representation of any IfcElement is given by the IfcProductDefinitionShape and IfcLocalPlacement allowing multiple geometric representations. A detailed specification for the local placement and shape representaion is introduced at the level of subtypes of IfcElement.

Subclassed by Ifc2x3::IfcBuildingElement, Ifc2x3::IfcDistributionElement, Ifc2x3::IfcElectricalElement, Ifc2x3::IfcElementAssembly, Ifc2x3::IfcElementComponent, Ifc2x3::IfcEquipmentElement, Ifc2x3::IfcFeatureElement, Ifc2x3::IfcFurnishingElement, Ifc2x3::IfcTransportElement, Ifc2x3::IfcVirtualElement

Public Types

typedef IfcTemplatedEntityList<IfcElement> list

Public Functions

bool hasTag() const

Whether the optional attribute Tag is defined for this IfcElement.

std::string Tag() const

The tag (or label) identifier at the particular instance of a product, e.g. the serial number, or the position number. It is the identifier at the occurrence level.

void setTag(std::string v)
IfcTemplatedEntityList<IfcRelConnectsStructuralElement>::ptr HasStructuralMember() const
IfcTemplatedEntityList<IfcRelFillsElement>::ptr FillsVoids() const
IfcTemplatedEntityList<IfcRelConnectsElements>::ptr ConnectedTo() const
IfcTemplatedEntityList<IfcRelCoversBldgElements>::ptr HasCoverings() const
IfcTemplatedEntityList<IfcRelProjectsElement>::ptr HasProjections() const
IfcTemplatedEntityList<IfcRelReferencedInSpatialStructure>::ptr ReferencedInStructures() const
IfcTemplatedEntityList<IfcRelConnectsPortToElement>::ptr HasPorts() const
IfcTemplatedEntityList<IfcRelVoidsElement>::ptr HasOpenings() const
IfcTemplatedEntityList<IfcRelConnectsWithRealizingElements>::ptr IsConnectionRealization() const
IfcTemplatedEntityList<IfcRelSpaceBoundary>::ptr ProvidesBoundaries() const
IfcTemplatedEntityList<IfcRelConnectsElements>::ptr ConnectedFrom() const
IfcTemplatedEntityList<IfcRelContainedInSpatialStructure>::ptr ContainedInStructure() const
const IfcParse::entity &declaration() const
IfcElement(IfcEntityInstanceData *e)
IfcElement(std::string v1_GlobalId, ::Ifc2x3::IfcOwnerHistory *v2_OwnerHistory, boost::optional<std::string> v3_Name, boost::optional<std::string> v4_Description, boost::optional<std::string> v5_ObjectType, ::Ifc2x3::IfcObjectPlacement *v6_ObjectPlacement, ::Ifc2x3::IfcProductRepresentation *v7_Representation, boost::optional<std::string> v8_Tag)

Public Static Functions

const IfcParse::entity &Class()