Class Ifc4x1::IfcDistributionFlowElement¶
Defined in File Ifc4x1.h
Nested Relationships¶
This class is a nested type of Struct Ifc4x1.
Inheritance Relationships¶
Base Type¶
public Ifc4x1::IfcDistributionElement
(Class Ifc4x1::IfcDistributionElement)
Derived Types¶
public Ifc4x1::IfcDistributionChamberElement
(Class Ifc4x1::IfcDistributionChamberElement)public Ifc4x1::IfcEnergyConversionDevice
(Class Ifc4x1::IfcEnergyConversionDevice)public Ifc4x1::IfcFlowController
(Class Ifc4x1::IfcFlowController)public Ifc4x1::IfcFlowFitting
(Class Ifc4x1::IfcFlowFitting)public Ifc4x1::IfcFlowMovingDevice
(Class Ifc4x1::IfcFlowMovingDevice)public Ifc4x1::IfcFlowSegment
(Class Ifc4x1::IfcFlowSegment)public Ifc4x1::IfcFlowStorageDevice
(Class Ifc4x1::IfcFlowStorageDevice)public Ifc4x1::IfcFlowTerminal
(Class Ifc4x1::IfcFlowTerminal)public Ifc4x1::IfcFlowTreatmentDevice
(Class Ifc4x1::IfcFlowTreatmentDevice)
Class Documentation¶
-
class
Ifc4x1
::
IfcDistributionFlowElement
: public Ifc4x1::IfcDistributionElement¶ The distribution element IfcDistributionFlowElement defines occurrence elements of a distribution system that facilitate the distribution of energy or matter, such as air, water or power.
EXAMPLEs of distribution flow elements are ducts, pipes, wires, fittings, and equipment.
HISTORY: New entity in IFC R2.0.
Type Use Definition IfcDistributionFlowElement defines the occurrence of any distribution flow element; common information about distribution flow element types is handled by IfcDistributionFlowElementType. The IfcDistributionFlowElementType (if present) may establish the common type name, usage (predefined type), properties, materials, ports, composition, assignments, and representations. The IfcDistributionFlowElementType is attached using the IfcRelDefinesByType objectified relationship and is accessible by the IsTypedBy inverse attribute. If the IfcDistributionFlowElementType has ports or aggregated elements, such objects are reflected at the IfcDistributionFlowElement occurrence using the IfcRelDefinesByObject relationship. Direct instantiation of IfcDistributionFlowElement with IfcObject.ObjectType asserted provides the meaning of a distribution flow element proxy.
Property Set Use Definition The property sets relating to this entity are defined by IfcPropertySet and attached by the IfcRelDefinesByProperties relationship. They are accessible by the IsDefinedBy inverse attribute. Property sets may also be specified at the IfcDistributionFlowElementType, defining the common property data for all occurrences of the same type. They are then accessible by the IsTypedBy inverse attribute pointing to IfcDistributionFlowElementType.HasPropertySets. If both are given, then the properties directly defined at IfcDistributionFlowElement override the properties defined at IfcDistributionFlowElementType. Refer to the documentation at the supertype IfcDistributionElement and ancestors for inherited property set definitions.
Composition Use Definition The IfcDistributionFlowElement may be decomposed into components using IfcRelAggregates where RelatingObject refers to the enclosing IfcDistributionFlowElement and RelatedObjects contains one or more components. For example, a cable may be decomposed into wires. Standard types for composition are defined at subtypes.
Connection Use Definition The IfcDistributionFlowElement may be connected to other objects as follows using the indicated relationship:
IfcSpatialStructureElement (IfcRelContainedInSpatialStructure) : Indicates the spatial location containing the element. IfcElement (IfcRelConnectsElements) : Indicates physical connectivity with another element (but not embedding or flow transmission), such as a light fixture hanging from a ceiling (IfcCovering), or a junction box having a cover plate (IfcDiscreteAccessory). IfcRelConnectsElements.RelatingElement refers to the anchored side (ceiling for fixture, junction box for cover). IfcElement (IfcRelInterferesElements) : Indicates interference with another element and precedence, such as a pipe going through a wall. IfcOpening (IfcRelFillsElement) : Indicates embedding an element within another element (implying a cutout), such as an air terminal or junction box embedded within a wall. IfcDistributionPort (IfcRelConnectsPortToElement) : Indicates ports on the element which may be connected to other elements for flow distribution of solids, liquids, gas, or electricity. Standard port names, types, and directions are defined at subtypes. IfcDistributionControlElement (IfcRelFlowControlElements) : Indicates a control element that senses or controls some aspect of the flow element, such as a level sensor for a tank or an actuator for a valve.
Assignment Use Definition The IfcDistributionFlowElement may be assigned to the following entities using relationships as indicated:
IfcDistributionSystem (IfcRelAssignsToGroup): Indicates a system containing interconnected devices. IfcPerformanceHistory (IfcRelAssignsToControl): Indicates realtime or historical infomation captured for the device.
The IfcDistributionFlowElement may have assignments of its own using the IfcRelAssignsToProduct relationship where RelatingProduct refers to the IfcDistributionFlowElement and RelatedObjects contains one or more objects of the following types:
IfcTask: Indicates tasks used to purchase, install, renovate, demolish, operate, or otherwise act upon the element. If the element has a type, available task types are assigned to the element type. IfcProcedure: Indicates procedures used to operate the element. If the element has a type, available procedure types are assigned to the element type. IfcEvent: Indicates events raised by the element, sequenced by procedures to be followed. If the element has a type, available event types are assigned to the element type.
Material Use Definition The material of the IfcDistributionFlowElement is defined using one of the following entities:
IfcMaterialProfileSetUsage: For parametric segments, this defines the cross section and alignment to the ‘Axis’ representation, from which the ‘Body’ representation may be generated.
IfcMaterialProfileSet: For non-parametric segments (having fixed length or path), this may define the cross section for analysis purposes, however the ‘Body’ representation is independently generated.
IfcMaterialConstituentSet: For elements containing multiple materials, this indicates materials at named aspects.
IfcMaterial: For elements comprised of a single material, this indicates the material.
The material is attached by the RelatingMaterial attribute on the IfcRelAssociatesMaterial relationship. It is accessible by the HasAssociations inverse attribute. Material information can also be given at the IfcDistributionFlowElementType, defining the common attribute data for all occurrences of the same type. Standard names and material types are defined at subtypes.
Representation Use Definition The following shape representations are supported for subtypes of IfcDistributionFlowElement, distinguished by IfcShapeRepresentation.RepresentationIdentifier:
‘Axis’: Represents the 3D flow path of the item having IfcShapeRepresentation.RepresentationType of ‘Curve3D’ and containing a single IfcBoundedCurve subtype such as IfcPolyline, IfcTrimmedCurve, or IfcCompositeCurve. For elements containing directional ports (IfcDistributionPort with FlowDirection of SOURCE or SINK), the direction of the curve indicates direction of flow where a SINK port is positioned at the start of the curve and a SOURCE port is positioned at the end of the curve. This representation is most applicable to flow segments (pipes, ducts, cables), however may be used at other elements to define a primary flow path if applicable.
‘Footprint’: Represents the 2D footprint outline of the item having IfcShapeRepresentation.RepresentationType of ‘GeometricCurveSet’ and containing a single IfcGeometricCurveSet consisting of one or more IfcCurve subtypes such as IfcPolyline, IfcTrimmedCurve, IfcCompositeCurve, or IfcCircle.
‘Body’: Represents the 3D shape of the item having IfcShapeRepresentation.RepresentationType of ‘SurfaceModel’, ‘SolidModel’, or any solid model specializations including ‘Brep’, ‘AdvancedBrep’, ‘SweptSolid’, ‘AdvancedSweptSolid’, ‘CSG’, ‘Clipping’, or ‘SectionedSpine’).
‘Clearance’: Represents the 3D clearance volume of the item having RepresentationType of ‘Surface3D’. Such clearance region indicates space that should not intersect with the ‘Body’ representation of other elements, though may intersect with the ‘Clearance’ representation of other elements. The particular use of clearance space may be for safety, maintenance, or other purpose.
‘Lighting’: Represents the light emission of the item having IfcShapeRepresentation.RepresentationType of ‘LightSource’ and containing one or more IfcLightSource subtypes. This representation is most applicable to lamps and light fixtures, however may be used at other elements that emit light.
For all representations, if a IfcDistributionFlowElement occurrence is defined by a IfcDistributionFlowElementType having a representation of the same identifier, then ‘MappedRepresentation’ should be used at the occurrence unless overridden.
If materials are defined, geometry of each representation (most typically the ‘Body’ representation) may be organized into shape aspects where styles may be derived by correlating IfcShapeAspect.Name to a corresponding material (IfcMaterialConstituent.Name or IfcMaterialProfile.Name).
Representations are further defined at subtypes; for example, parametric flow segments align material profiles with the ‘Axis’ representation.
Subclassed by Ifc4x1::IfcDistributionChamberElement, Ifc4x1::IfcEnergyConversionDevice, Ifc4x1::IfcFlowController, Ifc4x1::IfcFlowFitting, Ifc4x1::IfcFlowMovingDevice, Ifc4x1::IfcFlowSegment, Ifc4x1::IfcFlowStorageDevice, Ifc4x1::IfcFlowTerminal, Ifc4x1::IfcFlowTreatmentDevice
Public Types
-
typedef IfcTemplatedEntityList<IfcDistributionFlowElement>
list
¶
Public Functions
-
IfcTemplatedEntityList<IfcRelFlowControlElements>::ptr
HasControlElements
() const¶
-
IfcDistributionFlowElement
(IfcEntityInstanceData *e)¶
-
IfcDistributionFlowElement
(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)¶
-
typedef IfcTemplatedEntityList<IfcDistributionFlowElement>