ArcGIS Pro

How to create and use a custom vertical transformation in ArcGIS Pro

You want to transform your data vertically, but the vertical transformation you need does not exist in ArcGIS Pro. What to do? No problem. ArcGIS Pro 3.2 allows you to create your own custom vertical transformation (CVT) with the new Create Custom Vertical Transformation geoprocessing tool in the Data Management toolbox.

The Create Custom Vertical Transformation tool is listed in the Projections and Transformations Geoprocessing Toolbox.

Sometimes you have data in an ArcGIS Pro supported Vertical Coordinate System (VCS) and need to transform them vertically to a user-defined VCS. Or you may need to transform data between two user-defined VCSs. For example, you have a grid of locally derived vertical shifts that you want to apply to your data. Use the Create Custom Vertical Transformation geoprocessing tool in these and other similar cases to solve the problem. Here’s how to do it.

Here we are in ArcGIS Pro (below) with a point feature class overlaid by a raster map of the NOAA National Geodetic Survey xGeoid20A geoid model of American Samoa. A geoid model can be used to transform heights between ellipsoidal and gravity-related height systems. In this case, we want to transform ellipsoidal heights from ITRF2014 to the gravity-based vertical coordinate system (VCS) of American Samoa.

ArcGIS Pro project showing the NOAA National Geodetic Survey xGeoid20A geoid model of American Samoa.

Under Analysis > Tools > Geoprocessing search for and select the Create Custom Vertical Transformation tool.

Create Custom Vertical Transformation tool description.

Enter the parameters of the vertical transformation you require in the tool dialog box. Here is an example:

The Create Custom Vertical Transformation tool dialog box where the transformation parameters can be entered.

We’ve selected GEOID as our Vertical Transformation Method, which requires you to set a few additional parameters. These are: (1) the Interpolation Geographic Coordinate System, (2) the Transformation File Name (in this case, the xGeoid20A_AS.bin grid file), and (3) the Interpolation Type.

Finally, the tool also collects the Extent information within which the custom vertical transformation is valid and a general statement of transformation accuracy in meters. Both are used to sort the custom transformation in the list of available transformation paths. Click Run and your custom vertical transformation will be saved.

In the example above, we have selected GEOID as the Vertical Transformation Method. Other vertical transformation methods are also available, as shown below.

Other vertical transformation methods are available in the Create Custom Vertical Transformation tool dialog box.

If you select a vertical transformation method that interpolates from a grid, you must store the grid file on disk in the corresponding \pedata folder where you installed the ArcGIS Coordinate Systems Data software component. For instance, for the GEOID method in the example above, the grid file must be stored at:

“…\ArcGIS\CoordinateSystemsData\pedata\vertical\north-america\us\geoid”.

The file extension “.bin” in the Transformation File Name indicates a binary file format. An ASCII geoid grid file may also be used. The file structure of this ASCII file comprises a one-line header followed by the data in row-major format. The one-line header contains four floats (real*8) followed by three long integers (int*4) all space delimited as follows:

SLAT WLON DLAT DLON NLAT NLON IKIND

VALUE VALUE VALUE …

where,

The geoid undulation data in meters follows the one-line header. The first row represents the southernmost row of data, with the first data point being in the lower left (SW) corner. This row has NLON values spaced at DLON intervals, and then increments to the next row, which is DLAT to the north. This continues until the last row, where the last value represents the northeast or upper-right (NE) corner. The easternmost longitude is equal to WLON + (NLON – 1) x DLON, while the northernmost latitude is equal to SLAT + (NLAT – 1) x DLAT. The NODATA value is given by 9999. Line breaks and carriage returns are ignored when the tool reads the file. An example of the file is shown below.

-12.0 140.0 0.04166666666666666 0.04166666666666666 289 433 1

63.7249985     63.7700005     63.8219986     63.8829994     63.9529991     64.0260010

64.0889969     64.1399994     64.1829987     64.2210007     64.2559967     64.2860031

64.3170013     64.3519974     64.3899994     9999           9999           9999

. . .

This file format is identical to that used by the U.S. National Geodetic Survey for their geoid files. More information about the format can be found here.

Once you run the Create Custom Vertical Transformation tool, the custom vertical transformation you created becomes available in the Map Properties Transformation drop-down menu. It can then be applied to your map or scene data in ArcGIS Pro as well as with other geoprocessing tools.

The Map Properties Transformation drop-down menu showing your custom vertical transformation.

You are now ready to apply your custom vertical transformation to your data using the Project tool. Set the coordinate systems you want for your transformed data by clicking on the Select Coordinate System button (globe icon) next to the Output Coordinate System box and then selecting your desired geographic (GCS) or projected (PCS) and vertical (VCS) coordinate systems in the Coordinate System picker. Click OK.

Select your custom vertical transformation in the Project tool dialog box.

To perform a vertical transformation, make sure the Vertical parameter checkbox is checked. Your custom vertical transformation will show up in the Geographic Transformation drop-down menu. Note that if the selected GCS differs from that of the Input Dataset or Feature Class, a valid transformation path must exist in ArcGIS Pro, otherwise no transformation will be displayed in the Geographic Transformation box.

Run your custom vertical transformation from the Project tool dialog box.

Finally, click Run and you’ve successfully transformed your data using the vertical transformation you defined with the Create Custom Vertical Transformation tool.

Use the ArcGIS Pro Create Custom Vertical Transformation geoprocessing tool when you need to transform data vertically between a Pro supported VCS and a user-defined VCS or between two user-defined VCSs. It’s new at Pro 3.2.

 

Additional Resources

What You Should Know About Geographic (Datum) and Vertical Transformations

Introducing Coordinate Systems and Transformations

Having a bad case of RTK vertigo?

Project (Data Management) tool

Project Raster (Data Management) tool

About the author

Kevin Kelly

Kevin is Geodesist on the Esri Projection Engine team where he researches geodetic algorithms and applications for the ArcGIS software. He is passionate about all things geodesy.

Next Article

Inspect assets with ArcGIS Drone2Map

Read this article