From 772741cd0e3c059863f8c34ff81ebedff20b3887 Mon Sep 17 00:00:00 2001 From: mike-000 <49240900+mike-000@users.noreply.github.com> Date: Sat, 14 Mar 2020 10:14:28 +0000 Subject: [PATCH] Always load frameState extent for graticule layers do not call graticule loader with wrapped projection extent --- src/ol/renderer/canvas/VectorLayer.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/ol/renderer/canvas/VectorLayer.js b/src/ol/renderer/canvas/VectorLayer.js index 591ea95f83..d9e5e308e2 100644 --- a/src/ol/renderer/canvas/VectorLayer.js +++ b/src/ol/renderer/canvas/VectorLayer.js @@ -363,6 +363,8 @@ class CanvasVectorLayerRenderer extends CanvasLayerRenderer { vectorLayerRenderBuffer * resolution); const projectionExtent = viewState.projection.getExtent(); + let loadExtent = extent.slice(); + if (vectorSource.getWrapX() && viewState.projection.canWrapX() && !containsExtent(projectionExtent, frameState.extent)) { // For the replay group, we need an extent that intersects the real world @@ -378,6 +380,10 @@ class CanvasVectorLayerRenderer extends CanvasLayerRenderer { center[0] -= (worldsAway * worldWidth); } + if (typeof /** @type {?} */ (vectorLayer).getMeridians !== 'function') { + loadExtent = extent; + } + if (!this.dirty_ && this.renderedResolution_ == resolution && this.renderedRevision_ == vectorLayerRevision && @@ -398,10 +404,10 @@ class CanvasVectorLayerRenderer extends CanvasLayerRenderer { const userProjection = getUserProjection(); let userTransform; if (userProjection) { - vectorSource.loadFeatures(toUserExtent(extent, projection), resolution, userProjection); + vectorSource.loadFeatures(toUserExtent(loadExtent, projection), resolution, userProjection); userTransform = getTransformFromProjections(userProjection, projection); } else { - vectorSource.loadFeatures(extent, resolution, projection); + vectorSource.loadFeatures(loadExtent, resolution, projection); } const squaredTolerance = getSquaredRenderTolerance(resolution, pixelRatio);