8.18.3.9 IfcProductDefinitionShape
8.18.3.9.1 Semantic definition
The IfcProductDefinitionShape defines all shape relevant information about an IfcProduct. It allows for multiple geometric shape representations of the same product. The shape relevant information includes:
- the shape representation including geometric representation items (for 3D solids, 2D annotations, etc.) and:
- associated presentation information (line color, line type, surface rendering properties)
- assignment to presentation layers (CAD layers for visibility control)
- or the topological representation items for connectivity systems (vertex, edge, face representations) that may include geometric representation items (vertex points, edge curves, face surfaces)
8.18.3.9.2 Entity inheritance
8.18.3.9.3 Attributes
# | Attribute | Type | Description |
---|---|---|---|
IfcProductRepresentation (3) | |||
Click to show 3 hidden inherited attributes Click to hide 3 inherited attributes | |||
IfcProductDefinitionShape (2) | |||
ShapeOfProduct | SET [1:?] OF IfcProduct FOR Representation |
The IfcProductDefinitionShape shall be used to provide a representation for a one or more instances of IfcProduct. |
|
HasShapeAspects | SET [0:?] OF IfcShapeAspect FOR PartOfProductDefinitionShape |
Reference to the shape aspect that represents part of the shape or its feature distinctively. |
8.18.3.9.4 Formal propositions
Name | Description | ||||||
---|---|---|---|---|---|---|---|
OnlyShapeModel |
Only representations of type IfcShapeModel, i.e. either IfcShapeRepresentation or IfcTopologyRepresentation should be used to represent a product through the IfcProductDefinitionShape.__ |
||||||
|
8.18.3.9.5 Formal representation
ENTITY IfcProductDefinitionShape SUBTYPE OF (IfcProductRepresentation); INVERSE ShapeOfProduct : SET [1:?] OF IfcProduct FOR Representation; HasShapeAspects : SET [0:?] OF IfcShapeAspect FOR PartOfProductDefinitionShape; WHERE OnlyShapeModel : SIZEOF(QUERY(temp <* Representations | (NOT('IFC4X3_DEV_738df036.IFCSHAPEMODEL' IN TYPEOF(temp))) )) = 0; END_ENTITY;