gpt4 book ai didi

javascript - 多边形填充不明显?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:35:47 24 4
gpt4 key购买 nike

如果我用点创建一个多边形图层:[{"lat":51.509,"lng":-0.08},{"lat":51.503,"lng":-0.06},{"lat":51.51,"lng":-0.047},{"lat":"51.500","lng":"-0.039"}],我得到了这样的渲染:

enter image description here

这不是我需要的。我也在添加/删除点,并且看不到从多边形中删除相交线的方法,本质上是创建一个填充形状。有人这样做过吗?我也注意到谷歌地图也有同样的问题。如果它真的只是带阴影的折线,那么真正的“多边形”有什么意义?!

文档:http://leaflet.cloudmade.com/reference.html#polygon

使用一个简单的多边形,当理想情况下,所有最外层的坐标都是填充的边缘时,我仍然会得到这个。:enter image description here

最佳答案

我对您显示的多边形感到非常困惑,因为它似乎与您的坐标不匹配,所以我将它们放入传单中并得到了这个。

Polygon

这对我来说似乎是正确的行为。允许多边形中的线相交。所以这不是传单或谷歌地图的问题。这只是多边形的定义方式。换句话说,多边形不仅由一组点定义,而且还由点的顺序定义。

听起来你想要的是最小的simple polygon (一个不相交的多边形)包含你所有的点。您可以重新排序这些点以获得此。但是我不知道有任何算法,但是this answer似乎表明问题是 NP-hard。我不是这方面的专家,所以也许其他人可以提供帮助,或者您可以尝试在数学或 GIS stackexchange 中提问。

是的,多边形只是一条填充的多段线,其中连接了第一个点和最后一个点。

查看您发布的第二个多边形,听起来您想要的是 the convex hull of a finite set of points .如果这是你的问题,有 plenty of algorithms解决这个问题,他们也很快。

关于javascript - 多边形填充不明显?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10741349/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com