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).