Class Ifc4x2::IfcVoidingFeature

Nested Relationships

This class is a nested type of Struct Ifc4x2.

Inheritance Relationships

Base Type

Class Documentation

class Ifc4x2::IfcVoidingFeature : public Ifc4x2::IfcFeatureElementSubtraction

Definition from IAI: A voiding feature is a modification of an element which reduces its volume. Such a feature may be manufactured in different ways, for example by cutting, drilling, or milling of members made of various materials, or by inlays into the formwork of cast members made of materials such as concrete.

The standard use of instances of IfcVoidingFeature is as a part of element type objects (instances of subtypes of IfcElementType). The part–whole relationship is established by an aggregation relationship object, expressing the decomposition of an element type into one or more additive elements (element parts) and zero or more feature elements.

HISTORY New type in IFC 2x4.

Containment Use Definition:

Voiding features shall have no spatial containment relationship to the spatial structure since they are dependent on element types without spatial containment relationships or on an element occurrence with own spatial containment relationship.

The SELF\IfcElement.ContainedInStructure relationship shall be NIL.

Geometry use definition:

The geometric representation of IfcVoidingFeatureElement is given by the IfcProductDefinitionShape, allowing multiple geometric representation.

Local Placement

The local placement for IfcVoidingFeatureElement 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.

In case of features which are part of an element type, absolute placement into the type object’s implied coordinate system shall be used. In case of features which are voiding an element occurrence, the PlacementRelTo relationship of IfcLocalPlacement shall point to the local placement of the respective element.

Shape representation

Different shape representations may be used, depending on the nature of the feature and information requirements:

Symbolic representations, such as an axis representation, may be used for simple shapes such as holes or edge features. Volumetric representations by means of subtypes of IfcSweptSurface or of IfcCsgPrimitive3D may be used to semi-parametrically model the actual volume of the void created by the feature. The objects within the shape model of the feature’s shape representation can be included into a CSG model within a representation map of the parent element type. Surface representations of cutting planes by means of IfcShellBasedSurfaceModel. The faces within the surface model may be included into a B-Rep model within a representation map of the parent element type.

Higher-level parameters (geometric and non-geometric) may be provided by property sets based on local agreements.

Public Types

typedef IfcTemplatedEntityList<IfcVoidingFeature> list

Public Functions

bool hasPredefinedType() const

Whether the optional attribute PredefinedType is defined for this IfcVoidingFeature.

::Ifc4x2::IfcVoidingFeatureTypeEnum::Value PredefinedType() const

Qualifies the feature regarding its shape and configuration relative to the voided element.

void setPredefinedType(::Ifc4x2::IfcVoidingFeatureTypeEnum::Value v)
const IfcParse::entity &declaration() const
IfcVoidingFeature(IfcEntityInstanceData *e)
IfcVoidingFeature(std::string v1_GlobalId, ::Ifc4x2::IfcOwnerHistory *v2_OwnerHistory, boost::optional<std::string> v3_Name, boost::optional<std::string> v4_Description, boost::optional<std::string> v5_ObjectType, ::Ifc4x2::IfcObjectPlacement *v6_ObjectPlacement, ::Ifc4x2::IfcProductRepresentation *v7_Representation, boost::optional<std::string> v8_Tag, boost::optional<::Ifc4x2::IfcVoidingFeatureTypeEnum::Value> v9_PredefinedType)

Public Static Functions

const IfcParse::entity &Class()