aboutsummaryrefslogtreecommitdiff
path: root/test/unit/test_grids.cpp
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2020-04-27 18:38:49 +0200
committerEven Rouault <even.rouault@spatialys.com>2020-05-04 12:55:54 +0200
commitc4059040012a9ab99831c2e0dec7b961fbf7cd5e (patch)
tree6597c044c859cf145ab8c8c6f041b8027a3b8d15 /test/unit/test_grids.cpp
parentf291c50f17dcf4f4657aadbf8b4a38df6fa98731 (diff)
downloadPROJ-c4059040012a9ab99831c2e0dec7b961fbf7cd5e.tar.gz
PROJ-c4059040012a9ab99831c2e0dec7b961fbf7cd5e.zip
grids: add support for projected grids for GenericShiftGridSet
Diffstat (limited to 'test/unit/test_grids.cpp')
-rw-r--r--test/unit/test_grids.cpp31
1 files changed, 26 insertions, 5 deletions
diff --git a/test/unit/test_grids.cpp b/test/unit/test_grids.cpp
index 5240949e..1c77e5b6 100644
--- a/test/unit/test_grids.cpp
+++ b/test/unit/test_grids.cpp
@@ -66,7 +66,7 @@ TEST_F(GridTest, VerticalShiftGridSet_null) {
ASSERT_NE(grid, nullptr);
EXPECT_EQ(grid->width(), 3);
EXPECT_EQ(grid->height(), 3);
- EXPECT_EQ(grid->extentAndRes().westLon, -M_PI);
+ EXPECT_EQ(grid->extentAndRes().west, -M_PI);
EXPECT_TRUE(grid->isNullGrid());
EXPECT_FALSE(grid->hasChanged());
float out = -1.0f;
@@ -103,7 +103,7 @@ TEST_F(GridTest, HorizontalShiftGridSet_null) {
ASSERT_NE(grid, nullptr);
EXPECT_EQ(grid->width(), 3);
EXPECT_EQ(grid->height(), 3);
- EXPECT_EQ(grid->extentAndRes().westLon, -M_PI);
+ EXPECT_EQ(grid->extentAndRes().west, -M_PI);
EXPECT_TRUE(grid->isNullGrid());
EXPECT_FALSE(grid->hasChanged());
float out1 = -1.0f;
@@ -131,7 +131,7 @@ TEST_F(GridTest, HorizontalShiftGridSet_gtiff) {
ASSERT_NE(grid, nullptr);
EXPECT_EQ(grid->width(), 4);
EXPECT_EQ(grid->height(), 4);
- EXPECT_EQ(grid->extentAndRes().westLon, 4.0 / 180 * M_PI);
+ EXPECT_EQ(grid->extentAndRes().west, 4.0 / 180 * M_PI);
EXPECT_FALSE(grid->isNullGrid());
EXPECT_FALSE(grid->hasChanged());
float out1 = -1.0f;
@@ -154,7 +154,7 @@ TEST_F(GridTest, GenericShiftGridSet_null) {
ASSERT_NE(grid, nullptr);
EXPECT_EQ(grid->width(), 3);
EXPECT_EQ(grid->height(), 3);
- EXPECT_EQ(grid->extentAndRes().westLon, -M_PI);
+ EXPECT_EQ(grid->extentAndRes().west, -M_PI);
EXPECT_TRUE(grid->isNullGrid());
EXPECT_FALSE(grid->hasChanged());
float out = -1.0f;
@@ -180,7 +180,8 @@ TEST_F(GridTest, GenericShiftGridSet_gtiff) {
ASSERT_NE(grid, nullptr);
EXPECT_EQ(grid->width(), 5);
EXPECT_EQ(grid->height(), 5);
- EXPECT_EQ(grid->extentAndRes().westLon, 21.0 / 180 * M_PI);
+ EXPECT_EQ(grid->extentAndRes().isGeographic, true);
+ EXPECT_EQ(grid->extentAndRes().west, 21.0 / 180 * M_PI);
EXPECT_FALSE(grid->isNullGrid());
EXPECT_FALSE(grid->hasChanged());
float out = -1.0f;
@@ -224,4 +225,24 @@ TEST_F(GridTest,
EXPECT_EQ(grid->height(), 8);
}
+// ---------------------------------------------------------------------------
+
+TEST_F(GridTest, GenericShiftGridSet_gtiff_projected) {
+ auto gridSet = NS_PROJ::GenericShiftGridSet::open(
+ m_ctxt, "tests/test_3d_grid_projected.tif");
+ ASSERT_NE(gridSet, nullptr);
+ ASSERT_EQ(gridSet->gridAt(-1000, -1000), nullptr);
+ auto grid = gridSet->gridAt(0, 0);
+ ASSERT_NE(grid, nullptr);
+ EXPECT_EQ(grid->width(), 2);
+ EXPECT_EQ(grid->height(), 2);
+ EXPECT_EQ(grid->extentAndRes().isGeographic, false);
+ EXPECT_EQ(grid->extentAndRes().west, -180);
+ EXPECT_EQ(grid->extentAndRes().east, 180);
+ EXPECT_EQ(grid->extentAndRes().south, -90);
+ EXPECT_EQ(grid->extentAndRes().north, 90);
+ EXPECT_EQ(grid->extentAndRes().resX, 360);
+ EXPECT_EQ(grid->extentAndRes().resY, 180);
+}
+
} // namespace