ArcGIS Developers
Dashboard

GeographicTransformationStep Class

class Esri::ArcGISRuntime::GeographicTransformationStep

A step in the process of transforming between datums. More...

Header: #include <GeographicTransformationStep>
Since: Esri::ArcGISRuntime 100.2

This class was introduced in Esri::ArcGISRuntime 100.2.

Public Functions

GeographicTransformationStep(Esri::ArcGISRuntime::GeographicTransformationStep &&other)
GeographicTransformationStep(const Esri::ArcGISRuntime::GeographicTransformationStep &other)
GeographicTransformationStep(const QString &wkText)
GeographicTransformationStep(int wkid)
GeographicTransformationStep()
Esri::ArcGISRuntime::GeographicTransformationStep &operator=(Esri::ArcGISRuntime::GeographicTransformationStep &&other)
Esri::ArcGISRuntime::GeographicTransformationStep &operator=(const Esri::ArcGISRuntime::GeographicTransformationStep &other)
~GeographicTransformationStep()
Esri::ArcGISRuntime::GeographicTransformationStep inverseTransformation() const
bool isEmpty() const
bool isInverse() const
bool isMissingProjectionEngineFiles() const
QStringList projectionEngineFilenames() const
QString wkText() const
int wkid() const
bool operator!=(const Esri::ArcGISRuntime::GeographicTransformationStep &other) const
bool operator==(const Esri::ArcGISRuntime::GeographicTransformationStep &other) const

Detailed Description

Each GeographicTransformationStep can be constructed from a well-known ID (WKID) that represents a geographic transformation. Because the Projection Engine supports thousands of transformations, WKIDs are not presented in the SDK as enumerations. Instead, they are documented in the ArcGIS Runtime SDK 100.4.0 for Qt documentation.

The list of supported WKIDs includes a transformation from every supported datum to WGS 1984. Additionally, there is more limited list of transformations that transform directly between two non-WGS84 datums, such as 4461, which is NAD_1983_HARN_To_NAD_1983_NSRS2007_1.

Transformations with more than one step typically go via WGS84, with one forward and one inverse geographic transformation chained together to get the required geographic coordinates.

A GeographicTransformationStep object is immutable.

Member Function Documentation

GeographicTransformationStep::GeographicTransformationStep(Esri::ArcGISRuntime::GeographicTransformationStep &&other)

Move constructor from other GeographicTransformationStep.

GeographicTransformationStep::GeographicTransformationStep(const Esri::ArcGISRuntime::GeographicTransformationStep &other)

Copy constructor from other GeographicTransformationStep.

GeographicTransformationStep::GeographicTransformationStep(const QString &wkText)

Constructor that accepts the WKT (wkText) for the geographic transformation.

Use this constructor to specify a custom transformation, using WKT notation.

GeographicTransformationStep::GeographicTransformationStep(int wkid)

Constructor that accepts the WKID (wkid) for the geographic transformation.

Occasionally, WKIDs may change, and older codes may be deprecated in favor of a new code. Both old (deprecated) and new (latest) WKIDs continue to work for instantiation, as long as they are supported by the Projection Engine. The GeographicTransformationStep::wkid property will return the new (latest) WKID code.

GeographicTransformationStep::GeographicTransformationStep()

Default constructor.

Esri::ArcGISRuntime::GeographicTransformationStep &GeographicTransformationStep::operator=(Esri::ArcGISRuntime::GeographicTransformationStep &&other)

Move operator from other GeographicTransformationStep.

Esri::ArcGISRuntime::GeographicTransformationStep &GeographicTransformationStep::operator=(const Esri::ArcGISRuntime::GeographicTransformationStep &other)

Assignment operator from other object.

GeographicTransformationStep::~GeographicTransformationStep()

Destructor.

Esri::ArcGISRuntime::GeographicTransformationStep GeographicTransformationStep::inverseTransformation() const

Returns a GeographicTransformationStep that is the inverse of this GeographicTransformationStep.

Returns empty GeographicTransformationStep if there is no inverse of this GeographicTransformationStep.

bool GeographicTransformationStep::isEmpty() const

Returns true if this geographic transformation step is empty.

bool GeographicTransformationStep::isInverse() const

Returns whether this geographic transformation step instance is an inverted transformation.

Returns true if this step uses the inverse of the geographic transformation contained in this step. If this transformation step is empty, returns false. Transformations have a specific direction that is indicated by the GeographicTransformationStep::wkText value. An inverted transformation is used to transform geometries in the opposite direction to that indicated by the Well-Known Text. GeographicTransformation has DatumTransformation::inputSpatialReference and DatumTransformation::outputSpatialReference properties that respect the inverse value of the contained transformation(s).

ArcGIS Runtime supports a large number of transformation WKIDs, including transformations from every supported datum to the World Geodetic System 1984 (WGS84) datum. To transform coordinates between two non-WGS84 datums, typically one forward and one inverse GeographicTransformationStep are added to a GeographicTransformation, to get the required inputs and outputs.

See also GeographicTransformationStep::inverseTransformation.

bool GeographicTransformationStep::isMissingProjectionEngineFiles() const

Returns whether any files needed by the Projection Engine for this GeographicTransformationStep are missing from the local file system.

Return value is meaningless if transformation step is empty.

QStringList GeographicTransformationStep::projectionEngineFilenames() const

Returns a list of the Projection Engine files required to support this step.

Each name in the list includes the full path.

Projection Engine datasets are used in grid-based transforms.

QString GeographicTransformationStep::wkText() const

Returns the Well-Known Text (WKT) representation of the geographic transformation in this step.

Returns an empty string if no WKT has been specified or if the geographic transformation is invalid.

This method always returns the minimal text representation that uniquely identifies a given geographic transformation.

int GeographicTransformationStep::wkid() const

Returns the Well-Known Identifier (WKID) of the geographic transformation in this step.

Occasionally, WKIDs may change, and an older code may be deprecated in favor of a new code. This property returns the new (latest) WKID code.

Returns -1 if no WKID has been specified.

bool GeographicTransformationStep::operator!=(const Esri::ArcGISRuntime::GeographicTransformationStep &other) const

Inequality operator. Returns true if this object and other are not equal.

See also GeographicTransformationStep::operator==.

bool GeographicTransformationStep::operator==(const Esri::ArcGISRuntime::GeographicTransformationStep &other) const

Equivalency operator. Returns true if this object and other are equal.

This is the only valid way to compare two geographic transformation steps. Comparing individual attributes for two objects can return misleading results and should be avoided.


Feedback on this topic?