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/unit/test_grids.cpp') 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 From 697b93dbad54ead7b1b66e7b610abd673192695c Mon Sep 17 00:00:00 2001 From: Even Rouault Date: Mon, 4 May 2020 13:48:17 +0200 Subject: Add a +proj=defmodel transformation for multi-component time-based deformation models Fixes #1001 Co-authored-by: Chris Crook --- test/unit/test_grids.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'test/unit/test_grids.cpp') diff --git a/test/unit/test_grids.cpp b/test/unit/test_grids.cpp index 1c77e5b6..e9841acd 100644 --- a/test/unit/test_grids.cpp +++ b/test/unit/test_grids.cpp @@ -232,17 +232,17 @@ TEST_F(GridTest, GenericShiftGridSet_gtiff_projected) { 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); + auto grid = gridSet->gridAt(1500300.0, 5400300.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); + EXPECT_EQ(grid->extentAndRes().west, 1500000.0); + EXPECT_EQ(grid->extentAndRes().east, 1501000.0); + EXPECT_EQ(grid->extentAndRes().south, 5400000.0); + EXPECT_EQ(grid->extentAndRes().north, 5401000.0); + EXPECT_EQ(grid->extentAndRes().resX, 1000); + EXPECT_EQ(grid->extentAndRes().resY, 1000); } } // namespace -- cgit v1.2.3