在Android上平铺地图叠加层

时间:2012-07-26 06:16:42

标签: c# android google-maps overlay xamarin.android

我正在使用SDK MonoForAndroid。 我目前正在尝试将我自己的地图显示为Android中谷歌地图的叠加层。

例如:谷歌地图并没有很好地映射我的大学,我有一张我的大学地图,我想要坚持谷歌地图。

我研究了一些方法,例如:

1)将地图显示为图像。 由于大学是一个非常大的地方,地图是详细的。位图的图像限制是16MB,我想加载大约50MB的图像。所以这不是一个真正的选择,但它会导致选项二。

2)显示平铺的图像。 这似乎是更常见的方法。但是我找不到任何关于它如何在地图上绘制的好例子。我可以找到很多关于如何剪切图像的例子,只是没有在地图上绘制它。我不知道如何处理不同级别的缩放,因为需要不同的地图细节。

3)将矩形绘制为图块并使用带有图像的bitmapShader的绘画。

我找不到的东西,但可能很好:

4)是否有用于绘制平铺位图的平铺工具?

5)绘制矢量图像。

我只想以最有效/最简单的方式来做这件事

1 个答案:

答案 0 :(得分:0)

您是否花了很多时间查看Google Maps API?我知道在iOS上至少MapKit框架会为你处理大部分内容,而且我很确定Android会有类似的东西。

您应该始终开始寻找可以保持简单的最高级API。如果你已经在考虑位图大小和生成图块,那么你可能会让自己太难了。

这是一个教程,看起来像是一个很好的开始,包括设置,并使用MapView和Mono for Android添加叠加层: http://docs.xamarin.com/android/tutorials/Maps_and_Location/Part_2_-_Maps_API

一旦你的MapView工作了,那里还有很多其他资源应该包括如何添加不同类型的叠加层(路径,点等) - 但你可能会发现更多Java示例,所以你必须自己将它转换为Mono C#。