From 4c1f325bf620439fb9a605967241609ada253e91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Minh=20Nguy=E1=BB=85n?= Date: Tue, 7 Jul 2015 12:14:26 -0700 Subject: [PATCH] =?UTF-8?q?Moved=20raster=20zoom=20threshold=20to=20the=20?= =?UTF-8?q?.5=E2=80=99s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes #963. --- src/mbgl/map/source.cpp | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/mbgl/map/source.cpp b/src/mbgl/map/source.cpp index d732292e0..7532bd8f9 100644 --- a/src/mbgl/map/source.cpp +++ b/src/mbgl/map/source.cpp @@ -316,7 +316,13 @@ double Source::getZoom(const TransformState& state) const { } int32_t Source::coveringZoomLevel(const TransformState& state) const { - return std::floor(getZoom(state)); + double zoom = getZoom(state); + if (info.type == SourceType::Raster || info.type == SourceType::Video) { + zoom = std::round(zoom); + } else { + zoom = std::floor(zoom); + } + return zoom; } std::forward_list Source::coveringTiles(const TransformState& state) const { @@ -405,7 +411,12 @@ bool Source::update(MapData& data, return allTilesUpdated; } - int32_t zoom = std::floor(getZoom(transformState)); + double zoom = getZoom(transformState); + if (info.type == SourceType::Raster || info.type == SourceType::Video) { + zoom = std::round(zoom); + } else { + zoom = std::floor(zoom); + } std::forward_list required = coveringTiles(transformState); // Determine the overzooming/underzooming amounts.