Class Ifc2x3::IfcShapeAspect

Nested Relationships

This class is a nested type of Struct Ifc2x3.

Inheritance Relationships

Base Type

Class Documentation

class Ifc2x3::IfcShapeAspect : public IfcUtil::IfcBaseEntity

Definition from ISO/CD 10303-41:1992: The shape aspect is an identifiable element of the shape of a product.

IfcShapeAspect allows for grouping of shape representation items that represent aspects (or components) of the shape of a product. Thereby shape representations of components of the product shape represent a distinctive part to a product that can be explicitly addressed.

NOTEThe definition of this class relates to the ISO 10303 entity shape_aspect. Please refer to ISO/IS 10303-41:1994 for the final definition of the formal standard.

HISTORY New Entity in IFC Release 2.0

IFC 2x4 CHANGE Attribute PartOfProductDefinitionShape declared OPTIONAL with upward compatibility for file based exchange.

Informal propositions:

If ShapeRepresentations points to shape representations that are part of an IfcProductDefinitionShape, PartOfProductDefinitionShape must refer to this instance of IfcProductDefinitionShape.

NOTE PartOfProductDefinitionShape is only to be omitted if the shape representations are attached to an IfcRepresentationMap. This enables the use of IfcShapeAspect with IfcRepresentationMap’s that are used by an IfcTypeProduct through the RepresentationMaps attribute.

Public Types

typedef IfcTemplatedEntityList<IfcShapeAspect> list

Public Functions

IfcTemplatedEntityList<::Ifc2x3::IfcShapeModel>::ptr ShapeRepresentations() const

List of shape representations. Each member defines a valid representation of a particular type within a particular representation context as being an aspect (or part) of a product definition. IFC2x Edition 3 CHANGE The data type has been changed from IfcShapeRepresentation to IfcShapeModel with upward compatibility

void setShapeRepresentations(IfcTemplatedEntityList<::Ifc2x3::IfcShapeModel>::ptr v)
bool hasName() const

Whether the optional attribute Name is defined for this IfcShapeAspect.

std::string Name() const

The word or group of words by which the shape aspect is known. It is a tag to indicate the particular semantic of a component within the product definition shape, used to provide meaning. Example: use the tag “Glazing” to define which component of a window shape defines the glazing area.

void setName(std::string v)
bool hasDescription() const

Whether the optional attribute Description is defined for this IfcShapeAspect.

std::string Description() const

The word or group of words that characterize the shape aspect. It can be used to add additional meaning to the name of the aspect.

void setDescription(std::string v)
bool ProductDefinitional() const
void setProductDefinitional(bool v)
::Ifc2x3::IfcProductDefinitionShape *PartOfProductDefinitionShape() const

Reference to the product definition shape of which this class is an aspect.

void setPartOfProductDefinitionShape(::Ifc2x3::IfcProductDefinitionShape *v)
const IfcParse::entity &declaration() const
IfcShapeAspect(IfcEntityInstanceData *e)
IfcShapeAspect(IfcTemplatedEntityList<::Ifc2x3::IfcShapeModel>::ptr v1_ShapeRepresentations, boost::optional<std::string> v2_Name, boost::optional<std::string> v3_Description, bool v4_ProductDefinitional, ::Ifc2x3::IfcProductDefinitionShape *v5_PartOfProductDefinitionShape)

Public Static Functions

const IfcParse::entity &Class()