Represents a step in the process of transforming between horizontal and/or vertical datums. More...
Header | #include <Horizontal |
Since | Esri |
Public Functions
Horizontal | |
Horizontal | |
Horizontal | |
Horizontal | |
Horizontal | |
~ | |
Esri | inverse |
bool | is |
bool | is |
bool | is |
Q | projection |
Q | wk |
int | wkid() const |
bool | operator!=(const Esri |
Esri | operator=( |
Esri | operator=(const Esri |
bool | operator==(const Esri |
Detailed Description
Each HorizontalVerticalTransformationStep can be constructed from a well-known ID (WKID) that represents a horizontal (geographic) or a vertical transformation. This API supports thousands of predefined transformations, and all the supported WKIDs are documented in the 'Coordinate systems and transformations' topic in the developers guide.
One or more HorizontalVerticalTransformationStep objects are combined into a HorizontalVerticalTransformation object, and can then be used to control how coordinates are transformed in a GeometryEngine::project(const Esri::ArcGISRuntime::Geometry&, const Esri::ArcGISRuntime::SpatialReference&, Esri::ArcGISRuntime::DatumTransformation*) method call.
A HorizontalVerticalTransformationStep object is immutable.
See also HorizontalVerticalTransformation and GeographicTransformationStep.
Member Function Documentation
HorizontalVerticalTransformationStep::HorizontalVerticalTransformationStep ()
Default constructor.
[explicit]
HorizontalVerticalTransformationStep::HorizontalVerticalTransformationStep (const QString &wkText )
Creates a new HorizontalVerticalTransformationStep from a well-known ID.
Use this constructor to specify a custom transformation, using WKT notation.
[explicit]
HorizontalVerticalTransformationStep::HorizontalVerticalTransformationStep (int wkid)
Constructor that accepts the WKID (wkid) for the horizontal-vertical 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. HorizontalVerticalTransformationStep::wkid will return the new (latest) WKID code.
HorizontalVerticalTransformationStep::HorizontalVerticalTransformationStep (const Esri::ArcGISRuntime::HorizontalVerticalTransformationStep &other)
Copy constructor from other HorizontalVerticalTransformationStep.
[noexcept]
HorizontalVerticalTransformationStep::HorizontalVerticalTransformationStep (Esri::ArcGISRuntime::HorizontalVerticalTransformationStep &&other)
Move constructor from other HorizontalVerticalTransformationStep.
[noexcept]
HorizontalVerticalTransformationStep::~HorizontalVerticalTransformationStep ()
Destructor.
Esri::ArcGISRuntime::HorizontalVerticalTransformationStep HorizontalVerticalTransformationStep::inverseTransformation () const
Returns a HorizontalVerticalTransformationStep that is the inverse of this HorizontalVerticalTransformationStep.
Returns empty
HorizontalVerticalTransformationStep if there is no inverse of this HorizontalVerticalTransformationStep.
bool HorizontalVerticalTransformationStep::isEmpty () const
Returns true
if this horizontal-vertical transformation step is empty.
bool HorizontalVerticalTransformationStep::isInverse () const
Returns whether this horizontal-vertical transformation step instance is an inverted transformation.
Returns true
if this step uses the inverse of the horizontal-vertical transformation contained in this step.
If this transformation step is empty, returns false
. Transformations have a specific direction indicated by the HorizontalVerticalTransformationStep::wkText value. An inverted transformation is used to transform geometries in the opposite direction from that indicated by the well-known text. HorizontalVerticalTransformationStep has DatumTransformation::inputSpatialReference and DatumTransformation::outputSpatialReference properties that respect the inverse value of the contained transformation(s).
bool HorizontalVerticalTransformationStep::isMissingProjectionEngineFiles () const
Returns whether any files needed by the Projection Engine for this HorizontalVerticalTransformationStep are missing from the local file system. projectionEngineFilenames indicates the required files.
Return value is meaningless if transformation step is empty.
QStringList HorizontalVerticalTransformationStep::projectionEngineFilenames () const
Returns a list of the Projection Engine files required to support this transformation step.
Datum transformations can be mathematically defined (equation-based transformations), or may rely on external supporting files (grid-based transformations). For a grid-based transformation step, this returns a list of the files required to use this transformation, prefixed by an expected subpath of the file(s) underneath TransformationCatalog::projectionEngineDirectory. For an equation-based transformation, this returns an empty list.
{isMissingProjectionEngineFiles}, {Esri::ArcGISRuntime::TransformationCatalog::projectionEngineDirectory} {TransformationCatalog::projectionEngineDirectory}
See also Esri::ArcGISRuntime::HorizontalVerticalTransformationStep::isMissingProjectionEngineFiles.
QString HorizontalVerticalTransformationStep::wkText () const
Returns the well-known text of this transformation step instance.
If this transformation step can only be represented in WKT2 format this property returns an empty string.
int HorizontalVerticalTransformationStep::wkid() const
Returns the well-known identifier (WKID) of the horizontal-vertical transformation in this step.
Returns -1 if no WKID has been specified. 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.
bool HorizontalVerticalTransformationStep::operator!=(const Esri::ArcGISRuntime::HorizontalVerticalTransformationStep &other) const
Inequality operator. Returns true
if this object and other are not equal.
See also HorizontalVerticalTransformationStep::operator==.
[noexcept]
Esri::ArcGISRuntime::HorizontalVerticalTransformationStep &HorizontalVerticalTransformationStep::operator=(Esri::ArcGISRuntime::HorizontalVerticalTransformationStep &&other)
Move operator from other HorizontalVerticalTransformationStep.
Esri::ArcGISRuntime::HorizontalVerticalTransformationStep &HorizontalVerticalTransformationStep::operator=(const Esri::ArcGISRuntime::HorizontalVerticalTransformationStep &other)
Assignment operator from other HorizontalVerticalTransformationStep.
bool HorizontalVerticalTransformationStep::operator==(const Esri::ArcGISRuntime::HorizontalVerticalTransformationStep &other) const
Tests and returns true
if this object is equal to a second HorizontalVerticalTransformationStep object.
- other - The second HorizontalVerticalTransformationStep used in the comparison.
Returns true
if this object and other are equal.
This is the only valid way to compare two horizontal-vertical transformation steps. Comparing individual attributes for two objects can return misleading results and should be avoided.