From c4059040012a9ab99831c2e0dec7b961fbf7cd5e Mon Sep 17 00:00:00 2001 From: Even Rouault Date: Mon, 27 Apr 2020 18:38:49 +0200 Subject: grids: add support for projected grids for GenericShiftGridSet --- test/unit/test_grids.cpp | 31 ++++++++++++++++++++++++++----- 1 file changed, 26 insertions(+), 5 deletions(-) (limited to 'test') 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 -- cgit v1.2.3