2014-12-30 48 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)为值还是原始值好? - –

相关问题