diff --git a/src/ol/geom/flatgeom.js b/src/ol/geom/flatgeom.js index df418f842a..5744c99822 100644 --- a/src/ol/geom/flatgeom.js +++ b/src/ol/geom/flatgeom.js @@ -216,6 +216,24 @@ ol.geom.flat.linearRingIsClockwise = }; +/** + * @param {Array.} flatCoordinates Flat coordinates. + * @param {number} offset Offset. + * @param {number} end End. + * @param {number} stride Stride. + * @return {number} Perimeter. + */ +ol.geom.flat.linearRingPerimeter = + function(flatCoordinates, offset, end, stride) { + var perimeter = + ol.geom.flat.lineStringLength(flatCoordinates, offset, end, stride); + var dx = flatCoordinates[end - stride] - flatCoordinates[offset]; + var dy = flatCoordinates[end - stride + 1] - flatCoordinates[offset + 1]; + perimeter += Math.sqrt(dx * dx + dy * dy); + return perimeter; +}; + + /** * @param {Array.} flatCoordinates Flat coordinates. * @param {number} offset Offset.