2014-12-30 83 views
-2

我的系統中有以下問題:我的系統是客戶端 - 服務器體系結構。我的申請是關於在城市建設的認可。所以我決定將城市地圖分成網格,每個網格的面積等於30 x 30米。對於每個網格區域,我存儲網格的中心點(lat,long)。 所以我的問題是,如果用戶位於特定的網格x 它的位置發送到服務器如何我可以決定用戶位於哪個網格?什麼是更好的方式來表示空間數據

這裏有一個照片澄清的問題:

City organization as grids

回答

1

我假設你的網格是完全一樣的尺寸,並設置在一個完美的矩形,通過圖像所示。如何將所有網格存儲在簡單的2D數組中?然後,您可以通過做

grid_size = 30; 
index_x = math.floor(user.x/grid_size); 
index_y = math.floor(user.y/grid_size); 
+0

感謝凱文精彩的帽子戲法,狼狽不堪網格指數怎麼樣,如果情況是一團糟即網格不緊靠。我想我需要在這種情況下使用kd-tree嗎?你有其他意見嗎? –

+0

是的,當網格沒有很好地對齊時,kd-tree可能是合適的。 – Kevin

+0

感謝Kevin,還有一個問題是gps數據需要預處理(即量化lat和long)爲值還是原始值好? - –

相關問題