谷歌地图-将地球划分为区域



我想把地球划分成不同的区域,我可以把物体分配到不同的区域。

基本上,我有一张地图(来自谷歌地图或其他地方,确切的来源并不重要)。在这张地图上,我想定义不同类型的区域,例如,你可能有A、B或C类型的区域,甚至没有类型的区域。

我的问题是:你如何实现这个?使用哪些技术?

基本上,我想到了几个选项:

  • 使用地图投影将地图投影到2D矩形(子问题:使用哪一个?),并将区域定义为矩形。明显的好处是,除了投影,我不需要关心复杂的数学公式。缺点是我需要将每个输入投影到投影地图上。

  • 使用球体,并使用三角函数计算区域面积。这肯定是关于公式的更多工作,尽管你不需要一个投影。

还有其他的可能性吗?个人的优点和缺点是什么?

我想这样做的原因是因为最终用户可能会使用他或她的移动设备来获取他/她的当前位置。然后应用程序应该能够获得用户所在的区域。

任何想法?

最可能的地图应用程序使用空间索引来细分地图。空间索引是一条空间填充曲线。还有一种更复杂的曲线,比如希尔伯特曲线。微软必应地图使用了z曲线。也可以使用3d空间索引,但它非常复杂。但最有可能的是,它只是为了平铺和更快地查询地图。

  1. http://msdn.microsoft.com/en-us/library/bb259689.aspx

我有个好消息要告诉你:你正在寻找的地图(google maps等)已经是2d投影了,所以你不必担心投影。

好运

最新更新