接近搜索谷歌地图

proximity search google map

本文关键字:谷歌地图 搜索 接近      更新时间:2023-09-26

我正在使用谷歌地图v3捕获名为Locations的MS SQL数据库表中的所有地址,该表将包含LocationName、LocationAddress、LocationZip、LocationState、LocationCity、LocLatitude、LocLongitude和LocationType等列(如医院、医生办公室或急救中心等)。。

我有一个输入框,用户可以在其中按关键字搜索,还有一个下拉框,其中包含5、10、20和50英里半径选项。我已经能够使用输入框并将键入的关键字作为querystring传递,以在谷歌地图api 3中搜索所有匹配的位置并为其绘制标记。我还喜欢对匹配的结果进行邻近搜索,比如在洛杉矶5英里以内。。

这个网站上使用的方法可以使用吗?http://maps.huge.info/dragcircle2.htm

它画的是5英里以内的半径,我需要捕捉该半径内的所有标记?请一些天才的谷歌地图男孩/女孩给我一些指导。。

Google有一个关于创建商店定位器的完整教程。您缺少的重要信息是如何查询数据库以检索您半径内的位置。

http://code.google.com/apis/maps/articles/phpsqlsearch.html

查看上面的链接了解详细信息,但查询看起来像这样(mySQL):

SELECT
  address,
  name,
  lat,
  lng,
  (
    3959 * acos(
      cos( radians('%s') ) * cos( radians( lat ) )
      *
      cos( radians( lng ) - radians('%s') )
      +
      sin( radians('%s') )
      *
      sin( radians( lat ) )
    )
  ) AS distance 
FROM markers 
HAVING distance < '%s' 
ORDER BY distance 
LIMIT 0 , 20

它使用三角法!