loleaflet/src/layer/tile/CanvasTileLayer.js | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-)
New commits: commit 64a860340886498be592c3ee09d8f1fc6022ef31 Author: Michael Meeks <michael.me...@collabora.com> AuthorDate: Wed Sep 9 12:02:50 2020 +0100 Commit: Michael Meeks <michael.me...@collabora.com> CommitDate: Wed Sep 9 12:06:06 2020 +0100 calc tiles: clarify some magic. Change-Id: I2d95dd09b5640a5216e72366493ddf77541c8b73 diff --git a/loleaflet/src/layer/tile/CanvasTileLayer.js b/loleaflet/src/layer/tile/CanvasTileLayer.js index aee0f9b60..dd198966b 100644 --- a/loleaflet/src/layer/tile/CanvasTileLayer.js +++ b/loleaflet/src/layer/tile/CanvasTileLayer.js @@ -162,7 +162,9 @@ L.CanvasTilePainter = L.Class.extend({ var tileBounds = new L.Bounds(tileTopLeft, tileTopLeft.add(ctx.tileSize)); for (var i = 0; i < ctx.paneBoundsList.length; ++i) { + // co-ordinates of this pane in core document pixels var paneBounds = this._layer._cssBoundsToCore(ctx.paneBoundsList[i]); + // co-ordinates of the main-(bottom right) pane in core document pixels var viewBounds = this._layer._cssBoundsToCore(ctx.viewBounds); // into real pixel-land ... @@ -172,16 +174,17 @@ L.CanvasTilePainter = L.Class.extend({ if (!paneBounds.intersects(tileBounds)) continue; - var offset = paneBounds.getTopLeft(); // allocates - offset.x = Math.min(offset.x, viewBounds.min.x); - offset.y = Math.min(offset.y, viewBounds.min.y); + var paneOffset = paneBounds.getTopLeft(); // allocates + // Cute way to detect the in-canvas pixel offset of each pane + paneOffset.x = Math.min(paneOffset.x, viewBounds.min.x); + paneOffset.y = Math.min(paneOffset.y, viewBounds.min.y); // when using the pinch to zoom, set additional translation based */ // on the pinch movement if (this._map._animatingZoom) { var centerOffset = this._map._getCenterOffset(this._map._animateToCenter); - offset.x += Math.round(centerOffset.x); - offset.y += Math.round(centerOffset.y); + paneOffset.x += Math.round(centerOffset.x); + paneOffset.y += Math.round(centerOffset.y); } // intersect - to avoid state thrash through clipping @@ -198,8 +201,8 @@ L.CanvasTilePainter = L.Class.extend({ crop.min.x - tileBounds.min.x, crop.min.y - tileBounds.min.y, cropWidth, cropHeight, - crop.min.x - offset.x, - crop.min.y - offset.y, + crop.min.x - paneOffset.x, + crop.min.y - paneOffset.y, cropWidth, cropHeight); if (this._layer._debug) { _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits