2011-04-05 74 views
4

因此,我的網站上有谷歌地圖。我需要用戶能夠將地圖居中,然後我希望在服務器端能夠根據地圖的可見部分對對象列表進行排序(每個對象都具有lat和long屬性)在前端。這有意義嗎?想想Yelp.com根據用戶放大/縮小的地圖來分類餐廳的方式。按緯度/經度排序的列表

因此,首先根據列表的lat/long屬性排除不在地圖區域內的任何對象,然後根據哪些對象最靠近地圖。

要做到這一點,我需要從前端傳遞給服務器,一旦它在服務器上,我該如何做這種排序?

回答

4

計算great_circle_distance,然後按最小的數字排序。

+0

我該如何計算這一點,以及我需要計算哪些信息? – Scott 2011-04-05 19:20:44

+1

這裏是http://en.wikipedia.org/wiki/Great-circle_distance,你在經緯度上傳 – Randy 2011-04-05 19:21:56

+0

謝謝!我喜歡這種方式。 – Scott 2011-04-05 19:24:13

1

從它的聲音,你可能想要存儲的瓷磚或任何你正在檢索像四叉樹。然後,您可以將座標傳遞給服務器,服務器可以爲您檢索該孔徑中可見的對象,對它們進行分類,然後將它們發回。