From 956bff0fe29f55483e556f4f67457690757df75b Mon Sep 17 00:00:00 2001 From: Tom Payne Date: Sat, 7 Dec 2013 12:23:09 +0100 Subject: [PATCH] Add ol.geom.LinearRing#getSimplifiedGeometryInternal --- src/ol/geom/linearring.js | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/ol/geom/linearring.js b/src/ol/geom/linearring.js index 3fa3bcbbe7..d47230b5a9 100644 --- a/src/ol/geom/linearring.js +++ b/src/ol/geom/linearring.js @@ -2,6 +2,7 @@ goog.provide('ol.geom.LinearRing'); goog.require('ol.geom.Geometry'); goog.require('ol.geom.flat'); +goog.require('ol.geom.simplify'); @@ -36,6 +37,22 @@ ol.geom.LinearRing.prototype.getCoordinates = function() { }; +/** + * @inheritDoc + */ +ol.geom.LinearRing.prototype.getSimplifiedGeometryInternal = + function(squaredTolerance) { + var simplifiedFlatCoordinates = []; + simplifiedFlatCoordinates.length = ol.geom.simplify.douglasPeucker( + this.flatCoordinates, 0, this.flatCoordinates.length, this.stride, + squaredTolerance, simplifiedFlatCoordinates, 0); + var simplifiedLinearRing = new ol.geom.LinearRing(null); + simplifiedLinearRing.setFlatCoordinates( + ol.geom.GeometryLayout.XY, simplifiedFlatCoordinates); + return simplifiedLinearRing; +}; + + /** * @inheritDoc */