2

我正在尝试为我的应用程序设置一部分,其中用户的移动位置(我正在工作)用于查找最近的位置(比如说 15 英里内)与位置的 json 存储(比如说 40 个左右和它会增加)。我一直在绞尽脑汁想怎么解决这个问题。我相信距离矩阵(查看 Google API,但不知道如何从文档中实现它)是我需要的,但我不知道如何加载 json 列表并将其用于该位置(仍然是 n00b) . 如果有教程或一些关于如何去做的细节会很棒。我只需要一个正确的方向。
任何信息都很棒,提前谢谢。我正在使用 Sencha Touch 2.0.1,一个 json 存储并使用 Google Maps JavaScript API v3。

马特

4

2 回答 2

0

是的,想出了一个办法。很可能不是最好的,但它现在可以工作。我正在将所有纬度和经度与位置一起加载到商店文件中。然后,在初始化时,它获取当前位置并将其与存储的位置进行匹配,并对每个位置运行 Haversine 公式。一旦它有了所有的距离,它就会排序并完成。

于 2012-06-07T19:00:31.287 回答
0

您最好在后端进行该处理并仅将关闭记录发送回客户端。这将使您的客户端应用程序不会陷入困境。

如果您将纬度/经度点存储为空间数据,您可以为此使用 Postgresql/Postgis。您也可以使用 MySQL 空间扩展来执行此操作。如果您想将半正弦公式构建到 MySQL 函数中,您可以围绕所有点绘制 15 英里半径并使用 MySQL 的内置“within”函数。如果您更喜欢使用 NoSQL 的风格,那么 CouchDB 有一个不错的 GeoCouch 扩展,它可以执行您想要的功能。

于 2012-07-17T23:26:33.027 回答