3

我试图了解 OpenStreetMap 的所有这些地图格式,我真的很困惑。OSM wiki 有很多信息,但看起来它分布在不同的地方,我无法深入了解所有格式。

我正在寻找可以在 Android 中用于离线使用的东西。我知道有很多框架甚至完成的应用程序使用不同的文件格式,但对我来说,他们使用的文件格式都很大。

据我了解,OSM 支持的最轻量级格式是 PBF-Binary,它是光栅格式,对吗?

我发现可以将其转换为矢量的 *.map 格式,对吗?

然后大小比 PBF-Binary 小 40%,但它必须被渲染,它不会像光栅一样快,对吧?

那么另一个问题是,可以用于 android 的最紧凑的 OSM 地图格式是什么?

我知道一个我经常使用的应用程序 - MapsWithMe,它有小地图文件,而且速度非常快,但我不知道它是使用光栅还是矢量,我只知道他们使用 OSM 地图,但据我了解他们有基于它或类似的东西创建自己的格式。

我遇到过 GeoJson,地图文件非常小,不超过几兆字节。所以现在我很困惑为什么会这样,为什么它不用于移动开发,因为我用谷歌搜索了“geojson android”并且没有关于它的信息。

有这些格式的对照表吗?

所以如果有人有一个链接可以让我了解所有这些东西,你能把它给我吗?

谢谢

4

1 回答 1

5

PBF格式是XML的一个小得多的替代方案。它包含相同的原始矢量数据。您可以从一种格式转换为另一种格式,而不会丢失任何信息。PBF 更小更快,因为它是二进制数据,而 XML 是纯文本。OSM wiki 简要概述了常见的 OSM 文件格式

我不知道你从哪里得到 GeoJson 很小的信息。地图的大小取决于几个属性。主要是覆盖面和细节。通常,您不希望在您的设备上拥有覆盖整个世界的离线地图,因为它会非常大。大多数时候你只需要一个小区域,比如一个国家。通常您并不需要 OSM 可以提供的所有信息。道路、城市和重要的 POI 通常足以用于路由和搜索。

你没有告诉我们你想用地图做什么。只是画吗?还是您还需要路由和搜索功能?哪种地图格式对您最有用取决于您的用例。

已经有很多使用 OSM 的 Android 软件,包括各种开源程序。如果您需要软件灵感,可以查看它们。

于 2013-07-25T20:25:59.267 回答