diff options
| author | Even Rouault <even.rouault@spatialys.com> | 2020-05-29 16:48:36 +0200 |
|---|---|---|
| committer | Even Rouault <even.rouault@spatialys.com> | 2020-05-30 12:51:29 +0200 |
| commit | 10d8e9af8d3b4b5219d37552fc253ba716436f4a (patch) | |
| tree | 403495a14762b997558b0f4463265e708e4b1b99 /src/sqlite3_utils.cpp | |
| parent | 11d2e04051001a38f45a27bac7167b483ee94650 (diff) | |
| download | PROJ-10d8e9af8d3b4b5219d37552fc253ba716436f4a.tar.gz PROJ-10d8e9af8d3b4b5219d37552fc253ba716436f4a.zip | |
Database: register NZGD2000 -> ITRF96 transformation for NZGD2000 database
Related to https://github.com/OSGeo/PROJ-data/pull/22
An entry is added in the ``other_transformation`` table, using a raw PROJ
string. Later, once the deformation model has been registered in EPSG, we'll
have to add code to map the EPSG transformation method and parameters to
+proj=defmodel
In the meantime, this works pretty well:
```
$ src/projinfo -s EPSG:4959 -t EPSG:7907
Candidate operations found: 1
-------------------------------------
Operation No. 1:
PROJ:NZGD2000-20180701, NZGD2000 to ITRF96 deformation model, unknown accuracy, New Zealand
PROJ string:
+proj=pipeline +step +proj=unitconvert +xy_in=deg +xy_out=rad +step +proj=axisswap +order=2,1 +step +proj=defmodel +model=nz_linz_nzgd2000-20180701.json +step +proj=axisswap +order=2,1 +step +proj=unitconvert +xy_in=rad +xy_out=deg
WKT2:2019 string:
COORDINATEOPERATION["NZGD2000 to ITRF96 deformation model",
VERSION["20180701"],
SOURCECRS[
GEOGCRS["NZGD2000",
DATUM["New Zealand Geodetic Datum 2000",
ELLIPSOID["GRS 1980",6378137,298.257222101,
LENGTHUNIT["metre",1]]],
PRIMEM["Greenwich",0,
ANGLEUNIT["degree",0.0174532925199433]],
CS[ellipsoidal,3],
AXIS["geodetic latitude (Lat)",north,
ORDER[1],
ANGLEUNIT["degree",0.0174532925199433]],
AXIS["geodetic longitude (Lon)",east,
ORDER[2],
ANGLEUNIT["degree",0.0174532925199433]],
AXIS["ellipsoidal height (h)",up,
ORDER[3],
LENGTHUNIT["metre",1]],
ID["EPSG",4959]]],
TARGETCRS[
GEOGCRS["ITRF96",
DATUM["International Terrestrial Reference Frame 1996",
ELLIPSOID["GRS 1980",6378137,298.257222101,
LENGTHUNIT["metre",1]]],
PRIMEM["Greenwich",0,
ANGLEUNIT["degree",0.0174532925199433]],
CS[ellipsoidal,3],
AXIS["geodetic latitude (Lat)",north,
ORDER[1],
ANGLEUNIT["degree",0.0174532925199433]],
AXIS["geodetic longitude (Lon)",east,
ORDER[2],
ANGLEUNIT["degree",0.0174532925199433]],
AXIS["ellipsoidal height (h)",up,
ORDER[3],
LENGTHUNIT["metre",1]],
ID["EPSG",7907]]],
METHOD["PROJ-based operation method: +proj=pipeline +step +proj=unitconvert +xy_in=deg +xy_out=rad +step +proj=axisswap +order=2,1 +step +proj=defmodel +model=nz_linz_nzgd2000-20180701.json +step +proj=axisswap +order=2,1 +step +proj=unitconvert +xy_in=rad +xy_out=deg"],
USAGE[
SCOPE["unknown"],
AREA["New Zealand"],
BBOX[-55.95,160.6,-25.88,-171.2]],
ID["PROJ","NZGD2000-20180701"],
REMARK["New Zealand Deformation Model. Defines the secular model (National Deformation Model) and patches for significant deformation events since 2000"]]
```
```
$ echo "-41 173 0 2016.5" | PROJ_NETWORK=ON src/cct -d 8 +proj=pipeline +step +proj=unitconvert +xy_in=deg +xy_out=rad +step +proj=axisswap +order=2,1 +step +proj=defmodel +model=nz_linz_nzgd2000-20180701.json +step +proj=axisswap +order=2,1 +step +proj=unitconvert +xy_in=rad +xy_out=deg
-40.99999402 172.99999938 0.00130333 2016.5000
```
```
$ echo "-41 173 0 2016.5" | PROJ_NETWORK=ON src/cs2cs -f "%.8f" EPSG:4959 EPSG:7907
-40.99999402 172.99999938 0.00130333 2016.5
```
Diffstat (limited to 'src/sqlite3_utils.cpp')
0 files changed, 0 insertions, 0 deletions
