1

我目前正在使用 mapsforge ( https://github.com/mapsforge/mapsforge/ ) 做一个原生 android 应用程序。我让它与一个国家的离线地图一起工作,但后来需要有一个以上的国家,这就是我遇到问题的地方。

我希望能够流式传输或下载我周围的部分(可能是我周围 10 平方英里),我将如何去做,或者可能为我指明有助于我实现这一目标的材料方向

谢谢您的帮助

4

1 回答 1

2

您可以通过在osmosis库中指定bbox参数来生成任何矢量数据正方形区域:

  • pbf下载包含您感兴趣的区域的 OpenStreetMap文件。从此处此处

  • 使用mapsforge map-writer 插件安装 osmosis :

    git clone https://github.com/openstreetmap/osmosis.git
    cd osmosis
    ./gradlew assemble
    mkdir -p ~/.openstreetmap/osmosis/plugins
    cd ~/.openstreetmap/osmosis/plugins
    wget http://ci.mapsforge.org/job/0.5.1/lastSuccessfulBuild/artifact/mapsforge-map-writer/build/libs/mapsforge-map-writer-0.5.1.jar
    
  • .map通过在参数中指定南、西、北、东坐标来创建矢量切片bbox

    ~/osmosis/package/bin/osmosis --rb file=london_england.osm.pbf --mapfile-writer file=/tmp/london.map bbox=51.38,-0.35,51.67,0.14
    
于 2015-06-19T13:39:17.273 回答