Javascript 草皮';s mask()函数不能与10个或更多多边形一起运行
我无法使用超过9个随机创建的点运行Javascript 草皮';s mask()函数不能与10个或更多多边形一起运行,javascript,geospatial,geo,turfjs,Javascript,Geospatial,Geo,Turfjs,我无法使用超过9个随机创建的点运行turp.mask()函数。它只是不返回任何结果 import { featureCollection, polygon } from '@turf/helpers'; import createCircle from '@turf/circle'; import createMask from '@turf/mask'; const howManyCircles = 9; const cover = polygon([ [[-180, -90],
turp.mask()
函数。它只是不返回任何结果
import { featureCollection, polygon } from '@turf/helpers';
import createCircle from '@turf/circle';
import createMask from '@turf/mask';
const howManyCircles = 9;
const cover = polygon([
[[-180, -90], [180, -90], [180, 90], [-180, 90], [-180, -90]]
],
{ name: 'cover' });
const bbox = [83.16964204361335,83.47466091885153,-83.16964204362385,-83.47466091885192];
const randomPoints = randomPoint(howManyCircles, { bbox: bbox });
const radius = 1000;
const options = { steps: 64, units: 'kilometers', properties: { foo: 'bar' } };
const circles = randomPoints.features.map(points => {
return createCircle(points.geometry.coordinates, radius, options);
});
const mask = createMask(featureCollection(circles), cover);
这正如预期的那样有效。多边形中有九个孔(通过randomPoints()
函数创建)。
但是,只要我将howManyCircles
更改为大于9
的数字,就不会得到任何结果。它不断地计算,但并没有结束。这里有一把小提琴可以玩:
为什么呢
“@turf/helpers”:“^6.3.0”,
“@turf/random”:“^6.3.0”,
“@turf/turf”:“^6.3.0”,显然这是一个已知的错误,已在
v7
中修复。但是,纱线添加@trub/trub
或npm i@trub/trub
安装trub 6.3.0
。要安装最新版本,请使用npm iturf@7.0.0-alpha.1
那么对于小于9的版本就可以了?@EvgenyKlimenchenko 9及以下版本,是的。我查看了所有的文档,我认为它们没有任何限制。似乎是代码中的一个bug。我还看到你也在github中创建了一个问题,我相信那将是最好的地方。