将一个GeoJSON对象数组(FeatureCollection、Feature或者Geometry)扁平化并进行缩减,返回一个包含所有坐标的数组。
turf.flattenReduce(features, reducer, initialValue)
features (FeatureCollection|Feature|Geometry) - GeoJSON对象数组。reducer (Function) - 数组的缩减函数,接受两个参数:累加值和当前值。可以使用JavaScript的reduce函数。initialValue (Any) - 可选的累加值的初始值。如果未提供此参数,数组的第一个元素将成为初始值。Array) - 包含所有坐标的数组。var points = turf.featureCollection([
turf.point([0, 0]),
turf.polygon([[[1,1], [1,2], [2,2], [2,1]]])
]);
// 累加所有坐标的距离
var reducer = function(sum, coord) {
return sum + coord[0] + coord[1];
};
var distance = turf.flattenReduce(points, reducer, 0);
// distance === 10
Error - 如果features不是一个FeatureCollection、Feature或者Geometry对象,将抛出此异常。Error - 如果reducer不是一个函数,将抛出此异常。