我有点(x,y)的数组,我需要减少多边形的点。
我想使用Simplify.js(它结合了Douglas-Peucker)。
但是我有问题:
let test =
[ { x: 33.56257055900005, y: 44.83995926300003 },
.....
..... more than 7k points
{ x: 33.56257055900005, y: 44.83995926300003 } ];
let simplified = simplify(test, 1, true);
总是返回2分(第一和最后)。
https://www.npmjs.com/package/simplify-js
http://mourner.github.io/simplify-js/
什么是行不通的?
最佳答案
首先,删除测试的最后一点以将多边形转换为折线,然后平衡您的tolerance
。如果您的坐标在地球上,则1表示至少50英里(80公里)!!!
尝试0.001的容差
let simplified = simplify(test, 0.001, true);
关于javascript - simple-js包。总是返回2点多边形,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52925419/