turf.boolean重叠意外结果



我有这个多边形:

const polygon = JSON.parse('{"type":"Feature","properties":{},"geometry":{"type":"Polygon","coordinates":[[[6.26950853,50.72473626],[6.26953794,50.72468996],[6.2695546,50.7246512],[6.26949169,50.72468741],[6.26948194,50.72469389],[6.26946154,50.72470787],[6.26949172,50.72474162],[6.26950853,50.72473626]]]}}');

和这个边界框:

const bbox = JSON.parse('{"type":"Feature","properties":{},"geometry":{"type":"Polygon","coordinates":[[[6.511887823915231,50.950514414615334],[6.512896634823051,50.53594214902105],[5.98503728350704,50.53594214902105],[5.98604609441486,50.950514414615334],[6.511887823915231,50.950514414615334]]]}}');

我想知道多边形是否在边界框内切

为此,我使用草皮的布尔重叠.js。

turf.booleanOverlap(polygon, bbox);

它返回false.

为什么?这肯定在边界框内。

啊,我明白了。 文件说

"比较相同维度的两个几何图形,如果它们的交集导致几何图形与两者不同但维度相同,则返回 true。[...]"

我的多边形完全在边界框内。据我所知,交集(如文档所述)包含另一个多边形内的多边形。booleanOverlap所做的只是检查它是否重叠。我认为文档在这里有点误导,因为它让用户认为booleanOverlap包含一个内部。

最新更新