From 1b398463f8a37f6d79ab537246cf37a4083a3264 Mon Sep 17 00:00:00 2001 From: Frank Warmerdam Date: Thu, 13 Jun 2002 14:24:43 +0000 Subject: New git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1021 4e78687f-474d-0410-85f9-8d5e500ac6b2 --- html/gen_parms.html | 85 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 html/gen_parms.html (limited to 'html') diff --git a/html/gen_parms.html b/html/gen_parms.html new file mode 100644 index 00000000..95e38983 --- /dev/null +++ b/html/gen_parms.html @@ -0,0 +1,85 @@ + + +PROJ.4 - General Parameters + + +

PROJ.4 - General Parameters

+ +This document attempts to describe a variety of the PROJ.4 parameters +which can be applied to all, or many coordinate system definitions. This +document does not attempt to describe the parameters particular to particular +projection types. Some of these can be found in the GeoTIFF +Projections +Transform List. The definitative documentation for most parameters +is Gerald's original documentation available from the main PROJ.4 page.

+ +

towgs84 - Datum transformation to WGS84

+ +Datum shifts can be approximated by 3 parameter spatial translations (in +geocentric space), or 7 parameter shifts (translation + rotation + scaling). +The parameters to describe this can be described using the towgs84 +parameter.

+ +In the three parameter case, the three arguments are the translations to the +geocentric location in meters.

+ +For instance, the following demonstrates converting from the Greek GGRS87 +datum to WGS84.

+ +

+% cs2cs +proj=latlong +ellps=GRS80 +towgs84=-199.87,74.79,246.62 \
+    +to +proj=latlong +datum=WGS84
+20 35
+20d0'5.467"E    35d0'9.575"N 8.570
+
+ +The EPSG database provides this example for transforming from WGS72 to WGS84 +using an approximated 7 parameter transformation.

+

+% cs2cs +proj=latlong +ellps=WGS72 +towgs84=0,0,4.5,0,0,0.554,0.219 \
+    +to +proj=latlong +datum=WGS84
+4 55
+4d0'0.554"E     55d0'0.09"N 3.223
+
+ +The seven parameter case uses delta_x, delta_y, delta_z, +Rx - rotation X, Ry - rotation Y, Rz - rotation Z, +M_BF - Scaling. The three translation parameters are in meters as +in the three parameter case. The rotational parameters are not in physical +units. They are something like the sine of the rotational angle times the +ellipoid axis length, but I don't know the exact details of how to derive +these from a physical description of the rotation. What I do know is that +they match the parameters used for transformation method 9606 in the EPSG +database. The scaling is apparently the scale change in parts per million.

+ +A more complete discussion of the 3 and 7 parameter transformations can be +found in the EPSG database (trf_method's 9603 and 9606). Within PROJ.4 +the following calculations are used to apply the towgs84 transformation +(going to WGS84). The x, y and z coordinates are in geocentric coordinates. + +Three parameter transformation (simple offsets): + +

+  x[io] = x[io] + defn->datum_params[0];
+  y[io] = y[io] + defn->datum_params[1];
+  z[io] = z[io] + defn->datum_params[2];
+
+ +Seven parameter transformation (translation, rotation and scaling): + +
+  #define Dx_BF (defn->datum_params[0])
+  #define Dy_BF (defn->datum_params[1])
+  #define Dz_BF (defn->datum_params[2])
+  #define Rx_BF (defn->datum_params[3])
+  #define Ry_BF (defn->datum_params[4])
+  #define Rz_BF (defn->datum_params[5])
+  #define M_BF  (defn->datum_params[6])
+
+  x_out = M_BF*(       x[io] - Rz_BF*y[io] + Ry_BF*z[io]) + Dx_BF;
+  y_out = M_BF*( Rz_BF*x[io] +       y[io] - Rx_BF*z[io]) + Dy_BF;
+  z_out = M_BF*(-Ry_BF*x[io] + Rx_BF*y[io] +       z[io]) + Dz_BF;
+
+ + + -- cgit v1.2.3