From 8c669ab5408615525a04ee5b2cf2bbfa1f19bb81 Mon Sep 17 00:00:00 2001 From: Tom Payne Date: Tue, 26 Nov 2013 16:26:10 +0100 Subject: [PATCH] Add ol.geom.flat.lineStringLength --- src/ol/geom/flatgeom.js | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/ol/geom/flatgeom.js b/src/ol/geom/flatgeom.js index 3b080bf50a..df418f842a 100644 --- a/src/ol/geom/flatgeom.js +++ b/src/ol/geom/flatgeom.js @@ -148,6 +148,24 @@ ol.geom.flat.inflateCoordinatesss = * @param {number} offset Offset. * @param {number} end End. * @param {number} stride Stride. + * @return {number} Length. + */ +ol.geom.flat.lineStringLength = function(flatCoordinates, offset, end, stride) { + var x1 = flatCoordinates[offset]; + var y1 = flatCoordinates[offset + 1]; + var length = 0; + for (i = offset + stride; i < end; i += stride) { + var x2 = flatCoordinates[i]; + var y2 = flatCoordinates[i + 1]; + length += Math.sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1)); + x1 = x2; + y1 = y2; + } + return length; +}; + + +/** * @param {number} x X. * @param {number} y Y. * @return {boolean} Contains (x, y).