From 964569728722e9e91f152410a4747a0ba078bd84 Mon Sep 17 00:00:00 2001 From: Even Rouault Date: Tue, 14 Apr 2020 17:17:55 +0200 Subject: tmerc/utm: add a +algo=auto/evenden_snyder/poder_engsager parameter The default remains +alg=poder_engsager. This default value can be changed in proj.ini +algo=auto will use Evenden Synder implementation if the error in doing so remains below 0.1 mm on Earth-sized ellipsoid --- src/filemanager.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/filemanager.cpp') diff --git a/src/filemanager.cpp b/src/filemanager.cpp index 5904c4fb..2a5678b7 100644 --- a/src/filemanager.cpp +++ b/src/filemanager.cpp @@ -1848,6 +1848,18 @@ void pj_load_ini(projCtx ctx) { val > 0 ? static_cast(val) * 1024 * 1024 : -1; } else if (key == "cache_ttl_sec") { ctx->gridChunkCache.ttl = atoi(value.c_str()); + } else if (key == "tmerc_default_algo") { + if (value == "auto") { + ctx->defaultTmercAlgo = TMercAlgo::AUTO; + } else if (value == "evenden_snyder") { + ctx->defaultTmercAlgo = TMercAlgo::EVENDEN_SNYDER; + } else if (value == "poder_engsager") { + ctx->defaultTmercAlgo = TMercAlgo::PODER_ENGSAGER; + } else { + pj_log( + ctx, PJ_LOG_ERROR, + "pj_load_ini(): Invalid value for tmerc_default_algo"); + } } } -- cgit v1.2.3