Class Ifc4::IfcCoordinateOperation

Nested Relationships

This class is a nested type of Struct Ifc4.

Inheritance Relationships

Base Type

Derived Type

Class Documentation

class Ifc4::IfcCoordinateOperation : public IfcUtil::IfcBaseEntity

Definition from OpenGIS® Abstract Specification, Topic 2: If the relationship between any two coordinate reference systems is known, coordinates can be transformed or converted to another coordinate reference system. Coordinate operations are divided into two subtypes:

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.

The coordinate operation is an abstract supertype to handle any operation (transformation or conversion) between two coordinate reference systems. It is meant to provide expandability for future versions, since currently only the conversion of a local engineering coordinate system into a map coordinate reference system is dealt with by the subtype IfcMapConversion.

By convention, a coordinate operation is given between the SourceCRS being the more local, or child coordinate reference system, and the TargetCRS being the more remote or parent coordinate reference system, in thespecial case the coordinate operation between the local engineering coordinate system of the construction project and any map or other coordinate reference system.

HISTORY New entity in IFC2x4.

Subclassed by Ifc4::IfcMapConversion

Public Functions

::Ifc4::IfcCoordinateReferenceSystemSelect *SourceCRS() const

Source coordinate reference system for the operation.

void setSourceCRS(::Ifc4::IfcCoordinateReferenceSystemSelect *v)
::Ifc4::IfcCoordinateReferenceSystem *TargetCRS() const

Target coordinate reference system for the operation.

void setTargetCRS(::Ifc4::IfcCoordinateReferenceSystem *v)
const IfcParse::entity &declaration() const
IfcCoordinateOperation(IfcEntityInstanceData *e)
IfcCoordinateOperation(::Ifc4::IfcCoordinateReferenceSystemSelect *v1_SourceCRS, ::Ifc4::IfcCoordinateReferenceSystem *v2_TargetCRS)

Public Static Functions

const IfcParse::entity &Class()