2

使用方向服务我在地图上绘制了一条路线。现在我希望将这条路线保存为 MySQL 中的多边形

所以我需要在每 100 米之后获取路线上点的纬度/经度,我将其保存为多边形。我如何在谷歌地图 V3 中做到这一点。我正在使用 JS 和 JAVA。

我还在这里找到了类似的帖子,有 75 次以上的浏览量,但没有任何回复。

4

1 回答 1

3

嗯,首先我会专注于

获取路径()

Google Maps API v3 中折线对象的方法。

看到这个链接

这将返回 LatLng 对象的 MVC 数组,这些对象是生成的路线折线的顶点。然后,如果您想要更多点样本(例如,我的意思是您希望在每 100 米后获得点),您可以编写一个循环来生成更多点。循环中将发生的事情是它使用当前索引获取 LatLng 并获取下一个索引。然后它计算它们之间的航向,然后如果检查的两个点之间的距离超过 100 米,那么它将在距当前索引点 100 米的距离处放置一个点。

为了给你更多的思考,我建议你看看这个链接

在循环期间,您会将纬度收集到一个新数组中,该数组将在循环结束时包含生成的折线的所有所需顶点。

至于将这些点存储在mysql中,您必须将这些点格式化为WKT格式。由于将方向折线存储为多边形是无意义的,因此我建议您使用 LINESTRING。这是一个维基百科页面,它为您提供 WKT 的概述:链接

于 2013-04-17T12:14:56.570 回答