From ea961c859cd3e19eb7e1f7304967d02d6bb47fcd Mon Sep 17 00:00:00 2001 From: Andreas Hocevar Date: Wed, 10 Feb 2021 19:57:26 +0100 Subject: [PATCH] Only render vector tile image when needed --- src/ol/renderer/canvas/VectorTileLayer.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/ol/renderer/canvas/VectorTileLayer.js b/src/ol/renderer/canvas/VectorTileLayer.js index 89f44111db..be39e0d8ef 100644 --- a/src/ol/renderer/canvas/VectorTileLayer.js +++ b/src/ol/renderer/canvas/VectorTileLayer.js @@ -149,7 +149,7 @@ class CanvasVectorTileLayerRenderer extends CanvasTileLayerRenderer { } if (state === TileState.LOADED || state === TileState.ERROR) { this.updateExecutorGroup_(tile, pixelRatio, projection); - if (this.tileImageNeedsRender_(tile, pixelRatio, projection)) { + if (this.tileImageNeedsRender_(tile)) { render = true; if (queue) { this.renderTileImageQueue_[tileUid] = tile; @@ -833,13 +833,14 @@ class CanvasVectorTileLayerRenderer extends CanvasTileLayerRenderer { /** * @param {import("../../VectorRenderTile.js").default} tile Tile. - * @param {number} pixelRatio Pixel ratio. - * @param {import("../../proj/Projection.js").default} projection Projection. * @return {boolean} A new tile image was rendered. * @private */ - tileImageNeedsRender_(tile, pixelRatio, projection) { + tileImageNeedsRender_(tile) { const layer = /** @type {import("../../layer/VectorTile.js").default} */ (this.getLayer()); + if (layer.getRenderMode() === VectorTileRenderType.VECTOR) { + return false; + } const replayState = tile.getReplayState(layer); const revision = layer.getRevision(); const sourceZ = tile.sourceZ;