aboutsummaryrefslogtreecommitdiff
path: root/src/iso19111/coordinateoperation.cpp
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2020-04-19 13:27:25 +0200
committerEven Rouault <even.rouault@spatialys.com>2020-04-19 13:27:43 +0200
commit605c01d2550e741b810989025079940778b75e29 (patch)
tree4384aac1037a4b75d390daa3e12b35c49d98f137 /src/iso19111/coordinateoperation.cpp
parentb7f5e7ea751588914eec2b64fd2ee39ac2eefc54 (diff)
downloadPROJ-605c01d2550e741b810989025079940778b75e29.tar.gz
PROJ-605c01d2550e741b810989025079940778b75e29.zip
Ingestion of WKT1_GDAL: correctly map 'Cylindrical_Equal_Area'
Map it to 'Lambert Cylindrical Equal Area' / EPSG:9835 non-spherical method, when the ellipsoid is not a sphere. And rationalize the handling of this for other methods with spherical vs non-spherical formulations
Diffstat (limited to 'src/iso19111/coordinateoperation.cpp')
-rw-r--r--src/iso19111/coordinateoperation.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/iso19111/coordinateoperation.cpp b/src/iso19111/coordinateoperation.cpp
index 03eea4ee..4b174636 100644
--- a/src/iso19111/coordinateoperation.cpp
+++ b/src/iso19111/coordinateoperation.cpp
@@ -1797,6 +1797,14 @@ bool SingleOperation::_isEquivalentTo(const util::IComparable *other,
EPSG_CODE_METHOD_LAMBERT_AZIMUTHAL_EQUAL_AREA &&
methodEPSGCode ==
EPSG_CODE_METHOD_LAMBERT_AZIMUTHAL_EQUAL_AREA_SPHERICAL) ||
+ (methodEPSGCode ==
+ EPSG_CODE_METHOD_LAMBERT_CYLINDRICAL_EQUAL_AREA &&
+ otherMethodEPSGCode ==
+ EPSG_CODE_METHOD_LAMBERT_CYLINDRICAL_EQUAL_AREA_SPHERICAL) ||
+ (otherMethodEPSGCode ==
+ EPSG_CODE_METHOD_LAMBERT_CYLINDRICAL_EQUAL_AREA &&
+ methodEPSGCode ==
+ EPSG_CODE_METHOD_LAMBERT_CYLINDRICAL_EQUAL_AREA_SPHERICAL) ||
(methodEPSGCode == EPSG_CODE_METHOD_EQUIDISTANT_CYLINDRICAL &&
otherMethodEPSGCode ==
EPSG_CODE_METHOD_EQUIDISTANT_CYLINDRICAL_SPHERICAL) ||