aboutsummaryrefslogtreecommitdiff
path: root/src/iso19111/operation
diff options
context:
space:
mode:
Diffstat (limited to 'src/iso19111/operation')
-rw-r--r--src/iso19111/operation/conversion.cpp6
-rw-r--r--src/iso19111/operation/coordinateoperationfactory.cpp3
2 files changed, 9 insertions, 0 deletions
diff --git a/src/iso19111/operation/conversion.cpp b/src/iso19111/operation/conversion.cpp
index 21052a07..39c21439 100644
--- a/src/iso19111/operation/conversion.cpp
+++ b/src/iso19111/operation/conversion.cpp
@@ -3320,6 +3320,9 @@ static bool createPROJ4WebMercator(const Conversion *conv,
formatter->addParam("k", 1.0);
formatter->addParam("units", units);
formatter->addParam("nadgrids", "@null");
+ if (targetProjCRS && targetProjCRS->hasOver()) {
+ formatter->addParam("over");
+ }
formatter->addParam("wktext");
formatter->addParam("no_defs");
return true;
@@ -4095,6 +4098,9 @@ void Conversion::_exportToPROJString(
formatter->pushOmitZUnitConversion();
projCRS->addUnitConvertAndAxisSwap(formatter, bAxisSpecFound);
formatter->popOmitZUnitConversion();
+ if (projCRS->hasOver()) {
+ formatter->addParam("over");
+ }
}
auto derivedGeographicCRS =
diff --git a/src/iso19111/operation/coordinateoperationfactory.cpp b/src/iso19111/operation/coordinateoperationfactory.cpp
index e13d4071..6b7d4d20 100644
--- a/src/iso19111/operation/coordinateoperationfactory.cpp
+++ b/src/iso19111/operation/coordinateoperationfactory.cpp
@@ -5645,6 +5645,9 @@ namespace crs {
crs::CRSNNPtr CRS::getResolvedCRS(const crs::CRSNNPtr &crs,
const io::AuthorityFactoryPtr &authFactory,
metadata::ExtentPtr &extentOut) {
+ if (crs->hasOver()) {
+ return crs;
+ }
const auto &ids = crs->identifiers();
const auto &name = crs->nameStr();