Class Ifc4x1::IfcRelProjectsElement

Nested Relationships

This class is a nested type of Struct Ifc4x1.

Inheritance Relationships

Base Type

Class Documentation

class Ifc4x1::IfcRelProjectsElement : public Ifc4x1::IfcRelDecomposes

The IfcRelProjectsElement is an objectified relationship between an element and one projection element that creates a modifier to the shape of the element. The relationship is defined to be a 1:1 relationship, if an element has more than one projection, several relationship objects have to be used, each pointing to a different projection element. The IfcRelProjectsElement establishes an aggregation relationship between the main element and a sub ordinary addition feature.

NOTE In contrary the IfcRelAggregates relationship established an aggregation of equal parts to a whole.

The IfcRelProjectsElement implies a Boolean operation of addition for the geometric bodies of the element and the feature element. As with all decomposition relationships it determines:

existence dependency - the RelatedFeatureElement cannot exist without the RelatingElement hierarchical and non-cyclical relationship - the IfcRelProjectsElement can only alter a single IfcElement no spatial containment - the IfcFeatureElementAddition as related element never participates in the hiearchical spatial containment relationship IfcRelContainedInSpatialStructure

HISTORY New entity in Release IFC2x Edition 2. IFC2x4 CHANGE Supertype changed to IfcRelDecomposes.

Public Types

typedef IfcTemplatedEntityList<IfcRelProjectsElement> list

Public Functions

::Ifc4x1::IfcElement *RelatingElement() const

Element at which a projection is created by the associated IfcProjectionElement.

void setRelatingElement(::Ifc4x1::IfcElement *v)
::Ifc4x1::IfcFeatureElementAddition *RelatedFeatureElement() const

Reference to the IfcFeatureElementAddition that defines an addition to the volume of the element, by using a Boolean addition operation. An example is a projection at the associated element.

void setRelatedFeatureElement(::Ifc4x1::IfcFeatureElementAddition *v)
const IfcParse::entity &declaration() const
IfcRelProjectsElement(IfcEntityInstanceData *e)
IfcRelProjectsElement(std::string v1_GlobalId, ::Ifc4x1::IfcOwnerHistory *v2_OwnerHistory, boost::optional<std::string> v3_Name, boost::optional<std::string> v4_Description, ::Ifc4x1::IfcElement *v5_RelatingElement, ::Ifc4x1::IfcFeatureElementAddition *v6_RelatedFeatureElement)

Public Static Functions

const IfcParse::entity &Class()