ABSTRACT This definition may not be instantiated
IfcCoordinateOperation is an abstract supertype to handle any operation (transformation or conversion) between two coordinate reference systems (CRSs).
By convention, a coordinate operation is given between a source CRS, being the more local (or child) CRS; and target CRS, being the more remote (or parent) CRS.
An IfcCoordinateOperation allows to connect: - an IfcGeometricRepresentationContext – a reference system of a virtual model - to an IfcCoordinateReferenceSystem – the coordinate system which is related to the real world by datums.
Coordinate conversion – mathematical operation on coordinates that does not include any change of datum. The best-known example of a coordinate conversion is a map projection. The parameters describing coordinate conversions are defined rather than empirically derived. Note that some conversions have no parameters.
Coordinate transformation – mathematical operation on coordinates that usually includes a change of datum. The parameters of a coordinate transformation are empirically derived from data containing the coordinates of a series of points in both coordinate reference systems. This computational process is usually ‘over-determined’, allowing derivation of error (or accuracy) estimates for the transformation. Also, the stochastic nature of the parameters may result in multiple (different) versions of the same coordinate transformation. Because of this several transformations may exist for a given pair of coordinate reference systems, differing in their transformation method, parameter values and accuracy characteristics.
There are three types of IfcCoordinateOperation. The one to be used depends on the specific use case:
IfcMapConversion and IfcMapConversionScaled involve a transformation. These coordinate operations convey that the local engineering coordinate system of the virtual model (which is a topocentric CRS) is put in place in the referenced IfcProjectedCRS.
IfcRigidOperation involves a translation in the 3D space. This coordinate operation convey that the whole virtual model is translated in the same way. For example, using lengths to translate along x,y,z; or using angles for a 2D translation (e.g., lambda, phi), plus a change in height.
Source coordinate reference system for the operation.
Target coordinate reference system for the operation.
ENTITY IfcCoordinateOperation ABSTRACT SUPERTYPE OF (ONEOF (IfcMapConversion ,IfcRigidOperation)); SourceCRS : IfcCoordinateReferenceSystemSelect; TargetCRS : IfcCoordinateReferenceSystem; END_ENTITY;