Navigation
Navigate Navigate Navigate Navigate Navigate Navigate Navigate Navigate

IfcShapeRepresentation

Definition from ISO/CD 10303-42:1992: The shape representation is a specific kind of representation that represents a shape.

Definition from IAI: The IfcShapeRepresentation represents the concept of a particular geometric representation of a product or a product component within a specific geometric representation context. The inherited attribute RepresentationType is used to define the geometric model used for the shape representation, the inherited attribute RepresentationIdentifier is used to denote the part of the representation captured by the IfcShapeRepresentation (e.g. Axis, Body, etc.).

Several representation types for shape representation are included as predefined types:

Curve2D 2 dimensional curves
GeometricSet points, curves, surfaces (2 or 3 dimensional)
  GeometricCurveSet points, curves (2 or 3 dimensional)
SurfaceModel face based and shell based surface model
SolidModel including swept solid, Boolean results and Brep bodies
more specific types are:
  SweptSolid swept area solids, by extrusion and revolution
  Brep faceted Brep's with and without voids
  CSG Boolean results of operations between solid models, half spaces and Boolean results
  Clipping Boolean differences between swept area solids, half spaces and Boolean results
  AdvancedSweptSolid swept area solids created by sweeping a profile along a directrix
additional types some additional representation types are given:
  BoundingBox simplistic 3D representation by a bounding box
  SectionedSpine cross section based representation of a spine curve and planar cross sections. It can represent a surface or a solid and the interpolations of the between the cross sections is not defined
  MappedRepresentation representation based on mapped item(s), referring to a representation map. Note: it can be seen as an inserted block reference. The shape representation of the mapped item has a representation type declaring the type of its representation items.

Table 1: string values for the inherited attribute 'RepresentationType'.

NOTE: The definition of this entity relates to the STEP entity shape_representation. Please refer to ISO/IS 10303-41:1994 for the final definition of the formal standard.
HISTORY: New entity in IFC Release 1.5.

EXPRESS specification:

ENTITY IfcShapeRepresentation
SUBTYPE OF ( IfcShapeModel);
WHERE
WR21  :  'IFCREPRESENTATIONRESOURCE.IFCGEOMETRICREPRESENTATIONCONTEXT' IN TYPEOF(SELF\IfcRepresentation.ContextOfItems);
WR22  :  SIZEOF(QUERY(temp <* Items | ('IFCTOPOLOGYRESOURCE.IFCTOPOLOGICALREPRESENTATIONITEM' IN TYPEOF(temp)) AND (NOT(SIZEOF( ['IFCTOPOLOGYRESOURCE.IFCVERTEXPOINT', 'IFCTOPOLOGYRESOURCE.IFCEDGECURVE', 'IFCTOPOLOGYRESOURCE.IFCFACESURFACE'] * TYPEOF(temp)) = 1)) )) = 0;
WR23  :  EXISTS(SELF\IfcRepresentation.RepresentationType);
WR24  :  IfcShapeRepresentationTypes(SELF\IfcRepresentation.RepresentationType, SELF\IfcRepresentation.Items);
END_ENTITY;

Formal Propositions:

WR21  :  The context to which the IfcShapeRepresentation is assign, shall be of type IfcGeometricRepresentationContext.
WR22  :  No topological representation item shall be directly used for shape representations, with the exception of IfcVertexPoint, IfcEdgeCurve, IfcFaceSurface.
WR23  :  A representation type should be given to the shape representation.
WR24  :  Checks the proper use of Items according to the RepresentationType.

Inheritance graph

ENTITY IfcShapeRepresentation;
ENTITY IfcRepresentation;
ContextOfItems  :  IfcRepresentationContext;
RepresentationIdentifier  :  OPTIONAL IfcLabel;
RepresentationType  :  OPTIONAL IfcLabel;
Items  :  SET [1:?] OF IfcRepresentationItem;
INVERSE
RepresentationMap  :  SET [0:1] OF IfcRepresentationMap FOR MappedRepresentation;
LayerAssignments  :  SET OF IfcPresentationLayerAssignment FOR Assigneditems;
OfProductRepresentation  :  SET [0:1] OF IfcProductRepresentation FOR Representations;
ENTITY IfcShapeModel;
INVERSE
OfShapeAspect  :  SET [0:1] OF IfcShapeAspect FOR ShapeRepresentations;
ENTITY IfcShapeRepresentation;
END_ENTITY;