Geometrische Repräsentation  Kontext  
Geometric Representation Context 
Item  SPF  XML  Change  Description 

IFC4 Addendum 1  
IfcGeometricRepresentationContext  
Precision  MODIFIED  Type changed from REAL to IfcReal.  
HasCoordinateOperation  ADDED 
The IfcGeometricRepresentationContext defines the context that applies to several shape representations of products within a project. It defines the type of the context in which the shape representation is defined, and the numeric precision applicable to the geometric representation items defined in this context. In addition it can be used to offset the project coordinate system from a global point of origin, using the WorldCoordinateSystem attribute. The main representation context may also provide the true north direction, see Figure 437.
The TrueNorth attribute should be provided, if the y axis of the WorldCoordinateSystem does not point to the global northing. Direction of the true north, or geographic northing direction, relative to the underlying project coordinate system as established by the attribute WorldCoordinateSystem. It is given by a 2 dimensional direction within the xyplane of the project coordinate system. If not resent, it defaults to [0.,1.]  i.e. the positive Y axis of the project coordinate system equals the geographic northing direction. The direction is provided within project coordinate system and identifies the true north direction. The "true North as seen in CAD" within the figure on the left shows the correct interpretation of the TrueNorth direction If a conversion to a geographic coordinate system is included by virtue of the HasCoordinateOperation attribute, then the TrueNorth attribute shall be omitted or included only for informational purposes. It shall not be added to any transformation already applied by an IfcCoordinateOperation. 

Figure 437 — Definition of the true north direction 
The use of one instance of IfcGeometricRepresentationContext to represent the model (3D) view is mandatory, the use of a second instance of IfcGeometricRepresentationContext to represent the plan (2D) view is optional (but needs to be given, if there are scale dependent plan views), the additional scale or view dependent contexts need to be handled by using the subtype IfcGeometricRepresentationSubContext pointing to the model view (or the plan view) as the ParentContext. See Figure 438 for an example using geometric representation contexts for 3D and 2D with assigned sub contexts.
NOTE The inherited attribute ContextType shall have one of the following recognized values: 'Model', 'Plan', 'NotDefined'.
Use of representation contexts defined at IfcProject for 3D model and 2D plan context, including sub context definitions for different target scales. There shall always be a maximum of one geometric representation context for 2D and for 3D coordinate space. 

Figure 438 — Example of using geometric representation contexts 
NOTE Definition according to ISO/CD 1030342:1992
A geometric representation context is a representation context in which the geometric representation items are geometrically founded.
NOTE Entity adapted from geometric_representation_context defined in ISO 1030342.
HISTORY New entity in IFC2.0.
IFC2x3 CHANGE Applicable values for ContextType are only 'Model', 'Plan', and 'NotDefined'. All other contexts are now handled by IfcGeometricRepresentationSubContext.
IFC4 CHANGE Mapping to Geographic coordinate system added by inverse attribute HasCoordinateOperation.
#  Attribute  Type  Cardinality  Description  G 

3  CoordinateSpaceDimension  IfcDimensionCount 
The integer dimension count of the coordinate space modeled in a geometric representation context.
 X  
4  Precision  IfcReal  ?  Value of the model precision for geometric models. It is a double value (REAL), typically in 1E5 to 1E8 range, that indicates the tolerance under which two given points are still assumed to be identical. The value can be used e.g. to sets the maximum distance from an edge curve to the underlying face surface in brep models.  X 
5  WorldCoordinateSystem  IfcAxis2Placement 
Establishment of the engineering coordinate system (often referred to as the world coordinate system in CAD) for all representation contexts used by the project.
NOTE It can be used to provide better numeric stability if the placement of the building(s) is far away from the origin. In most cases however it would be set to origin: (0.,0.,0.) and directions x(1.,0.,0.), y(0.,1.,0.), z(0.,0.,1.).If an geographic placement is provided using IfcMapConversion then the WorldCoordinateSystem atttibute is used to define the offset between the zero point of the local engineering coordinate system and the geographic reference point to which the IfcMapConversion offset relates. In preferred practise both points (also called "project base point" and "survey point") should be coincidental. However it is possible to offset the geographic reference point from the local zero point.  X  
6  TrueNorth  IfcDirection  ? 
Direction of the true north, or geographic northing direction, relative to the underlying project coordinate system. It is given by a 2 dimensional direction within the xyplane of the project coordinate system. If not present, it defaults to 0. 1., meaning that the positive Y axis of the project coordinate system equals the geographic northing direction.
NOTE If a geographic placement is provided using IfcMapConversion then the true north is for information only. In case of inconsistency, the value provided with IfcMapConversion shall take precedence.  X 
HasSubContexts  IfcGeometricRepresentationSubContext @ParentContext  S[0:?]  The set of IfcGeometricRepresentationSubContexts that refer to this IfcGeometricRepresentationContext.  X  
HasCoordinateOperation  IfcCoordinateOperation @SourceCRS  S[0:1]  Indicates conversion between coordinate systems. In particular it refers to an IfcCoordinateOperation between a Geographic map coordinate reference system, and the engineering coordinate system of this construction project. If there is more then one IfcGeometricRepresentationContext provided to the IfcProject then all contexts shall have an identical instance of IfcCoordinateOperation as HasCoordinateOperation refering to the same instance of IfcCoordinateReferenceSystem.  X 
Rule  Description 

North2D  The TrueNorth direction, if provided, shall be a twodimensional direction. 
#  Attribute  Type  Cardinality  Description  G 

IfcRepresentationContext  
1  ContextIdentifier  IfcLabel  ?  The optional identifier of the representation context as used within a project.  X 
2  ContextType  IfcLabel  ?  The description of the type of a representation context. The supported values for context type are to be specified by implementers agreements.  X 
RepresentationsInContext  IfcRepresentation @ContextOfItems  S[0:?]  All shape representations that are defined in the same representation context.  X  
IfcGeometricRepresentationContext  
3  CoordinateSpaceDimension  IfcDimensionCount 
The integer dimension count of the coordinate space modeled in a geometric representation context.
 X  
4  Precision  IfcReal  ?  Value of the model precision for geometric models. It is a double value (REAL), typically in 1E5 to 1E8 range, that indicates the tolerance under which two given points are still assumed to be identical. The value can be used e.g. to sets the maximum distance from an edge curve to the underlying face surface in brep models.  X 
5  WorldCoordinateSystem  IfcAxis2Placement 
Establishment of the engineering coordinate system (often referred to as the world coordinate system in CAD) for all representation contexts used by the project.
NOTE It can be used to provide better numeric stability if the placement of the building(s) is far away from the origin. In most cases however it would be set to origin: (0.,0.,0.) and directions x(1.,0.,0.), y(0.,1.,0.), z(0.,0.,1.).If an geographic placement is provided using IfcMapConversion then the WorldCoordinateSystem atttibute is used to define the offset between the zero point of the local engineering coordinate system and the geographic reference point to which the IfcMapConversion offset relates. In preferred practise both points (also called "project base point" and "survey point") should be coincidental. However it is possible to offset the geographic reference point from the local zero point.  X  
6  TrueNorth  IfcDirection  ? 
Direction of the true north, or geographic northing direction, relative to the underlying project coordinate system. It is given by a 2 dimensional direction within the xyplane of the project coordinate system. If not present, it defaults to 0. 1., meaning that the positive Y axis of the project coordinate system equals the geographic northing direction.
NOTE If a geographic placement is provided using IfcMapConversion then the true north is for information only. In case of inconsistency, the value provided with IfcMapConversion shall take precedence.  X 
HasSubContexts  IfcGeometricRepresentationSubContext @ParentContext  S[0:?]  The set of IfcGeometricRepresentationSubContexts that refer to this IfcGeometricRepresentationContext.  X  
HasCoordinateOperation  IfcCoordinateOperation @SourceCRS  S[0:1]  Indicates conversion between coordinate systems. In particular it refers to an IfcCoordinateOperation between a Geographic map coordinate reference system, and the engineering coordinate system of this construction project. If there is more then one IfcGeometricRepresentationContext provided to the IfcProject then all contexts shall have an identical instance of IfcCoordinateOperation as HasCoordinateOperation refering to the same instance of IfcCoordinateReferenceSystem.  X 
<xs:element name="IfcGeometricRepresentationContext" type="ifc:IfcGeometricRepresentationContext" substitutionGroup="ifc:IfcRepresentationContext" nillable="true"/>
<xs:complexType name="IfcGeometricRepresentationContext">
<xs:complexContent>
<xs:extension base="ifc:IfcRepresentationContext">
<xs:sequence>
<xs:element name="WorldCoordinateSystem" minOccurs="0">
<xs:complexType>
<xs:group ref="ifc:IfcAxis2Placement"/>
</xs:complexType>
</xs:element>
<xs:element name="TrueNorth" type="ifc:IfcDirection" nillable="true" minOccurs="0"/>
<xs:element name="HasSubContexts" nillable="true" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element ref="ifc:IfcGeometricRepresentationSubContext" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute ref="ifc:itemType" fixed="ifc:IfcGeometricRepresentationSubContext"/>
<xs:attribute ref="ifc:cType" fixed="set"/>
<xs:attribute ref="ifc:arraySize" use="optional"/>
</xs:complexType>
</xs:element>
<xs:element name="HasCoordinateOperation" type="ifc:IfcCoordinateOperation" nillable="true" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="CoordinateSpaceDimension" type="ifc:IfcDimensionCount" use="optional"/>
<xs:attribute name="Precision" type="ifc:IfcReal" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
ENTITY IfcGeometricRepresentationContext
SUPERTYPE OF(IfcGeometricRepresentationSubContext)
SUBTYPE OF (IfcRepresentationContext);
CoordinateSpaceDimension : IfcDimensionCount;
Precision : OPTIONAL IfcReal;
WorldCoordinateSystem : IfcAxis2Placement;
TrueNorth : OPTIONAL IfcDirection;
INVERSE
HasSubContexts : SET [0:?] OF IfcGeometricRepresentationSubContext FOR ParentContext;
HasCoordinateOperation : SET [0:1] OF IfcCoordinateOperation FOR SourceCRS;
WHERE
North2D : NOT(EXISTS(TrueNorth)) OR (HIINDEX(TrueNorth.DirectionRatios) = 2);
END_ENTITY;
References: IfcGeometricRepresentationSubContext IfcCoordinateReferenceSystemSelect