Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 在谷歌地图的多边形内任意放置一个标记_Algorithm_Google Maps_Geometry - Fatal编程技术网

Algorithm 在谷歌地图的多边形内任意放置一个标记

Algorithm 在谷歌地图的多边形内任意放置一个标记,algorithm,google-maps,geometry,Algorithm,Google Maps,Geometry,有很多关于如何在谷歌地图中搜索的文档。但是,我的问题是如何在多边形内任意放置标记(理想情况下,尽可能远离边) 我试图计算多边形点的平均纬度和经度,但在一些非凹多边形中,这显然是失败的 我也考虑过计算面积,但显然情况也是如此 有什么想法吗?我希望避免,即使它在99%的时间内都有效。根据您的总体目标,有几种不同的方法可以实现这一点 一种方法是构造多边形的三角剖分,并将标记放置在其中一个三角形内。如果你不太担心最优性,你可以采用一种简单的启发式方法,比如选择最大三角形的质心,尽管这显然不一定会给出距离

有很多关于如何在谷歌地图中搜索的文档。但是,我的问题是如何在多边形内任意放置标记(理想情况下,尽可能远离边)

我试图计算多边形点的平均纬度和经度,但在一些非凹多边形中,这显然是失败的

我也考虑过计算面积,但显然情况也是如此


有什么想法吗?我希望避免,即使它在99%的时间内都有效。

根据您的总体目标,有几种不同的方法可以实现这一点

一种方法是构造多边形的三角剖分,并将标记放置在其中一个三角形内。如果你不太担心最优性,你可以采用一种简单的启发式方法,比如选择最大三角形的质心,尽管这显然不一定会给出距离多边形边最远的点。多边形三角剖分有很多算法:或者三角剖分可能是一种方法,并且有很多好的库,即和

如果您对查找最佳位置感兴趣,可以使用基于骨架的方法,使用多边形的或。中轴是与多边形边等距的一组曲线,而直骨架是一个相关结构。具体而言,这些类型的结构可用于查找距离边缘最远的点,用于使用基于直线骨架的方法的GIS标签放置应用程序

希望这有帮助