aboutsummaryrefslogtreecommitdiff
path: root/src/proj.h
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2019-02-17 19:40:38 +0100
committerEven Rouault <even.rouault@spatialys.com>2019-02-17 19:42:35 +0100
commite8b2e2a36324006146406fb1fc89ce6ed863807f (patch)
tree5c2c0c9229958d63e77171f64f909864855afb5d /src/proj.h
parenta8cbe0c66974871f5a7bd7ef94001ebf461ac7ea (diff)
downloadPROJ-e8b2e2a36324006146406fb1fc89ce6ed863807f.tar.gz
PROJ-e8b2e2a36324006146406fb1fc89ce6ed863807f.zip
Modify the default strategy of researching intermediate CRS to do it only if there is no direct transformation
Diffstat (limited to 'src/proj.h')
-rw-r--r--src/proj.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/proj.h b/src/proj.h
index f25c3228..af22c341 100644
--- a/src/proj.h
+++ b/src/proj.h
@@ -629,6 +629,19 @@ typedef enum {
PROJ_SPATIAL_CRITERION_PARTIAL_INTERSECTION
} PROJ_SPATIAL_CRITERION;
+ /** Describe if and how intermediate CRS should be used */
+typedef enum {
+ /** Always search for intermediate CRS. */
+ PROJ_INTERMEDIATE_CRS_USE_ALWAYS,
+
+ /** Only attempt looking for intermediate CRS if there is no direct
+ * transformation available. */
+ PROJ_INTERMEDIATE_CRS_USE_IF_NO_DIRECT_TRANSFORMATION,
+
+ /* Do not attempt looking for intermediate CRS. */
+ PROJ_INTERMEDIATE_CRS_USE_NEVER,
+} PROJ_INTERMEDIATE_CRS_USE;
+
/** Type of coordinate system. */
typedef enum
{
@@ -906,7 +919,7 @@ void PROJ_DLL proj_operation_factory_context_set_use_proj_alternative_grid_names
void PROJ_DLL proj_operation_factory_context_set_allow_use_intermediate_crs(
PJ_CONTEXT *ctx,
PJ_OPERATION_FACTORY_CONTEXT *factory_ctx,
- int allow);
+ PROJ_INTERMEDIATE_CRS_USE use);
void PROJ_DLL proj_operation_factory_context_set_allowed_intermediate_crs(
PJ_CONTEXT *ctx,