Defined in File Ifc4x1.h
public Ifc4x1::IfcBuildingElementPart(Class Ifc4x1::IfcBuildingElementPart)
public Ifc4x1::IfcDiscreteAccessory(Class Ifc4x1::IfcDiscreteAccessory)
public Ifc4x1::IfcFastener(Class Ifc4x1::IfcFastener)
public Ifc4x1::IfcMechanicalFastener(Class Ifc4x1::IfcMechanicalFastener)
public Ifc4x1::IfcReinforcingElement(Class Ifc4x1::IfcReinforcingElement)
public Ifc4x1::IfcVibrationIsolator(Class Ifc4x1::IfcVibrationIsolator)
IfcElementComponent: public Ifc4x1::IfcElement¶
An element component is a representation for minor items included in, added to or connecting to or between elements, which usually are not of interest from the overall building structure viewpoint. However, these small parts may have vital and load carrying functions within the construction. These items do not provide any actual space boundaries. Typical examples of IfcElementComponents include different kinds of fasteners and various accessories.
HISTORY New entity in IFC Release 2x2
It is often desirable to model a number of same-shaped element components by means of a single occurrence object, e.g. several bolts within a connection or a row of reinforcement elements. In this IFC release, this is possible by means of multiple mapped representation as documented below.
To express the multiplicity of element components also on a higher semantic level, an IfcElementQuantity should be provided via IfcRelDefinesByProperties. The quantity should contain an IfcQuantityCount named ‘Count’ with the number of components.
Geometry Use Definition
Local Placement The local placement for IfcElementComponent 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.
The PlacementRelTo relationship of IfcLocalPlacement shall point (if given) to the local placement of the same IfcElement or IfcElementAssembly, which is used in the Decomposes inverse attribute, i.e. the local placement is defined relative to the local placement of the element or element assembly in which the component is contained. If the relative placement is not used, the absolute placement is defined within the world coordinate system.
Surface Model Representation
Any IfcElementComponent (if no further constraints are defined at the level of its subtypes) may be represented as a single or multiple surface models, based on either shell or face based models. The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:
RepresentationIdentifier : ‘Body’ RepresentationType : ‘SurfaceModel’
Any IfcElementComponent (if no further constraints are defined at the level of its subtypes) may be represented as a single or multiple Boundary Representation elements (which are restricted to faceted Brep with or without voids). The Brep representation allows for the representation of complex element shape. The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:
RepresentationIdentifier : ‘Body’ RepresentationType : ‘Brep’
The mapped item, IfcMappedItem, should be used if appropriate as it allows for reusing the geometry definition of a type at occurrences of the same type. The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:
RepresentationIdentifier : ‘Body’ RepresentationType : ‘MappedRepresentation’
Multiple Mapped Representation
A single instance of a subtype of IfcElementComponent can stand for several actual element components at once. In this case, the IfcShapeRepresentation contains as many mapped items as there are element components combined within this occurrence object:
Figure 151 illustrates multiple components modeled as a single occurrence object (here: IfcFastener)
Figure 151 — Element component mapped representation
Representation identifier and type are the same as in single mapped representation. The number of mapped items in the representation corresponds with the count of element components in the IfcElementQuantity.
IfcElementComponent(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_Tag)¶