From 35129af7f0ca87216c4ea7985f94b2d4c6ff0ee2 Mon Sep 17 00:00:00 2001 From: Andreas Hocevar Date: Thu, 23 Jun 2016 09:33:04 +0200 Subject: [PATCH] Do not optimize lines away entirely --- src/ol/render/canvas/canvasreplay.js | 2 +- .../spec/ol/layer/expected/vector-canvas.png | Bin 2193 -> 2236 bytes test_rendering/spec/ol/layer/vector.test.js | 9 +++++++++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/ol/render/canvas/canvasreplay.js b/src/ol/render/canvas/canvasreplay.js index 1a12c021aa..3370db2737 100644 --- a/src/ol/render/canvas/canvasreplay.js +++ b/src/ol/render/canvas/canvasreplay.js @@ -489,7 +489,7 @@ ol.render.canvas.Replay.prototype.replay_ = function( y = pixelCoordinates[d + 1]; roundX = (x + 0.5) | 0; roundY = (y + 0.5) | 0; - if (roundX !== prevX || roundY !== prevY) { + if (d == dd - 2 || roundX !== prevX || roundY !== prevY) { context.lineTo(x, y); prevX = roundX; prevY = roundY; diff --git a/test_rendering/spec/ol/layer/expected/vector-canvas.png b/test_rendering/spec/ol/layer/expected/vector-canvas.png index cd2d1e86cecc1989e8c97a1c5b3af0b8f51907a3..69ed07ca4ed2fd63b2fb75209265deaa6a364913 100644 GIT binary patch delta 2224 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