From f5aed82fc6eee896606e95dc15e578cd9f058a2c Mon Sep 17 00:00:00 2001 From: Johannes Schauer Marin Rodrigues Date: Sat, 16 Oct 2021 15:38:17 +0200 Subject: Add fallback_strategy to tinshift transform - this bumps format_version of tinshift JSON to 1.1 for the new field fallback_strategy - the default behaviour without that field is retained - if fallback_strategy is set to "nearest_side", then points that do not fall into any of the triangles will be transformed according to the nearest triangle - if fallback_centroid is set to "nearest_side", then points that do not fall into any of the triangles will be transformed according to the triangle with the nearest centroid --- data/tests/tinshift_fallback_nearest_centroid.json | 17 +++++++++++++++++ data/tests/tinshift_fallback_nearest_side.json | 15 +++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 data/tests/tinshift_fallback_nearest_centroid.json create mode 100644 data/tests/tinshift_fallback_nearest_side.json (limited to 'data/tests') diff --git a/data/tests/tinshift_fallback_nearest_centroid.json b/data/tests/tinshift_fallback_nearest_centroid.json new file mode 100644 index 00000000..9751ab51 --- /dev/null +++ b/data/tests/tinshift_fallback_nearest_centroid.json @@ -0,0 +1,17 @@ +{ + "file_type": "triangulation_file", + "format_version": "1.1", + "fallback_strategy": "nearest_centroid", + "transformed_components": [ "horizontal" ], + "vertices_columns": [ "source_x", "source_y", "target_x", "target_y" ], + "triangles_columns": [ "idx_vertex1", "idx_vertex2", "idx_vertex3" ], + "vertices": [ + [0, 0, 0, 0], + [1, 0, 1, 0], + [1, 1, 1, 1], + [4, 0, 100, 0], + [100, 0, 100, 1], + [100, 1, 4, 0] + ], + "triangles": [ [0, 1, 2], [3, 4, 5] ] +} diff --git a/data/tests/tinshift_fallback_nearest_side.json b/data/tests/tinshift_fallback_nearest_side.json new file mode 100644 index 00000000..59e5b6f2 --- /dev/null +++ b/data/tests/tinshift_fallback_nearest_side.json @@ -0,0 +1,15 @@ +{ + "file_type": "triangulation_file", + "format_version": "1.1", + "fallback_strategy": "nearest_side", + "transformed_components": [ "horizontal" ], + "vertices_columns": [ "source_x", "source_y", "target_x", "target_y" ], + "triangles_columns": [ "idx_vertex1", "idx_vertex2", "idx_vertex3" ], + "vertices": [ + [0, 0, 0, 0], + [1, 0, 2, 0], + [1, 1, 2, 2], + [0, 1, 0, 2] + ], + "triangles": [ [0, 1, 2], [0, 2, 3] ] +} -- cgit v1.2.3