【发布时间】:2011-06-03 03:48:54
【问题描述】:
我有一个 GPS 集群(包含许多彼此靠近的 GPS 点),我想通过在其外部点周围创建一个多边形来将其识别为一个地方。一种方法是 Convex Hull,我正在寻找它在 Javascript 中的实现。
有什么想法吗?
【问题讨论】:
标签: javascript gps polygon convex-hull
我有一个 GPS 集群(包含许多彼此靠近的 GPS 点),我想通过在其外部点周围创建一个多边形来将其识别为一个地方。一种方法是 Convex Hull,我正在寻找它在 Javascript 中的实现。
有什么想法吗?
【问题讨论】:
标签: javascript gps polygon convex-hull
以下演示展示了如何计算凸包,该凸包将绘制给定坐标的外边界或区域。这个demo是用javascript实现的
http://www.geocodezip.com/v3_map-markers_convexhull.asp
演示代码位于 https://github.com/mgomes/ConvexHull
凸包是谷歌地图 API 中尚未提供的概念。
【讨论】:
是的。查看标签中的来源。有两个单独的脚本:一个执行船体算法,另一个包含 google maps API 的东西。
在示例中,Initiation() 函数由 body 的 onload 事件调用,该函数为点击事件设置所有侦听器,创建随机点等。
查看船体的算法,chainHull_2D(P,n,H) 函数。我花了一点时间来理解它,但是一旦我掌握了它就很有意义。该函数将 H 与船体的 GLatLng 数组一起返回。然后使用 GLatLng 数组创建 GPolygon。
GPolygon 实现了 googles 地图叠加接口,所以你可以使用 Map.addOverlay 函数来显示多边形。
检查this tutorial 以更好地了解地图 API。
【讨论】: