aboutsummaryrefslogtreecommitdiff
path: root/src/iso19111/c_api.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/iso19111/c_api.cpp')
-rw-r--r--src/iso19111/c_api.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/iso19111/c_api.cpp b/src/iso19111/c_api.cpp
index 240d11b3..79732bab 100644
--- a/src/iso19111/c_api.cpp
+++ b/src/iso19111/c_api.cpp
@@ -1736,6 +1736,10 @@ PJ *proj_get_source_crs(PJ_CONTEXT *ctx, const PJ *obj) {
}
return nullptr;
}
+ if (!obj->alternativeCoordinateOperations.empty()) {
+ return proj_get_source_crs(ctx,
+ obj->alternativeCoordinateOperations[0].pj);
+ }
proj_log_error(ctx, __FUNCTION__,
"Object is not a BoundCRS or a CoordinateOperation");
return nullptr;
@@ -1771,6 +1775,10 @@ PJ *proj_get_target_crs(PJ_CONTEXT *ctx, const PJ *obj) {
}
return nullptr;
}
+ if (!obj->alternativeCoordinateOperations.empty()) {
+ return proj_get_target_crs(ctx,
+ obj->alternativeCoordinateOperations[0].pj);
+ }
proj_log_error(ctx, __FUNCTION__,
"Object is not a BoundCRS or a CoordinateOperation");
return nullptr;