diff options
| author | Even Rouault <even.rouault@spatialys.com> | 2021-10-05 19:20:32 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-10-05 19:20:32 +0200 |
| commit | 6b58adb4b7396b9c2aff2fa26aae2340d5a62d21 (patch) | |
| tree | 49cf819dfe3128c9b217a3c222256b6577208a30 /test | |
| parent | 44771f483249c872ad2959c8092450a06c1dd001 (diff) | |
| parent | 47b9629c56bd97022c1a7161cedc32b97b360957 (diff) | |
| download | PROJ-6b58adb4b7396b9c2aff2fa26aae2340d5a62d21.tar.gz PROJ-6b58adb4b7396b9c2aff2fa26aae2340d5a62d21.zip | |
Merge pull request #2868 from rouault/proj_factors_with_projected_crs
proj_factors(): accept P to be a projected CRS (fixes #2854)
Diffstat (limited to 'test')
| -rw-r--r-- | test/unit/gie_self_tests.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/test/unit/gie_self_tests.cpp b/test/unit/gie_self_tests.cpp index 5fc8f0f1..5f96a93a 100644 --- a/test/unit/gie_self_tests.cpp +++ b/test/unit/gie_self_tests.cpp @@ -475,6 +475,33 @@ TEST(gie, info_functions) { proj_destroy(P); + // Test with a projected CRS + { + P = proj_create(PJ_DEFAULT_CTX, "EPSG:3395"); + + const auto factors2 = proj_factors(P, a); + + EXPECT_EQ(factors.angular_distortion, factors2.angular_distortion); + EXPECT_EQ(factors.meridian_parallel_angle, + factors2.meridian_parallel_angle); + EXPECT_EQ(factors.meridian_convergence, factors2.meridian_convergence); + EXPECT_EQ(factors.tissot_semimajor, factors2.tissot_semimajor); + + proj_destroy(P); + } + + // Test with a geographic CRS --> error + { + P = proj_create(PJ_DEFAULT_CTX, "EPSG:4326"); + + const auto factors2 = proj_factors(P, a); + EXPECT_NE(proj_errno(P), 0); + proj_errno_reset(P); + EXPECT_EQ(factors2.meridian_parallel_angle, 0); + + proj_destroy(P); + } + /* Check that proj_list_* functions work by looping through them */ size_t n = 0; for (oper_list = proj_list_operations(); oper_list->id; ++oper_list) |
