aboutsummaryrefslogtreecommitdiff
path: root/test/gie
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2020-07-01 14:09:02 +0200
committerEven Rouault <even.rouault@spatialys.com>2020-09-30 11:26:48 +0200
commit164c85cc8e7f4515c7c4da7a85fe75c4a21fafec (patch)
treea1400324adefc7d79488ed0fd661b0060c86490a /test/gie
parentef48acb4ab6e3426ac66f37a6477521d7b7be6d3 (diff)
downloadPROJ-164c85cc8e7f4515c7c4da7a85fe75c4a21fafec.tar.gz
PROJ-164c85cc8e7f4515c7c4da7a85fe75c4a21fafec.zip
Add a +proj=tinshift for triangulation-based transformations
Implements RFC-6
Diffstat (limited to 'test/gie')
-rw-r--r--test/gie/Makefile.am8
-rw-r--r--test/gie/tinshift.gie50
2 files changed, 56 insertions, 2 deletions
diff --git a/test/gie/Makefile.am b/test/gie/Makefile.am
index e6bb9582..20f0ec8f 100644
--- a/test/gie/Makefile.am
+++ b/test/gie/Makefile.am
@@ -16,7 +16,8 @@ EXTRA_DIST = 4D-API_cs2cs-style.gie \
adams_ws2.gie \
guyou.gie \
peirce_q.gie \
- defmodel.gie
+ defmodel.gie \
+ tinshift.gie
PROJ_LIB ?= ../../data/for_tests
@@ -68,4 +69,7 @@ peirce_q: peirce_q.gie
defmodel: defmodel.gie
PROJ_SKIP_READ_USER_WRITABLE_DIRECTORY=YES PROJ_LIB=$(PROJ_LIB) $(GIEEXE) $<
-check-local: 4D-API-cs2cs-style GDA axisswap builtins deformation ellipsoid more_builtins unitconvert DHDN_ETRS89 geotiff_grids adams_hemi adams_ws1 adams_ws2 guyou peirce_q defmodel
+tinshift: tinshift.gie
+ PROJ_SKIP_READ_USER_WRITABLE_DIRECTORY=YES PROJ_LIB=$(PROJ_LIB) $(GIEEXE) $<
+
+check-local: 4D-API-cs2cs-style GDA axisswap builtins deformation ellipsoid more_builtins unitconvert DHDN_ETRS89 geotiff_grids adams_hemi adams_ws1 adams_ws2 guyou peirce_q defmodel tinshift
diff --git a/test/gie/tinshift.gie b/test/gie/tinshift.gie
new file mode 100644
index 00000000..dff62693
--- /dev/null
+++ b/test/gie/tinshift.gie
@@ -0,0 +1,50 @@
+
+-------------------------------------------------------------------------------
+===============================================================================
+Test +proj=tinshift
+===============================================================================
+
+<gie-strict>
+
+# Missing +file
+operation +proj=tinshift
+expect failure errno no_args
+
+# +file doesn't point to an existing file
+operation +proj=tinshift +file=i_do_not_exist
+expect failure errno invalid_arg
+
+# Not a JSON file
+operation +proj=tinshift +file=proj.ini
+expect failure errno invalid_arg
+
+
+# Tests on a file without explicit CRS
+operation +proj=tinshift +file=tests/tinshift_crs_implicit.json
+accept 2 49
+expect 2.1 49.1
+roundtrip 1
+
+accept 0 0
+expect failure
+
+direction inverse
+accept 0 0
+expect failure
+
+
+# Tests on a file with explicit CRS
+operation +proj=tinshift +file=tests/tinshift_simplified_kkj_etrs.json
+tolerance 0.1 mm
+# Verified with https://kartta.paikkatietoikkuna.fi/?lang=en with EPSG:2393 to EPSG:3067
+accept 3210000.0000 6700000.0000
+expect 209948.3217 6697187.0009
+roundtrip 1
+
+operation +proj=tinshift +file=tests/tinshift_simplified_n60_n2000.json
+tolerance 0.1 mm
+accept 3210000.0000 6700000.0000 10.0
+expect 3210000.0000 6700000.0000 10.2886
+roundtrip 1
+
+</gie-strict>