当前位置:Gxlcms > PHP教程 > javascript-百度LBS定位出用户经纬度,并在数据库比较商户经纬度,得到与商户距离

javascript-百度LBS定位出用户经纬度,并在数据库比较商户经纬度,得到与商户距离

时间:2021-07-01 10:21:17 帮助过:16人阅读

已经解决,用geohash解决了,思路就是先把用户的经纬度用geohash计算,把自己商户里面的经纬度也用geohash算一般,然后比较一下,就可以了
贴两个链接

  1. geohash类链接描述

  2. 操作方法链接描述

----------分割线------------------

目前在做一个页面,类似与美团这种页面附近商家的功能

要求:展示附近商户相关信息并展示相关距离(比如说1000米)
目前已经用百度LBS开放平台:浏览器定位到用户的维度

同时数据库也保存着商户的经纬度,听说百度appstore也有测距的api,但总感觉不知道联合起来凑成一块
这个应该怎么一个开发思路?

回复内容:

已经解决,用geohash解决了,思路就是先把用户的经纬度用geohash计算,把自己商户里面的经纬度也用geohash算一般,然后比较一下,就可以了
贴两个链接

  1. geohash类链接描述

  2. 操作方法链接描述

----------分割线------------------

目前在做一个页面,类似与美团这种页面附近商家的功能

要求:展示附近商户相关信息并展示相关距离(比如说1000米)
目前已经用百度LBS开放平台:浏览器定位到用户的维度

同时数据库也保存着商户的经纬度,听说百度appstore也有测距的api,但总感觉不知道联合起来凑成一块
这个应该怎么一个开发思路?

如果你有商户的经纬度,百度应该有对于的api可以算出距离的,自己做的话,
1,用mongodb
2,用geohash算法,把经纬度保存成hash,在比较

问的比较粗犷,只能笼统的跟你说一下我的方法,做过类似的。
1、按照城市把商户的位置信息分段存放,
2、浏览器获取用户位置,用百度的地图js api获取。
3、算出一个矩形来,以用户位置为中心的
4、数据库中匹配经纬度的值和距离值,得出合适的商户信息。
5、显示出来

MongoDB支持基于地理位置的查询

百度:
redis geomongodb geopostgresql geomysql geo

都没说到点子上,
使用百度地图API →测距车联网API:测量多点之间的直线距离

测距车联网API

如需获取线路距离:需用Direction API
http://developer.baidu.com/map/index.php?title=webapi/direction-api

人气教程排行