aboutsummaryrefslogtreecommitdiff
path: root/src/iso19111/operation/esriparammappings.cpp
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2021-08-27 18:33:26 +0200
committerEven Rouault <even.rouault@spatialys.com>2021-08-27 18:35:06 +0200
commit3f9c0a0b73d6567b3f05a89e337e5ff9f9d5904a (patch)
tree2a3a31cfda89019ee3abce8579fd896012d167e8 /src/iso19111/operation/esriparammappings.cpp
parentcd1d1fbe7b3640188c8fe90bceb96945339dc2a9 (diff)
downloadPROJ-3f9c0a0b73d6567b3f05a89e337e5ff9f9d5904a.tar.gz
PROJ-3f9c0a0b73d6567b3f05a89e337e5ff9f9d5904a.zip
ESRI WKT: add support for import/export of (non interrupted) Goode Homolosine
Issue found during https://github.com/OSGeo/gdal/pull/4355 when it was found that a WKT with Goode_Homolosine projection parsed as ESRI WKT was mapped wrongly to Interrupted Goode Homolosine
Diffstat (limited to 'src/iso19111/operation/esriparammappings.cpp')
-rw-r--r--src/iso19111/operation/esriparammappings.cpp17
1 files changed, 14 insertions, 3 deletions
diff --git a/src/iso19111/operation/esriparammappings.cpp b/src/iso19111/operation/esriparammappings.cpp
index aea4b3d3..8021b95f 100644
--- a/src/iso19111/operation/esriparammappings.cpp
+++ b/src/iso19111/operation/esriparammappings.cpp
@@ -744,7 +744,7 @@ static const ESRIParamMapping paramsESRI_Goode_Homolosine_alt1[] = {
EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
{"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
- {"Option", nullptr, 0, "1.0", false},
+ {"Option", nullptr, 0, "0.0", false},
{nullptr, nullptr, 0, "0.0", false}};
static const ESRIParamMapping paramsESRI_Goode_Homolosine_alt2[] = {
{"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
@@ -753,6 +753,15 @@ static const ESRIParamMapping paramsESRI_Goode_Homolosine_alt2[] = {
EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
{"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
+ {"Option", nullptr, 0, "1.0", false},
+ {nullptr, nullptr, 0, "0.0", false}};
+static const ESRIParamMapping paramsESRI_Goode_Homolosine_alt3[] = {
+ {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
+ EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
+ {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
+ EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
+ {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
+ EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
{"Option", nullptr, 0, "2.0", false},
{nullptr, nullptr, 0, "0.0", false}};
@@ -1063,11 +1072,13 @@ static const ESRIMethodMapping esriMappings[] = {
EPSG_NAME_METHOD_HOTINE_OBLIQUE_MERCATOR_VARIANT_B,
EPSG_CODE_METHOD_HOTINE_OBLIQUE_MERCATOR_VARIANT_B,
paramsESRI_Rectified_Skew_Orthomorphic_Center},
- {"Goode_Homolosine", PROJ_WKT2_NAME_METHOD_INTERRUPTED_GOODE_HOMOLOSINE, 0,
+ {"Goode_Homolosine", PROJ_WKT2_NAME_METHOD_GOODE_HOMOLOSINE, 0,
paramsESRI_Goode_Homolosine_alt1},
+ {"Goode_Homolosine", PROJ_WKT2_NAME_METHOD_INTERRUPTED_GOODE_HOMOLOSINE, 0,
+ paramsESRI_Goode_Homolosine_alt2},
{"Goode_Homolosine",
PROJ_WKT2_NAME_METHOD_INTERRUPTED_GOODE_HOMOLOSINE_OCEAN, 0,
- paramsESRI_Goode_Homolosine_alt2},
+ paramsESRI_Goode_Homolosine_alt3},
{"Equidistant_Cylindrical_Ellipsoidal",
EPSG_NAME_METHOD_EQUIDISTANT_CYLINDRICAL,
EPSG_CODE_METHOD_EQUIDISTANT_CYLINDRICAL,