Smooths a Polygon or MultiPolygon. Based on Chaikin's algorithm. Warning: may create degenerate polygons.
-
inputPolys
(FeatureCollection<(Polygon | MultiPolygon)> | Feature<(Polygon | MultiPolygon)> | Polygon | MultiPolygon) (Multi)Polygon(s) to smooth -
options
Object Optional parameters (optional, default{}
)-
options.iterations
string The number of times to smooth the polygon. A higher value means a smoother polygon. (optional, default1
)
-
var polygon = turf.polygon([[[11, 0], [22, 4], [31, 0], [31, 11], [21, 15], [11, 11], [11, 0]]]);
var smoothed = turf.polygonSmooth(polygon, {iterations: 3})
//addToMap
var addToMap = [smoothed, polygon];
Returns FeatureCollection<(Polygon | MultiPolygon)> FeatureCollection containing the smoothed polygon/multipoylgons
This module is part of the Turfjs project, an open source module collection dedicated to geographic algorithms. It is maintained in the Turfjs/turf repository, where you can create PRs and issues.
Install this single module individually:
$ npm install @turf/polygon-smooth
Or install the all-encompassing @turf/turf module that includes all modules as functions:
$ npm install @turf/turf