aboutsummaryrefslogtreecommitdiff
path: root/src/iso19111/operation/singleoperation.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/iso19111/operation/singleoperation.cpp')
-rw-r--r--src/iso19111/operation/singleoperation.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/iso19111/operation/singleoperation.cpp b/src/iso19111/operation/singleoperation.cpp
index 0cd7b57a..b32b61cd 100644
--- a/src/iso19111/operation/singleoperation.cpp
+++ b/src/iso19111/operation/singleoperation.cpp
@@ -2144,6 +2144,18 @@ bool SingleOperation::exportToPROJStringGeneric(
return true;
}
+ const char *prefix = "PROJ-based operation method: ";
+ if (starts_with(method()->nameStr(), prefix)) {
+ auto projString = method()->nameStr().substr(strlen(prefix));
+ try {
+ formatter->ingestPROJString(projString);
+ return true;
+ } catch (const io::ParsingException &e) {
+ throw io::FormattingException(
+ std::string("ingestPROJString() failed: ") + e.what());
+ }
+ }
+
return false;
}