DatumTransformation Class

  • DatumTransformation
  • class Esri::ArcGISRuntime::DatumTransformation

    A class to convert between two coordinate systems. More...

    Header: #include <DatumTransformation.h>
    Since: Esri::ArcGISRuntime 100.2
    Inherits: Esri::ArcGISRuntime::Object
    Inherited By:

    Esri::ArcGISRuntime::GeographicTransformation and Esri::ArcGISRuntime::HorizontalVerticalTransformation

    Public Functions

    virtual ~DatumTransformation() override
    Esri::ArcGISRuntime::DatumTransformationType datumTransformationType() const
    Esri::ArcGISRuntime::SpatialReference inputSpatialReference() const
    Esri::ArcGISRuntime::DatumTransformation *inverse() const
    bool isMissingProjectionEngineFiles() const
    QString name() const
    Esri::ArcGISRuntime::SpatialReference outputSpatialReference() const
    bool operator!=(const Esri::ArcGISRuntime::DatumTransformation *other) const
    bool operator==(const Esri::ArcGISRuntime::DatumTransformation *other) const

    Detailed Description

    This is the base class for classes used to transform coordinates between spatial references that have different datums. The inverse of the DatumTransformation, used to transform in the opposite direction, may be accessed using a member function.

    A DatumTransformation has a name property intended to be suitable for display, such as when displaying a list of available transformations to an end user.

    You can get a list of suitable transformations for a given input and output spatial reference using methods of the TransformationCatalog class. Some transformations require that certain Projection Engine data files be present on the local file system. The property DatumTransformation::isMissingProjectionEngineFiles indicates if any of the files are missing. The complete list of necessary files is available using the GeographicTransformationStep::projectionEngineFilenames property of the GeographicTransformationStep class.

    In order for any Projection Engine files to be found, the data location must be set first using the TransformationCatalog::projectionEngineDirectory property.

    A DatumTransformation object is immutable.

    Member Function Documentation

    [override virtual] DatumTransformation::~DatumTransformation()

    Destructor.

    Esri::ArcGISRuntime::DatumTransformationType DatumTransformation::datumTransformationType() const

    Returns the type of this datum transformation.

    Esri::ArcGISRuntime::SpatialReference DatumTransformation::inputSpatialReference() const

    Returns the input SpatialReference of the DatumTransformation.

    Returns the spatial reference of the coordinates to be projected.

    Esri::ArcGISRuntime::DatumTransformation *DatumTransformation::inverse() const

    Returns the datum transformation that is the inverse of this datum transformation.

    Returns nullptr if there is no inverse transformation.

    bool DatumTransformation::isMissingProjectionEngineFiles() const

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

    QString DatumTransformation::name() const

    Returns the name of the DatumTransformation.

    For multi-step transformations, the name contains the concatenated names of each step's transformation, separated by plus signs (+). If the transformation is inverted, the name starts with a tilde (~).

    Esri::ArcGISRuntime::SpatialReference DatumTransformation::outputSpatialReference() const

    Returns the output SpatialReference of the DatumTransformation.

    Returns the spatial reference of the destination coordinates.

    bool DatumTransformation::operator!=(const Esri::ArcGISRuntime::DatumTransformation *other) const

    Inequality operator.

    Returns whether this object and other are not equivalent.

    bool DatumTransformation::operator==(const Esri::ArcGISRuntime::DatumTransformation *other) const

    Equivalency operator.

    Returns whether this object and other are equivalent.

    Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.