From a490c658fb37eab79359000925f3fa379cb24814 Mon Sep 17 00:00:00 2001 From: Tim Schaub Date: Fri, 16 Nov 2018 13:34:13 +0100 Subject: [PATCH] Overscale canvas if sources have non-zero min zoom --- src/ol/renderer/canvas/TileLayer.js | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/ol/renderer/canvas/TileLayer.js b/src/ol/renderer/canvas/TileLayer.js index ca151222d3..3c8c56a8a2 100644 --- a/src/ol/renderer/canvas/TileLayer.js +++ b/src/ol/renderer/canvas/TileLayer.js @@ -153,9 +153,15 @@ class CanvasTileLayerRenderer extends CanvasLayerRenderer { let width = Math.round(frameState.size[0] * tilePixelRatio); let height = Math.round(frameState.size[1] * tilePixelRatio); if (tileResolution < viewResolution) { - // scale canvas so it covers the viewport until new tiles come it - width *= 1.5; - height *= 1.5; + // scale canvas so it covers the viewport until new tiles come in + let scale; + if (z <= tileGrid.minZoom) { + scale = Math.round(viewResolution / tileResolution); + } else { + scale = 1.5; // rely on lower z tiles + } + width *= scale; + height *= scale; } if (rotation) {