From 0a02785438c15a24d8dcd623a497d1c8b3335235 Mon Sep 17 00:00:00 2001 From: Tom Payne Date: Sat, 9 Nov 2013 17:13:45 +0100 Subject: [PATCH] Render MultiLineStrings using flat coordinates --- src/ol/replay/canvas/canvasreplay.js | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/ol/replay/canvas/canvasreplay.js b/src/ol/replay/canvas/canvasreplay.js index 3b03f35b28..661042cd98 100644 --- a/src/ol/replay/canvas/canvasreplay.js +++ b/src/ol/replay/canvas/canvasreplay.js @@ -293,10 +293,16 @@ ol.replay.canvas.LineStringBatch.prototype.drawLineStringGeometry = ol.replay.canvas.LineStringBatch.prototype.drawMultiLineStringGeometry = function(multiLineStringGeometry) { goog.asserts.assert(!goog.isNull(this.state_)); - var coordinatess = multiLineStringGeometry.getCoordinates(); + ol.extent.extend(this.extent_, multiLineStringGeometry.getExtent()); + var ends = multiLineStringGeometry.getEnds(); + var flatCoordinates = multiLineStringGeometry.getFlatCoordinates(); + var stride = multiLineStringGeometry.getStride(); + var offset = 0; var i, ii; - for (i = 0, ii = coordinatess.length; i < ii; ++i) { - this.drawCoordinates_(coordinatess[i]); + for (i = 0, ii = ends.length; i < ii; ++i) { + var end = ends[i]; + this.drawFlatCoordinates_(flatCoordinates, offset, end, stride); + offset = end; } };