我开始使用Osmdroid,希望利用该技术展示F1赛道的地图。我有一张大图片,可以将其分割成小块瓦片。
我能否修改osmdroid库以上传这些图片?
我想将这些位图(瓦片)保存在我的资产文件夹中。
我对如何实现此功能感到困惑。
我使用这种方式是因为在android上,当我尝试展示完整的全尺寸图片时通常会出现内存错误。如果我只展示图像的一些瓦片(取决于缩放比例),可能我的应用程序会更好地运行?
提前感谢您的帮助!
Osmdroid使用一种将世界地图划分为瓦片的系统。这些瓦片通常具有相同的像素大小,这意味着你使用更大的缩放级别时,需要更多的瓦片来"覆盖世界"。每个瓦片都有它的坐标(x,y)和一个设计用于使用的缩放级别。
在osmdroid中可以使用各种自定义瓦片源。请查看osmdroid中的这个类 - 它创建了一些瓦片源实例。你可以使用相同的机制创建自己的瓦片源。然而,所有这些都使用我上面描述的世界的x,y坐标。Osmdroid会请求你的瓦片源例如在缩放级别10中的10,10瓦片。如果你能够创建与此坐标系统兼容的地图瓦片,则它将正常工作。但是,对于自定义地图(如F1赛道),这可能很难做到。
我也对此感兴趣,可能会尝试在不久的将来使用osmdroid的瓦片机制来显示一些大图片。如果你成功了,请告诉我:)。