Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorvng <viktor.govako@gmail.com>2011-01-06 22:56:36 +0300
committerAlex Zolotarev <alex@maps.me>2015-09-23 01:09:18 +0300
commiteffddd5ed3a1080a0b3f1605d954bd0c914c9f91 (patch)
tree49c18ac30e4f0fd785e20ac41ccffd53153fe046 /indexer/scales.cpp
parent29fad748ac0872c398802e3d9e4ae467f2093713 (diff)
- Geometry and Triangles simplification in features.
- Store Geometry and Triangles in different files of files-container for each scale range. - Make small epsilon for simplification. Remark: map_tests doesn't work
Diffstat (limited to 'indexer/scales.cpp')
-rw-r--r--indexer/scales.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/indexer/scales.cpp b/indexer/scales.cpp
index eb56ff1a99..978698663e 100644
--- a/indexer/scales.cpp
+++ b/indexer/scales.cpp
@@ -41,9 +41,22 @@ namespace scales
return GetScaleLevel((dx + dy) / 2.0);
}
+ namespace
+ {
+ double GetEpsilonImpl(int level, int logEps)
+ {
+ return (MercatorBounds::maxX - MercatorBounds::minX) / pow(2.0, double(level + logEps - initial_level));
+ }
+ }
+
double GetEpsilonForLevel(int level)
{
- return (MercatorBounds::maxX - MercatorBounds::minX) / pow(2.0, double(level + 6 - initial_level));
+ return GetEpsilonImpl(level, 6);
+ }
+
+ double GetEpsilonForSimplify(int level)
+ {
+ return GetEpsilonImpl(level, 9);
}
bool IsGoodForLevel(int level, m2::RectD const & r)