我试图准备OSM(* .osm.pbf)-整个意大利的数据,以供iPhone应用程序离线使用。我需要从7到16的缩放级别,因为全国各地都有很多POI。

This是我的起点。该解决方案的问题在于数据库的文件大小巨大。

是否有针对iOS 6/7的基于矢量的离线 map 使用的开源解决方案?
或者,是否可以最小化数据库文件的大小?

最佳答案

我已经对该主题进行了广泛的研究,因为我当前的项目需要离线映射功能。

通过为您提供一些我发现的可用开源工具和项目,我可以节省很多时间。

OpenStreetPad-https://github.com/beelsebob/OpenStreetPad/

该项目不再维护。但是,它直接从osm.pbf文件读取并成功渲染 map 。您将必须管理要映射的区域的大小,因为如果您尝试将整个国家/地区加载到该实现中,该实现似乎会挂起并最终崩溃。我为洛杉矶地区的子集使用了25mb的osm.pbf文件,它工作得很好。我认为渲染引擎需要优化。

Mapsforge移植到iOS-https://github.com/medvedNick/Mapsforge_iOS

这个速度更快,并且似乎在渲染矢量数据方面做得更好。

libosmscout-http://wiki.openstreetmap.org/wiki/Libosmscout

这是一个开源C++库,用于使用矢量 map 进行脱机渲染和路由。它是积极维护的(请参阅他们的邮件列表)。我很难在Mac OSX上编译它,但也许您会遇到好运。似乎是一个非常强大,强大且可移植的库。他们已经使其在Fedora,Moblin,Ubuntu,Debian,Windows,Qt和Mac OSX/iOS上运行。

祝你好运。如果您使用这些工具取得了某种突破,请回来分享您的结果。我正在做同样的事情,我可以自己使用指针。

关于适用于全国的iOS离线 map (OSM),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19513165/

10-11 14:19