Google maps 如何使用google maps api搜索zipcode给定半径内的所有点?

Google maps 如何使用google maps api搜索zipcode给定半径内的所有点?,google-maps,google-maps-api-3,Google Maps,Google Maps Api 3,谷歌地图API有没有一种方法可以让我找到某个特定邮政编码的给定半径(英里)内的所有红色气球点(固定在谷歌地图上的地址) 例如 第一个输入框询问您的邮政编码。把它打进去 第二个输入框(带有的剖面框)要求您输入 半径以英里、10英里、20英里、30英里等为单位 然后单击提交 然后谷歌地图会显示所有的地址(这些地址是从 json文件),以红色气球显示在google地图上 网上有没有免费的学习资料可以帮助我建立这样的东西 我整个上午都在阅读谷歌地图api的内容,还没有找到任何能提供这一点的例子 谢谢

谷歌地图API有没有一种方法可以让我找到某个特定邮政编码的给定半径(英里)内的所有红色气球点(固定在谷歌地图上的地址)

例如

  • 第一个输入框询问您的邮政编码。把它打进去

  • 第二个输入框(带有的剖面框)要求您输入 半径以英里、10英里、20英里、30英里等为单位

  • 然后单击提交

  • 然后谷歌地图会显示所有的地址(这些地址是从 json文件),以红色气球显示在google地图上

网上有没有免费的学习资料可以帮助我建立这样的东西

我整个上午都在阅读谷歌地图api的内容,还没有找到任何能提供这一点的例子


谢谢

当您只需要一个近似值和一个快速结果时,您也可以尝试一个空间填充曲线,即空间索引。例如,查看xkcd漫画中的互联网地图。它使用希尔伯特曲线从互联网上打印地图。然后,可以使用曲线变换地理位置并放松最近邻搜索。相同的曲线在许多具有点数据类型和空间索引的数据库引擎中使用

这里有一条javascript hilbert曲线:。
这里有一个关于空间索引的博客:。我已经在phpclasses.org上编写了一个php类hilbert curve。它还使用墨卡托投影。

当您只需要近似值和快速结果时,也可以尝试空间填充曲线,即空间索引。例如,查看xkcd漫画中的互联网地图。它使用希尔伯特曲线从互联网上打印地图。然后,可以使用曲线变换地理位置并放松最近邻搜索。相同的曲线在许多具有点数据类型和空间索引的数据库引擎中使用

这里有一条javascript hilbert曲线:。
这里有一个关于空间索引的博客:。我已经在phpclasses.org上编写了一个php类hilbert curve。它还使用墨卡托投影。

以下是实现此功能需要遵循的两个高级步骤:

1) 您希望使用Google Geocoder API将zipcode(或许多不同形式的地址!)转换为纬度和经度坐标

2) 动态创建对脚本的GET请求,该脚本根据用户输入的距离(5英里、10英里等)查询数据库,如下所示:

请看我对这个相关问题的回答,这样您就可以进行用户输入并对地址进行地理编码:

GoogleMapsAPI提供了大量关于在数据库中查找与某个纬度和经度坐标最近的项目的文档。可以在这里找到:


注意:文档使用PHP、Javascript和MySQL。

以下是实现此功能所需的两个高级步骤:

1) 您希望使用Google Geocoder API将zipcode(或许多不同形式的地址!)转换为纬度和经度坐标

2) 动态创建对脚本的GET请求,该脚本根据用户输入的距离(5英里、10英里等)查询数据库,如下所示:

请看我对这个相关问题的回答,这样您就可以进行用户输入并对地址进行地理编码:

GoogleMapsAPI提供了大量关于在数据库中查找与某个纬度和经度坐标最近的项目的文档。可以在这里找到:


注意:文档使用PHP、Javascript和MySQL。

您的意思是告诉我,无法使用google maps api中的缩放功能设置居中气球点的半径?或者类似的东西???我不敢相信答案是否定的。这看起来太不现实了,因为开发者可以用谷歌地图做所有的事情!我所说的中心是指在浏览器窗口中看到所有地址的视觉透视图。chiyou,当你说JavaScript hilbert curve时,这和本页提到的例子一样吗。。。你的意思是说,谷歌地图api中的缩放功能无法设置居中气球点的半径?或者类似的东西???我不敢相信答案是否定的。这看起来太不现实了,因为开发者可以用谷歌地图做所有的事情!我所说的中心是指在浏览器窗口中看到所有地址的视觉透视图。chiyou,当你说JavaScript hilbert curve时,这和本页提到的例子一样吗。。。就是这样,我手头没有PHP或MySQL用于这个项目。我正试图用javascript和json来实现这一点。那个教程真的让我恼火,因为如果你不使用PHP和MySQL怎么办。如果您在Microsoft环境中,该怎么办???或者,如果您依赖json来存储地址信息,而不是数据库,该怎么办。似乎应该有更多的选项来实现这一点…你从哪里获得加载到地图上的标记?至于标记-我在黑暗中尝试用json加载我的标记-很酷,所以你想制作一个脚本文件,用radius参数调用。当调用脚本(可以是javascript)时,它使用与Google文档中显示的SQL查询非常相似的逻辑查看JSON文件<代码>选择id,(3959*acos(cos(弧度(37))*cos(弧度(纬度))*cos(弧度(lng)-弧度(-122))+sin(弧度(37))*sin(弧度(纬度)))作为与距离限制为0,20的距离小于25阶的标记的距离就是这样,我手头上没有PHP或MySQL用于这个项目。我正试图用javascript和json来实现这一点。那个教程真的让我恼火,因为如果你不使用PHP和MySQL怎么办。如果您在Microsoft环境中,该怎么办???或者,如果您依赖json来存储地址信息,而不是数据库,该怎么办。好像有
var searchUrl = 'phpsqlajax_search.php?lat=' + center.lat() + '&lng=' + center.lng() + '&radius=' + radius;