8. Appendix: Built-in EPSG Transformation Database
SurveyTools ships with a curated SQLite database of 34 common geodetic transformations. These are the most frequently used 7-parameter (Helmert) datum transformations in surveying and mapping. The database file is located at data/epsg_transformations.db.
Each entry stores:
EPSG Code — the official EPSG operation code for the transformation
Name — official EPSG name
Source CRS — EPSG code of the source coordinate reference system
Target CRS — EPSG code of the target CRS (usually WGS 84 = 4326)
Method — EPSG method code: 9603 (Geocentric Translation), 9606 (Position Vector), or 9607 (Coordinate Frame)
Accuracy — stated accuracy in metres
Parameters — Tx, Ty, Tz (metres), Rx, Ry, Rz (arc-seconds), ds (ppm)
Note
Method 9603 (Geocentric Translation) is a simplified 3-parameter transformation where all rotation and scale values are zero. It uses only translations (Tx, Ty, Tz). In SurveyTools, this loads as a 7-parameter set with Rx=Ry=Rz=0 and ds=0.
8.1. Complete Transformation List
8.1.1. Australia
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1150 |
AGD66 to WGS 84 (11) |
9603 |
5.0 m |
Tx=-117.808, Ty=-51.536, Tz=137.784 |
1461 |
AGD84 to WGS 84 (7) |
9603 |
3.0 m |
Tx=-116.0, Ty=-50.47, Tz=141.69 |
1559 |
GDA94 to WGS 84 (1) |
9603 |
1.0 m |
Tx=0, Ty=0, Tz=0 (identity) |
8.1.2. Austria
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1618 |
MGI to WGS 84 (4) |
9607 |
1.5 m |
Tx=577.326, Ty=90.129, Tz=463.919, Rx=5.137”, Ry=1.474”, Rz=5.297”, ds=2.4232 ppm |
8.1.3. China
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
15934 |
Beijing 1954 to WGS 84 (1) |
9603 |
25.0 m |
Tx=15.8, Ty=-154.4, Tz=-82.3 |
8.1.4. Cyprus
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
6907 |
ED50 to WGS 84 (29) |
9603 |
1.0 m |
Tx=-104.0, Ty=-101.0, Tz=-140.0 |
8.1.5. Egypt
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1074 |
Egypt 1907 to WGS 84 (1) |
9603 |
5.0 m |
Tx=-130.0, Ty=110.0, Tz=-13.0 |
8.1.6. Europe
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1133 |
ED50 to WGS 84 (18) |
9603 |
2.5 m |
Tx=-84.0, Ty=-97.0, Tz=-117.0 |
1149 |
ED50 to WGS 84 (23) |
9606 |
2.0 m |
Tx=-87.0, Ty=-98.0, Tz=-121.0 |
101149 |
ETRS89 to WGS 84 (1) |
9603 |
0.5 m |
Tx=0, Ty=0, Tz=0 (identity) |
8.1.7. France
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
15929 |
ED50 to WGS 84 (41) |
9606 |
1.0 m |
Tx=-84.0, Ty=-97.0, Tz=-117.0 |
8.1.8. Germany
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1776 |
DHDN to WGS 84 (3) |
9606 |
3.0 m |
Tx=598.1, Ty=73.7, Tz=418.2, Rx=0.202”, Ry=0.045”, Rz=-2.455”, ds=6.7 ppm |
15869 |
DHDN to ETRS89 (8) |
9607 |
1.0 m |
Tx=582.0, Ty=105.0, Tz=414.0, Rx=-1.04”, Ry=-0.35”, Rz=3.08”, ds=8.3 ppm |
1612 |
ED50 to WGS 84 (32) |
9606 |
1.0 m |
Tx=-111.92, Ty=-87.85, Tz=-114.5 |
8.1.9. Greece
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1272 |
GGRS87 to WGS 84 (1) |
9603 |
1.0 m |
Tx=199.87, Ty=74.79, Tz=246.62 |
8.1.10. Ireland
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1954 |
TM65 to WGS 84 (2) |
9606 |
1.0 m |
Tx=482.53, Ty=-130.596, Tz=564.557, Rx=-1.042”, Ry=-0.214”, Rz=-0.631”, ds=-8.15 ppm |
8.1.11. Italy
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1660 |
Monte Mario to WGS 84 (2) |
9606 |
5.0 m |
Tx=-104.1, Ty=-49.1, Tz=-9.9, Rx=0.971”, Ry=-2.917”, Rz=0.714”, ds=-11.68 ppm |
8.1.12. Japan
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1826 |
Tokyo to WGS 84 (3) |
9603 |
12.0 m |
Tx=-148.0, Ty=507.0, Tz=685.0 |
8.1.13. New Zealand
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1564 |
NZGD49 to WGS 84 (3) |
9603 |
5.0 m |
Tx=59.47, Ty=-5.04, Tz=187.44 |
8.1.14. North America
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1188 |
NAD27 to WGS 84 (4) |
9603 |
10.0 m |
Tx=-8.0, Ty=160.0, Tz=176.0 |
1580 |
NAD83 to WGS 84 (1) |
9603 |
2.0 m |
Tx=0, Ty=0, Tz=0 (identity) |
8.1.15. Portugal
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1988 |
Datum 73 to WGS 84 (2) |
9603 |
2.0 m |
Tx=-223.237, Ty=110.193, Tz=36.649 |
8.1.16. Russia
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1267 |
Pulkovo 1942 to WGS 84 (1) |
9603 |
5.0 m |
Tx=28.0, Ty=-130.0, Tz=-95.0 |
8.1.17. South Africa
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1226 |
Hartebeesthoek94 to WGS 84 (1) |
9603 |
1.0 m |
Tx=0, Ty=0, Tz=0 (identity) |
1505 |
Cape to WGS 84 (2) |
9603 |
1.0 m |
Tx=-136.0, Ty=-108.0, Tz=-292.0 |
8.1.18. South America
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1071 |
SAD69 to WGS 84 (1) |
9603 |
15.0 m |
Tx=-57.0, Ty=1.0, Tz=-41.0 |
8.1.19. Spain
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1311 |
ED50 to WGS 84 (14) |
9606 |
1.0 m |
Tx=-131.032, Ty=-100.251, Tz=-163.354, Rx=-1.244”, Ry=-0.02”, Rz=-1.144”, ds=9.39 ppm |
8.1.20. Sweden
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1896 |
RT90 to WGS 84 (1) |
9607 |
10.0 m |
Tx=414.1, Ty=41.3, Tz=603.1, Rx=-0.855”, Ry=2.141”, Rz=7.023” |
8.1.21. Switzerland
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1753 |
CH1903 to WGS 84 (1) |
9603 |
1.5 m |
Tx=674.374, Ty=15.056, Tz=405.346 |
1676 |
CH1903+ to WGS 84 (1) |
9603 |
1.0 m |
Tx=674.374, Ty=15.056, Tz=405.346 |
8.1.22. Thailand
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1152 |
Indian 1975 to WGS 84 (2) |
9603 |
3.0 m |
Tx=209.0, Ty=818.0, Tz=290.0 |
8.1.23. Turkey
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1027 |
ED50 to WGS 84 (1) |
9603 |
10.0 m |
Tx=-84.0, Ty=-97.0, Tz=-117.0 |
8.1.24. United Kingdom
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1314 |
OSGB 1936 to WGS 84 (6) |
9606 |
5.0 m |
Tx=446.448, Ty=-125.157, Tz=542.06, Rx=0.15”, Ry=0.247”, Rz=0.842”, ds=-20.489 ppm |
8.1.25. World
Code |
Name |
Method |
Accuracy |
Parameters |
|---|---|---|---|---|
1238 |
WGS 72 to WGS 84 (2) |
9606 |
2.0 m |
Tx=0, Ty=0, Tz=4.5, Rz=0.554”, ds=0.2263 ppm |
8.2. Adding Custom Transformations
If your transformation is not in the built-in database, you have several options:
Manual entry via CSV: Create a CSV file with your parameters and import it
PROJ string: If you have the PROJ definition from your GIS software, paste the
+towgs84=string directlyWKT from .prj file: Open the .prj file that accompanies your shapefile and paste the
TOWGS84[...]blockLeica TRF file: If you have a Leica instrument coordinate system file, import it directly
Online EPSG lookup: If the code is not in the local database, SurveyTools will attempt an online lookup via epsg.io
To add a transformation permanently to the local database, run the build_epsg_db.py script (in scr/transformations/tools/) after adding the transformation to the TRANSFORMATIONS list in the script.