simplify function
Feature<LineString>
simplify(
- Feature<
LineString> points, { - double tolerance = 1,
- bool highestQuality = false,
Simplify a LineString feature using dart port of simplify.js high-performance JS polyline simplification library.
both algorithms combined for awesome performance
Implementation
Feature<LineString> simplify(
Feature<LineString> points, {
double tolerance = 1,
bool highestQuality = false,
}) {
var coords = getCoords(points);
if (coords.length <= 2) return points;
if (coords is! List<Position>) return points;
final sqTolerance = tolerance * tolerance;
coords = highestQuality ? coords : _simplifyRadialDist(coords, sqTolerance);
coords = _simplifyDouglasPeucker(coords, sqTolerance);
return Feature<LineString>(
id: points.id,
geometry: LineString(coordinates: coords),
properties: points.properties,
bbox: points.bbox,
);
}