ArcGISTransformationCatalog

Namespace: GameEngine.Geometry
Class: GameEngine/Geometry/ArcGISTransformationCatalog
Since: 1.0.0

Summary

Allows discovery and management of the transformations used to convert coordinates between different datums.

Properties

PropertyTypeNullableReadonlySummary
Yes
No

The directory of the Projection Engine files on the local file system.

ProjectionEngineDirectory

static string ProjectionEngineDirectory

The directory of the Projection Engine files on the local file system.

This property should only be set immediately upon process startup before any other API method calls.

Projection Engine data files are available in the downloads area of developers.arcgis.com (requires login).

Methods

SignatureReturn TypeSummary

GetTransformation(ArcGISSpatialReference, ArcGISSpatialReference)

ArcGISDatumTransformation

Returns the best usable (default) transformation to transform between the input and output spatial references, without taking into account an area of interest.

GetTransformation(ArcGISSpatialReference, ArcGISSpatialReference, ArcGISEnvelope)

ArcGISDatumTransformation

Returns the best usable transformation to transform between the input and output spatial references, taking into account the area of interest, if specified.

GetTransformation(ArcGISSpatialReference, ArcGISSpatialReference, ArcGISEnvelope, bool)

ArcGISDatumTransformation

Returns the best usable transformation used to transform between the input and output spatial references, taking into account the area of interest, if specified. Optionally disregards any vertical transformations.

GetTransformationsBySuitability(ArcGISSpatialReference, ArcGISSpatialReference)

ArcGISImmutableArray<ArcGISDatumTransformation>

Returns a list representing the datum transformations suitable for projecting between spatial references without taking into account an area of interest.

GetTransformationsBySuitability(ArcGISSpatialReference, ArcGISSpatialReference, ArcGISEnvelope)

ArcGISImmutableArray<ArcGISDatumTransformation>

Returns a list representing the datum transformations suitable for projecting between spatial references and takes into account the area of interest.

GetTransformationsBySuitability(ArcGISSpatialReference, ArcGISSpatialReference, ArcGISEnvelope, bool)

ArcGISImmutableArray<ArcGISDatumTransformation>

Returns a collection of transformations suitable for projecting between the input and output spatial references, taking into account the area of interest, if specified. Optionally checks for suitable vertical transformations.

GetTransformation

static ArcGISDatumTransformation GetTransformation(ArcGISSpatialReference inputSpatialReference, ArcGISSpatialReference outputSpatialReference)

Returns the best usable (default) transformation to transform between the input and output spatial references, without taking into account an area of interest.

Since 1.0.0

Arguments
NameTypeSummary
inputSpatialReference

The spatial reference to use as the input.

outputSpatialReference

The spatial reference to use as the output.

Returns ArcGISDatumTransformation

A ArcGISDatumTransformation instance that represents the best choice given the parameters. Always returns a usable transformation where ArcGISDatumTransformation.IsMissingProjectionEngineFiles is false. Returns null if no usable transformation is available for the given input parameters, or if no transformation is required.

If both inputSpatialReference and outputSpatialReference have a vertical coordinate system, this method returns a ArcGISHorizontalVerticalTransformation instance. If either ArcGISSpatialReference does not have a vertical coordinate system, a ArcGISGeographicTransformation is returned.

GetTransformation

static ArcGISDatumTransformation GetTransformation(ArcGISSpatialReference inputSpatialReference, ArcGISSpatialReference outputSpatialReference, ArcGISEnvelope areaOfInterest)

Returns the best usable transformation to transform between the input and output spatial references, taking into account the area of interest, if specified.

Since 1.0.0

Arguments
NameTypeSummary
inputSpatialReference

The spatial reference to use as the input.

outputSpatialReference

The spatial reference to use as the output.

areaOfInterest

The bounding box of coordinates to be transformed, or null to consider the entire world extent.

Returns ArcGISDatumTransformation

A ArcGISDatumTransformation instance that represents the best choice given the parameters. Always returns a usable transformation where ArcGISDatumTransformation.IsMissingProjectionEngineFiles is false. Returns null if no usable transformation is available for the given input parameters, or if no transformation is required.

If both inputSpatialReference and outputSpatialReference have a vertical coordinate system, this method returns a ArcGISHorizontalVerticalTransformation instance. If either ArcGISSpatialReference does not have a vertical coordinate system, a ArcGISGeographicTransformation is returned.

GetTransformation

static ArcGISDatumTransformation GetTransformation(ArcGISSpatialReference inputSpatialReference, ArcGISSpatialReference outputSpatialReference, ArcGISEnvelope areaOfInterest, bool ignoreVertical)

Returns the best usable transformation used to transform between the input and output spatial references, taking into account the area of interest, if specified. Optionally disregards any vertical transformations.

Since 1.0.0

Arguments
NameTypeSummary
inputSpatialReference

The spatial reference to use as the input.

outputSpatialReference

The spatial reference to use as the output.

areaOfInterest

The bounding box of coordinates to be transformed, or null to consider the entire world extent.

ignoreVertical

True if ArcGISTransformationCatalog should ignore any vertical coordinate system set on the inputSpatialReference or outputSpatialReference, and only consider horizontal (geographic) transformations; false otherwise.

Returns ArcGISDatumTransformation

A ArcGISDatumTransformation instance that represents the best choice given the parameters. Always returns a usable transformation where ArcGISDatumTransformation.IsMissingProjectionEngineFiles is false. The specific type returned depends on the given value of the ignoreVertical parameter.

Returns null if no transformation is required for the given input parameters, or if no usable transformation is available.

GetTransformationsBySuitability

static ArcGISImmutableArray<ArcGISDatumTransformation> GetTransformationsBySuitability(ArcGISSpatialReference inputSpatialReference, ArcGISSpatialReference outputSpatialReference)

Returns a list representing the datum transformations suitable for projecting between spatial references without taking into account an area of interest.

Since 1.0.0

Arguments
NameTypeSummary
inputSpatialReference

The spatial reference to use as the input.

outputSpatialReference

The spatial reference to use as the output.

Returns ArcGISImmutableArray<ArcGISDatumTransformation>

An ArcGISImmutableArray<T> containing ArcGISDatumTransformation objects, each suitable for transforming between the given input and output spatial references.

If both inputSpatialReference and outputSpatialReference have a vertical coordinate system, this method returns a ArcGISHorizontalVerticalTransformation instance. If either ArcGISSpatialReference does not have a vertical coordinate system, a ArcGISGeographicTransformation is returned.

A geographic transformation is not needed when input and output spatial references have the same underlying geographic (horizontal) coordinate system. A vertical transformation is not needed if both datums (for ellipsoidal heights) or vertical datums (for gravity-related heights) are the same. If neither type of transformation is needed, an empty collection is returned.

GetTransformationsBySuitability

static ArcGISImmutableArray<ArcGISDatumTransformation> GetTransformationsBySuitability(ArcGISSpatialReference inputSpatialReference, ArcGISSpatialReference outputSpatialReference, ArcGISEnvelope areaOfInterest)

Returns a list representing the datum transformations suitable for projecting between spatial references and takes into account the area of interest.

Since 1.0.0

Arguments
NameTypeSummary
inputSpatialReference

The spatial reference to use as the input.

outputSpatialReference

The spatial reference to use as the output.

areaOfInterest

The bounding box of coordinates to be transformed, or null to consider the entire world extent.

Returns ArcGISImmutableArray<ArcGISDatumTransformation>

An ArcGISImmutableArray<T> containing ArcGISDatumTransformation objects, each suitable for transforming between the given input and output spatial references, taking in to account the given area of interest.

If both inputSpatialReference and outputSpatialReference have a vertical coordinate system, this method returns a ArcGISHorizontalVerticalTransformation instance. If either ArcGISSpatialReference does not have a vertical coordinate system, a ArcGISGeographicTransformation is returned.

A geographic transformation is not needed when input and output spatial references have the same underlying geographic (horizontal) coordinate system. A vertical transformation is not needed if both datums (for ellipsoidal heights) or vertical datums (for gravity-related heights) are the same. If neither type of transformation is needed, an empty collection is returned.

GetTransformationsBySuitability

static ArcGISImmutableArray<ArcGISDatumTransformation> GetTransformationsBySuitability(ArcGISSpatialReference inputSpatialReference, ArcGISSpatialReference outputSpatialReference, ArcGISEnvelope areaOfInterest, bool ignoreVertical)

Returns a collection of transformations suitable for projecting between the input and output spatial references, taking into account the area of interest, if specified. Optionally checks for suitable vertical transformations.

Since 1.0.0

Arguments
NameTypeSummary
inputSpatialReference

The spatial reference to use as the input.

outputSpatialReference

The spatial reference to use as the output.

areaOfInterest

The bounding box of coordinates to be transformed, or null to consider the entire world extent.

ignoreVertical

True if ArcGISTransformationCatalog should ignore any vertical coordinate systems set on the inputSpatialReference or outputSpatialReference, and only consider horizontal (geographic) transformations; false otherwise.

Returns ArcGISImmutableArray<ArcGISDatumTransformation>

A collection of ArcGISDatumTransformation objects suitable for the given parameters, ordered by suitability, or an empty collection if no transformation is required.

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