如何在特定半径范围内的地图上显示点

时间:2015-02-20 02:33:54

标签: google-maps google-app-engine geolocation

我一直在四处寻找如何解决这个问题的明确方向。我希望用户能够使用特定半径(例如5,10,25英里)在地图上显示兴趣点...

什么是最佳解决方案: 1-确定用户地理位置(例如maxmind?google map?) 2-在地图上显示感兴趣的点(当前加载在GAE数据存储中)

任何指导赞赏!!

由于

1 个答案:

答案 0 :(得分:1)

谷歌地图API的地理定位,每https://developers.google.com/maps/documentation/business/geolocation/,在我的(有偏见的! - )意见中相当不错,但当然你也可以为竞争对手购物(对不起,我不熟悉)他们和StackOverflow不鼓励在不同的图书馆,供应商和c)之间寻求建议的问题。

无论您使用什么来获取用户的地理位置,在App Engine中应用它的最佳方式是通过搜索API,https://cloud.google.com/appengine/docs/python/search/ - 您将“兴趣点”坐标存储为GeoPoint搜索“文档”的属性,然后只需在一定距离内以米为单位搜索具有该属性的“文档”索引(以米为单位,但从用户所在位置的里程转换为米:-)并不难。

最后,当然,您可以返回到谷歌地图API(或您可能更喜欢的任何竞争对手),向用户显示一个地图,上面显示您感兴趣的地点(作为标记,适当的图像,等等)。 / p>