A class used to transform coordinates of geometries between spatial references that have two different geographic coordinate systems. More...
Header: | #include <GeographicTransformation.h> |
Since: | Esri::ArcGISRuntime 100.2 |
Inherits: | Esri::ArcGISRuntime::DatumTransformation |
Public Functions
GeographicTransformation(const Esri::ArcGISRuntime::GeographicTransformationStep &step, QObject *parent = nullptr) | |
GeographicTransformation(const QList<Esri::ArcGISRuntime::GeographicTransformationStep> &steps, QObject *parent = nullptr) | |
virtual | ~GeographicTransformation() override |
QList<Esri::ArcGISRuntime::GeographicTransformationStep> | steps() const |
Detailed Description
Each GeographicTransformation has an input and an output spatial reference. The transformation operates on the horizontal (geographic) datums in each spatial reference.
The inverse of the GeographicTransformation, if any, used to transform in the opposite direction, may be accessed using the inverse member function.
A GeographicTransformation can be constructed from a single GeographicTransformationStep, or from a list of GeographicTransformationSteps that are chained together. Most transformations between spatial references that do not share the WGS 1984 datum use WGS 1984 as an intermediate datum. Thus, it is common to create a GeographicTransformation with two GeographicTransformationSteps: first to transform from the datum in the input spatial reference to WGS 1984, and then from WGS 1984 to the output spatial reference's datum. There are a limited number of transformations directly between two non-WGS84 datums, such as WKID 4461, which is NAD_1983_HARN_To_NAD_1983_NSRS2007_1
. These do not need WGS 1984 as an intermediate datum.
In most cases, you do not need to construct your own GeographicTransformation. You can get a list of suitable transformations for a given input and output spatial reference using one of the TransformationCatalog::transformationsBySuitability functions.
A GeographicTransformation object is immutable.
Relevant samples:
- List transformations by suitability: Get a list of suitable transformations for projecting a geometry between two spatial references with different horizontal datums.
Member Function Documentation
[explicit]
GeographicTransformation::GeographicTransformation (const Esri::ArcGISRuntime::GeographicTransformationStep &step, QObject *parent = nullptr)
Constructor for a single-step GeographicTransformation.
This constructor accepts a single GeographicTransformationStep (step) and an optional parent object.
[explicit]
GeographicTransformation::GeographicTransformation (const QList<Esri::ArcGISRuntime::GeographicTransformationStep > &steps, QObject *parent = nullptr)
Constructor for a multi-step GeographicTransformation.
This constructor accepts a list of GeographicTransformationStep objects (steps) and an optional parent object. Use this constructor when the multi-step transformation is known in advance. The output of each step should match the input of the following step. Then, you can use the new multi-step transformation where you would use a single-step transformation.
[override virtual]
GeographicTransformation::~GeographicTransformation ()
Destructor.
QList<Esri::ArcGISRuntime::GeographicTransformationStep > GeographicTransformation::steps() const
Returns the list of GeographicTransformationStep objects in this GeographicTransformation.