我嘗試從谷歌地圖的中心獲取10個最接近的標記,並使用Javascript中的距離對中心進行排序。所以我們可以說我有一個Javascript數組中的100個標記 - 我想在html無序列表中顯示更多關於10個閉包的信息。 我發現了一個類似的API版本2(example in version 2)的例子,但沒有爲谷歌地圖API的版本3。谷歌地圖在地圖上獲得所有標記的10個最近點
6
A
回答
16
無論發生什麼您需要計算所有距離。您可以使用簡單的方程式自行完成,也可以使用Google的幾何庫:http://code.google.com/intl/pl-PL/apis/maps/documentation/javascript/geometry.html及其函數:computeDistanceBetween()。然後將距離存儲在自定義標記屬性中,例如:
marker.distance = google.maps.geometry.spherical.computeDistanceBetween(marker.position, center.position);
然後根據需要對其進行分類。 希望它有幫助。
0
- 按接近地圖的中心點對數組進行排序。使用
sort()
。 - 用
slice()
切片前10。 - 在地圖上繪製這些圖。
+0
謝謝,我用你的解決方案的第一個答案的功能! –
+1
對於這種操作,我通常使用[underscore](http://underscore.org)庫。這種操作有很多幫手。 就我而言,我在我的標記數組上使用了'_.each'和'_.sort'。 – bzin
相關問題
- 1. 谷歌地圖地理編碼不標記地圖上的所有地方
- 2. 如何獲取谷歌地圖上的所有標記-v3
- 3. 點擊Google地圖上的谷歌地圖標記
- 4. 谷歌地圖在一張地圖上的兩個標記
- 5. 標記在谷歌地圖
- 6. 最近5的位置(標記)在谷歌地圖
- 7. 從谷歌地點獲取附近位置,並在結果中在谷歌地圖上添加標記
- 8. 谷歌地圖問題沒有標記出現在地圖上
- 9. 在谷歌地圖上添加標記
- 10. 谷歌地圖API v3,無法獲得點擊標記
- 11. 在谷歌地圖中添加標記谷歌地圖反應
- 12. 谷歌地圖api v3 - 只有一個標記的地圖
- 13. 谷歌地圖API上的所有標記3地圖打開相同的infowindow
- 14. 谷歌地圖標記infowindow
- 15. android谷歌地圖標記
- 16. 谷歌地圖標記DROP
- 17. 谷歌地圖標記
- 18. 標記谷歌地圖
- 19. 谷歌地圖 - 多標記
- 20. 谷歌地圖標記
- 21. 谷歌地圖API標記
- 22. 谷歌地圖 - 多標記
- 23. 谷歌地圖:getSelected標記
- 24. RxJS谷歌地圖標記
- 25. 角谷歌地圖標記
- 26. 谷歌地圖標記
- 27. 谷歌地圖V3 「如何創建在地圖標記點擊」
- 28. 標記事件點擊谷歌地圖
- 29. 谷歌地圖標記點擊事件
- 30. 適合谷歌地圖上的標記
這就是我將如何做到這一點。對於較小的尺度,您可能可以使用平面pythagor表達式來計算距離(緯度差+經度平方差),但它並不精確,但速度可能更快。 – TMS
謝謝,這是完美的作品! –