IfcShapeRepresentation

Natural language names
Form - Repräsentation
Shape Representation
Représentation de forme
Semantic definitions at the entity
Entity definition

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 (e.g. 'SweptSolid', or 'Brep'), the inherited attribute RepresentationIdentifier is used to denote the kind of the representation captured by the IfcShapeRepresentation (e.g. 'Axis', 'Body', etc.).

Several representation identifiers for shape representation are included as predefined values for RepresentationIdentifier. Table 705 indicates the defined list of values for RepresentationIdentifier.

Identifier  
CoG Point to identify the center of gravity of an element. This value can be used for validation purposes.
Box Bounding box as simplified 3D box geometry of an element
Annotation 2D annotations not representing elements
Axis 2D or 3D Axis, or single line, representation of an element
FootPrint 2D Foot print, or double line, representation of an element, projected to ground view
Profile 3D line representation of a profile being planar, e.g. used for door and window outlines
Surface 3D Surface representation, e.g. of an analytical surface, of an elementplane)
Reference 3D representation that is not part of the Body representation. This is used, e.g., for opening geometries, if there are to be excluded from an implicit Boolean operation.
Body 3D Body representation, e.g. as wireframe, surface, or solid model, of an element
Clearance 3D clearance volume of the element. Such clearance region indicates space that should not intersect with the 'Body' representation of other elements, though may intersect with the 'Clearance' representation of other elements.
Lighting Representation of emitting light as a light source within a shape representation

Table 705 — Representation identifiers

Several representation types for shape representation are included as predefined values for RepresentationType. Table 706 indicates the defined list of values for RepresentationType.

Type  
Point 2 or 3 dimensional point(s)
PointCloud 3 dimensional points prepresented by a point list
Curve 2 or 3 dimensional curve(s)
Curve2D 2 dimensional curve(s)
Curve3D 3 dimensional curve(s)
Surface 2 or 3 dimensional surface(s)
Surface2D 2 dimensional surface(s) (a region on ground view)
Surface3D 3 dimensional surface(s)
FillArea 2D region(s) represented as a filled area (hatching)
Text text defined as text literals
AdvancedSurface 3 dimensional b-spline surface(s)
GeometricSet points, curves, surfaces (2 or 3 dimensional)
GeometricCurveSet points, curves (2 or 3 dimensional)
Annotation2D points, curves (2 or 3 dimensional), hatches and text (2 dimensional)
SurfaceModel face based and shell based surface model(s), or tessellated surface model(s)
Tessellation tessellated surface representation(s) only
SolidModel including swept solid, Boolean results and Brep bodies; more specific types are:
SweptSolid swept area solids, by extrusion and revolution, excluding tapered sweeps
AdvancedSweptSolid swept area solids created by sweeping a profile along a directrix, and tapered sweeps
Brep faceted Brep's with and without voids
AdvancedBrep Brep's based on advanced faces, with b-spline surface geometry, 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

additional types

some additional representation types are provided:
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
LightSource light source with (depending on type) position, orientation, light colour, intensity and attenuation
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 706 — Representation types

NOTE  The definition relates to shape_representation defined in ISO 10303-41.

HISTORY  New entity in IFC1.5.

IFC4 CHANGE  The RepresentationType's 'Point', 'PointCloud', 'Curve', 'Curve3D', 'Surface', 'Surface2D', 'Surface3D', 'FillArea', 'Text', 'Tessellation', 'AdvancedBrep', 'LightSource', and the RepresentationIdentifier 'Body-FallBack', 'Profile', 'Clearance', 'Lighting' have been added.

Formal Propositions
RuleDescription
CorrectContextThe context to which the IfcShapeRepresentation is assign, shall be of type IfcGeometricRepresentationContext.
NoTopologicalItemNo topological representation item shall be directly used for shape representations, with the exception of IfcVertexPoint, IfcEdgeCurve, IfcFaceSurface.
HasRepresentationTypeA representation type should be provided for the shape representation.
HasRepresentationIdentifierA representation identifier should be provided for the shape representation.
CorrectItemsForTypeChecks the proper use of Items according to the RepresentationType.
Inherited definitions from supertypes
Entity inheritance IfcShapeModel IfcRepresentation
Attribute inheritance
#AttributeTypeCardinalityDescriptionG
IfcRepresentation
1ContextOfItemsIfcRepresentationContext Definition of the representation context for which the different subtypes of representation are valid. X
2RepresentationIdentifierIfcLabel? The optional identifier of the representation as used within a project. X
3RepresentationTypeIfcLabel? The description of the type of a representation context. The representation type defines the type of geometry or topology used for representing the product representation. More information is given at the subtypes IfcShapeRepresentation and IfcTopologyRepresentation.
The supported values for context type are to be specified by implementers agreements.
X
4ItemsIfcRepresentationItemS[1:?] Set of geometric representation items that are defined for this representation. X
RepresentationMapIfcRepresentationMap
@MappedRepresentation
S[0:1]Use of the representation within an IfcRepresentationMap. If used, this IfcRepresentation may be assigned to many representations as one of its Items using an IfcMappedItem. Using IfcRepresentationMap is the way to share one representation (often of type IfcShapeRepresentation) by many products.
IFC2x3 CHANGE  The inverse attribute LayerAssignments has been added
X
LayerAssignmentsIfcPresentationLayerAssignment
@AssignedItems
S[0:?]Assignment of the whole representation to a single or multiple layer(s). The LayerAssigments can be overridden by LayerAssigments of the IfcRepresentationItem's within the list of Items.
NOTE  Implementation agreements can restrict the maximum number of layer assignments to 1.
IFC2x3 CHANGE  The inverse attribute LayerAssignments has been added
X
OfProductRepresentationIfcProductRepresentation
@Representations
S[0:?]Reference to the product representations to which this individual representation applies. In most cases it is the reference to one or many product shapes, to which this shape representation is applicable.
IFC4 CHANGE Inverse relationship cardinality relaxed to be 0:N.
X
IfcShapeModel
OfShapeAspectIfcShapeAspect
@ShapeRepresentations
S[0:1]Reference to the shape aspect, for which it is the shape representation. X
IfcShapeRepresentation
Formal representations
XML Specification
 <xs:element name="IfcShapeRepresentation" type="ifc:IfcShapeRepresentation" substitutionGroup="ifc:IfcShapeModel" nillable="true"/>
 <xs:complexType name="IfcShapeRepresentation">
  <xs:complexContent>
   <xs:extension base="ifc:IfcShapeModel"/>
  </xs:complexContent>
 </xs:complexType>
EXPRESS Specification
ENTITY IfcShapeRepresentation
 SUBTYPE OF (IfcShapeModel);
 WHERE
  CorrectContext : 'IFCREPRESENTATIONRESOURCE.IfcGeometricRepresentationContext'
IN TYPEOF(SELF\IfcRepresentation.ContextOfItems);
  NoTopologicalItem : SIZEOF(QUERY(temp <* Items |
('IFCTOPOLOGYRESOURCE.IfcTopologicalRepresentationItem' IN TYPEOF(temp))
AND (NOT(SIZEOF(
['IFCTOPOLOGYRESOURCE.IfcVertexPoint',
'IFCTOPOLOGYRESOURCE.IfcEdgeCurve',
'IFCTOPOLOGYRESOURCE.IfcFaceSurface'] * TYPEOF(temp)) = 1))
)) = 0;
  HasRepresentationType : EXISTS(SELF\IfcRepresentation.RepresentationType);
  HasRepresentationIdentifier : EXISTS(SELF\IfcRepresentation.RepresentationIdentifier);
  CorrectItemsForType : IfcShapeRepresentationTypes(SELF\IfcRepresentation.RepresentationType, SELF\IfcRepresentation.Items);
END_ENTITY;

Link to EXPRESS-G diagram EXPRESS-G diagram

Link to this page  Link to this page