已經解決,用geohash解決了,思路就是先把使用者的經緯度用geohash計算,把自己商戶裡面的經緯度也用geohash算一般,然後比較一下,就可以了
貼兩個連結
geohash類連結描述
操作方法連結描述
----------分割線------------------
目前在做一個頁面,類似與美團這種頁面附近商家的功能
要求:展示附近商戶相關資訊並展示相關距離(比如說1000米)
目前已經用百度LBS開放平台:瀏覽器定位到使用者的維度
同時資料庫也儲存著商戶的經緯度,聽說百度appstore也有測距的api,但總感覺不知道聯合起來湊成一塊
這個應該怎麼一個開發思路?
回複內容:
已經解決,用geohash解決了,思路就是先把使用者的經緯度用geohash計算,把自己商戶裡面的經緯度也用geohash算一般,然後比較一下,就可以了
貼兩個連結
geohash類連結描述
操作方法連結描述
----------分割線------------------
目前在做一個頁面,類似與美團這種頁面附近商家的功能
要求:展示附近商戶相關資訊並展示相關距離(比如說1000米)
目前已經用百度LBS開放平台:瀏覽器定位到使用者的維度
同時資料庫也儲存著商戶的經緯度,聽說百度appstore也有測距的api,但總感覺不知道聯合起來湊成一塊
這個應該怎麼一個開發思路?
如果你有商戶的經緯度,百度應該有對於的api可以算出距離的,自己做的話,
1,用mongodb
2,用geohash演算法,把經緯度儲存成hash,在比較
問的比較粗獷,只能籠統的跟你說一下我的方法,做過類似的。
1、按照城市把商戶的位置資訊分段存放,
2、瀏覽器擷取使用者位置,用百度的地圖js api擷取。
3、算出一個矩形來,以使用者位置為中心的
4、資料庫中匹配經緯度的值和距離值,得出合適的商戶資訊。
5、顯示出來
MongoDB支援基於地理位置的查詢
百度:
redis geo
或mongodb geo
或postgresql geo
或mysql geo
都沒說到點子上,
使用百度地圖API →測距車連網API
:測量多點之間的直線距離
測距車連網API
如需擷取線路距離:需用Direction API
http://developer.baidu.com/map/index.php?title=webapi/direction-api