Abridged Molodensky Transform
The standard way to convert coordinates
from one datum to another is to convert first the coordinates to
geocentric coordinates, apply the datum shift and rotation
parameters, and then convert them back to geographic coordinates.
As an alternative to this transform, the
IlvAbridgedMoldenskyTransform
class implements directly a transform derived directly from the
Molodensky formulas. The Abridged form of these formulas are
quite satisfactory for three-parameter transformations.
This transform can work on either 2-D
(only latitude and longitude are modified), or 3-D (the
ellipsoidal height of coordinates is also modified).
Affine Transform
Affine transforms are commonly used in
coordinate transformation. An affine transform is simply defined
by a 4x4 double values matrix, and are applied to coordinates by
multiplying them as if they were one 1x4 matrix.
Affine transforms are mainly used in JViews Maps for unit
conversions in a transformation path.
Another use of affine transforms is to use them to implement
Bursa Wolf transformations. The Bursa Wolf transformation is
applied to geocentric coordinates to model a seven-parameter
datum change. A seven-parameter datum is defined by the dX, dY, dZ axis shifts, the eX,
eY, eZ
rotations around the axis, and a scale factor expressed in parts
per million. The matrix to use for Bursa Wolf transformation is:
![mapsprg_code39.gif](../usrprgmaps/_media/mapsprg_code39_default.gif)
![mapsprg_code40.gif](../usrprgmaps/_media/mapsprg_code40_default.gif)
Concatenated Transform
There are some cases where a straightforward mathematical
function cannot be found to convert from one coordinate system to
another. In those cases, some elementary transformations can be
chained to build the full transformation. This is typically the
case when converting from a projected coordinate system P1 to
another one P2, using different datums: first you need to convert
coordinates from P1 to the geographic coordinate system, then
apply a datum conversion on these coordinate
systems, and then convert them to the final coordinate system P2.
The IlvConcatenatedTransform class allows
multiple transformation steps to be chained and used as a unique
transformation.
Geocentric Transform
The function used to convert from geocentric to ellipsoid and the
function used to convert from ellipsoid to geocentric are grouped
together in the IlvGeocentricTransform class. Actually, the
transformation is performed by specialized versions of this
class:
-
converts geocentric coordinates (x, y, z) to ellipsoidal (or geographic) coordinates (lon, lat, H)
-
converts ellipsoidal coordinates (lon, lat, H) to geocentric coordinates (x, y, z)
Projection Transform
The IlvProjectionTransform class implements a
transformation in which an IlvProjection is used to convert
coordinates from geographic coordinates to a projected coordinate
system, and vice versa.