Calculating Datum Transformation Parameters

By Dr. Robin Steeves

This article discusses a special use of GeoLab in determining transformation parameters from coordinates given in two systems for a set of common points.

We can then apply those transformation parameters to the from-system coordinates of other points to get coordinates of those points in the to-system.

For example, in a certain survey area, suppose we have coordinates of some of the points in both the NAD83 and NAD27 systems, and there are a number of other points for which we only have NAD27 coordinates. In this case we would use the NAD83 and NAD27 coordinates of the "common points" to solve for transformation parameters between the two systems in our area. Then we could use those transformation parameters to transform the other NAD27 coordinates to the NAD83 system.

In our example we will determine a set of 3D translation parameters between the two systems. The first step is to set up the GeoLab input file to determine the three translation parameters from the coordinates of the common points. To see how we did this, please have a look at the input file.

The first line in the input file simply specifies that we want to list adjusted values for only the auxiliary parameters (the transformation parameters).

The next group of lines specify the to-system coordinates for the common points. Because we are only interested in the adjusted values for the transformation parameters, we can fix all coordinates of these points.

The next group of lines in the input text file set up the definition of the transformation parameters. The line beginning with "AUX" specifies an auxiliary parameter group named "Trans", and the three 3D translation parameters (TRAX, TRAY, and TRAZ) are assigned to this group. The line beginning with "SIGM" then assigns the defined auxiliary parameter group to the sigma-ID "TRN". This is necessary because we want to add the translation parameters to the "observed" coordinates in the from-system, and the way to do this is with the use of a sigma-ID.

Finally, the common coordinates in the from-system are added to the input file as a 3DC group of observed coordinates, and the group of auxiliary parameters we defined is assigned to this observation group by specifying (in the 3DC record) the sigma-ID we created.

After you process this input file with GeoLab, the adjusted transformation parameters are listed. In the case of this example, we get the following values:

Adjusted Auxiliary Parameters:
CODE NAME TYPE VALUE STD DEV
AUXO Trans TRAX -5.0000 5.4006 m
AUXO Trans TRAY 10.0000 5.4006 m
AUXO Trans TRAZ 20.0000 5.4006 m

These values can now be used to transform the remaining (non-common) from-system coordinates to the to-system. To do this you can use the GeoLab Coordinate Transformer as follows:

  • Create an input text file (e.g. "frcoords.iob" file in GeoLab) containing all the remaining from-system points as PLH records.

  • Start the Transformer by clicking the "Transform coords" button in GeoLab's Project/Tools tab.

  • Select the Input tab and under "Input type" select "Text File".

  • Under "Input File" click the Browse button, and select your "frcoords.iob" file.

  • For the "Linear Unit", select the linear unit you are using ("m" in our case), and for the "Ellipsoid" select "WGS 84" (see note below).

  • Select the Output tab, and ensure that the "Linear Unit" and "Ellipsoid" selections are the same as you selected under the Input tab (see note below).

  • In the 7-Parameters tab, enter the values determined from the adjustment we performed above (X-Translation = TRAX, Y-Translation = TRAY, and Z-Translation = TRAZ), and ensure that last four values are set to zero.

  • In the 4-Parameters tab, ensure that all values are zero.

  • In the Transformation tab, under "Transformation Switches", check the 7-Parameter box.

  • Under "From-Type" select PLH, and under "To-Type" select PLH.

  • Finally, click the Transform button.

A new text tab should be produced containing the transformed coordinates (now translated to the to-system).

Note: The reason we must use the same ellipsoid (when performing the transformation in the Coordinate Transformer) is so that the Transformer will not try to do a "datum-transformation" as well as the transformation using our translation parameter values.