Move mapcreation to developer content
This commit is contained in:
parent
90b08e3fe5
commit
d45a811720
1 changed files with 8 additions and 3 deletions
86
docs/developers/build_segments.md
Normal file
86
docs/developers/build_segments.md
Normal file
|
|
@ -0,0 +1,86 @@
|
|||
---
|
||||
parent: Developers
|
||||
---
|
||||
|
||||
Build your own segments files
|
||||
=============================
|
||||
|
||||
BRouter uses its own data format (`.rd5` files), split in tiles of 5 x 5
|
||||
in latitude and longitude. You can download the official segment files (weekly
|
||||
built) from [brouter.de](http://brouter.de/brouter/segments4/) but you can
|
||||
also build them yourself from an OSM dump (e.g. planet or [GeoFabrik
|
||||
extract](https://download.geofabrik.de/))
|
||||
|
||||
|
||||
## Build the pbfparser
|
||||
|
||||
First, there are two file formats available to download OSM data: `bzip`-ed
|
||||
XML files (very large) and `.pbf`
|
||||
([Protobuf](https://github.com/protocolbuffers/protobuf) format) which is much
|
||||
more efficient. If you want to use the latter one, you will have to build the
|
||||
`pbfparser` (located in `misc/pbfparser` first):
|
||||
|
||||
* Download [the latest
|
||||
version](https://github.com/openstreetmap/osmosis/releases)
|
||||
of [Osmosis](https://wiki.openstreetmap.org/wiki/Osmosis) and unzip it
|
||||
somewhere.
|
||||
* Copy the `lib/default/protobuf-java-*.jar` and
|
||||
`lib/default/osmosis-osm-binary-*.jar` files from the unzipped Osmosis
|
||||
archive to `misc/pbfparser/protobuf.jar` and `misc/pbfparser/osmosis.jar`.
|
||||
* Build BRouter and copy
|
||||
`brouter-server/build/libs/brouter-*-all.jar` to
|
||||
`misc/pbfparser/brouter.jar`.
|
||||
* You can build the `pbfparser` using, in the `misc/pbfparser/`
|
||||
folder,
|
||||
|
||||
```
|
||||
javac -d . -cp "brouter.jar:protobuf.jar:osmosis.jar" *.java
|
||||
```
|
||||
|
||||
* Finally, you can build a `jar` file from these files using
|
||||
|
||||
```
|
||||
jar cf pbfparser.jar btools/**/*.class
|
||||
```
|
||||
|
||||
_Note:_ If the `jar` file is not properly created, everything else will seem
|
||||
to work normally but there will not be any data extracted from the OSM data
|
||||
dump. You can check what is actually inside the built `jar` file using
|
||||
`jar tf pbfparser.jar`.
|
||||
|
||||
|
||||
## Run the map creation script
|
||||
|
||||
If you want to have elevation information in the generated segments files, you
|
||||
should download the required [SRTM
|
||||
files](https://cgiarcsi.community/data/srtm-90m-digital-elevation-database-v4-1/)
|
||||
and set the `SRTM_PATH` variable when running the `process_pbf_planet.sh`
|
||||
script.
|
||||
|
||||
Any flavor of the 90m SRTM database should be working, but the one used by the
|
||||
official BRouter segments files are the ones provided by
|
||||
[CGIAR](https://cgiarcsi.community/data/srtm-90m-digital-elevation-database-v4-1/).
|
||||
If you are working with rather small geographical extracts, you can download
|
||||
tiles manually using [this
|
||||
interface](http://srtm.csi.cgiar.org/SELECTION/inputCoord.asp) (use the
|
||||
"ArcInfo ASCII" format), instead of having to ask for an access for bulk
|
||||
download of data. There is no need to unzip the downloaded files, the
|
||||
`process_pbf_planet.sh` script expects a folder with all the ZIP files inside
|
||||
and will manage it.
|
||||
|
||||
Note that if you don't have the SRTM data available, the segments files will
|
||||
still be generated without any issue (but they will miss the elevation data).
|
||||
If you are not sure which SRTM files you have to download, you can run the
|
||||
script once and it will log all the SRTM files it is looking for.
|
||||
|
||||
You can now run the `misc/scripts/mapcreation/process_pbf_planet.sh` script to
|
||||
build the segments. Have a look at the variables defined at the beginning of
|
||||
the files and overwrite them according to your needs. By default, the script
|
||||
will download the latest full planet dump from
|
||||
[planet.osm.org](https://planet.osm.org/). You can also download a
|
||||
geographical extract provided by [Geofabrik](https://download.geofabrik.de/)
|
||||
and set the `PLANET_FILE` variable to point to it.
|
||||
|
||||
_Note:_ It is possible that you encounter an error complaining about not being
|
||||
able to run `bash^M` on Linux/Mac OS. You can fix this one by running
|
||||
`sed -i -e 's/\r$//' process_pbf_planet.sh`.
|
||||
Loading…
Add table
Add a link
Reference in a new issue