ArcGIS Runtime SDK for iOS
100.14

Used to transform coordinates of geometries between spatial references that have two different geographic coordinate systems.
Each geographic transformation has an input and an output spatial reference. The transformation operates on the horizontal (geographic) datums in each spatial reference.
The inverse of the geographic transformation, if any, used to transform in the opposite direction, may be accessed using inverse (AGSDatumTransformation)
.
A geographic transformation can be constructed from a single geographic transformation step object, or from a list of geographic transformation steps objects 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 geographic transformation object with two geographic transformation steps: 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 nonWGS84 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 AGSGeographicTransformation
. You can get a list of suitable transformations for a given input and output spatial reference using one of the functions on the AGSTransformationCatalog
.
A geographic transformation object is immutable.
AGSTransformationCatalog
to find a list of suitable tranformations between two spatial references Instance Methods  
(instancetype)   initWithStep: 
(instancetype)   initWithSteps: 
(nullable AGSDatumTransformation *)   inverse 
(BOOL)   isEqualToDatumTransformation: 
Class Methods  
(instancetype)  + geographicTransformationWithStep: 
(instancetype)  + geographicTransformationWithSteps: 
Properties  
AGSSpatialReference *  inputSpatialReference 
BOOL  missingProjectionEngineFiles 
NSString *  name 
AGSSpatialReference *  outputSpatialReference 
NSArray< AGSGeographicTransformationStep * > *  steps 
+ (instancetype) geographicTransformationWithStep:  (AGSGeographicTransformationStep *)  step 
Initialize this transformation with a single step
step  in the process of transforming between datums 
+ (instancetype) geographicTransformationWithSteps:  (NSArray< AGSGeographicTransformationStep * > *)  steps 
Initialize this transformation with multiple steps. Use this when the multistep transformation is known in advance. The output of each step should match the input of the following step. Then, you can use the new multistep transformation where you would use a singlestep transformation.
steps  An array containing AGSGeographicTransformationStep instances. 
 (instancetype) initWithStep:  (AGSGeographicTransformationStep *)  step 
Initialize this transformation with a single step
step  in the process of transforming between datums 
 (instancetype) initWithSteps:  (NSArray< AGSGeographicTransformationStep * > *)  steps 
Initialize this transformation with multiple steps. Use this when the multistep transformation is known in advance. The output of each step should match the input of the following step. Then, you can use the new multistep transformation where you would use a singlestep transformation.
steps  An array containing AGSGeographicTransformationStep instances. 
 (nullable AGSDatumTransformation *) inverse 
Returns the inverse of this datum transformation.
 (BOOL) isEqualToDatumTransformation:  (AGSDatumTransformation *)  other 
Compares this spatial reference with the provided one for equality.
other  transformation to compare this one to. 

readnonatomicstronginherited 
The input spatial reference this transformation can be applied on.

readnonatomicassigninherited 
Indicates whether any data files needed by the Projection Engine is missing from the local file system.
setProjectionEngineDirectory:error: (AGSTransformationCatalog)
before using any other Runtime API.

readnonatomiccopyinherited 
The name of the datum transformation. For multistep transformations, the name contains the concatenated names of each step's transformation, separated by a plus sign '+'. If the transformation is inverted, the name starts with a tilde (~).

readnonatomicstronginherited 
The output spatial reference this transformation produces

readnonatomiccopy 
One or more steps used in the transformation.