我想使用 OSM 数据文件( pbf 文件)做一个导航应用程序。
我想在我的 java 应用程序中使用 pbf 格式。
我正在寻找一种访问和读取 pbf 文件的方法,我发现它可以通过 osmosis 库进行访问。
不幸的是,我不知道如何使用该库,也没有文档。
我想使用 OSM 数据文件( pbf 文件)做一个导航应用程序。
我想在我的 java 应用程序中使用 pbf 格式。
我正在寻找一种访问和读取 pbf 文件的方法,我发现它可以通过 osmosis 库进行访问。
不幸的是,我不知道如何使用该库,也没有文档。
我对渗透的了解不够详细,如果它也做路由的话。但是,如果您只想阅读 OSM-PBF 文件以某种方式自己提取图形来进行路由,请查看https://github.com/scrosby/OSM-binary。这是 (iirc) osmosis 用于加载 pbf 文件的实际库。
另一种方法是使用 Graphhopper ( https://graphhopper.com )。它是一个开源路由库,支持加载 OSM 数据,速度非常快,并且只为它所做的事情和必须处理的数据使用合理的内存量。
从您在交叉帖子中的评论来看,我相信这个链接就是您所追求的。
https://lists.openstreetmap.org/pipermail/dev/2011-February/021804.html
如果您愿意,所有任务都可以独立实例化和调用。命令行上可用的每个任务(例如 --read-xml、--read-pbf 等)都由可以在您自己的代码中使用的类实现。
所以有很多和osmosis相关的jar文件可以导入,然后里面的类就可以使用了。我建议使用命令行版本的文档作为参考,然后尝试通过查看这些文档和代码来构建您的应用程序。
祝你好运!