Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kit-algo/rust_road_router
https://github.com/kit-algo/rust_road_router
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/kit-algo/rust_road_router
- Owner: kit-algo
- License: bsd-3-clause
- Created: 2017-11-03T09:12:21.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2023-05-03T14:25:23.000Z (over 1 year ago)
- Last Synced: 2024-07-01T18:19:39.049Z (4 months ago)
- Language: Rust
- Size: 3.42 MB
- Stars: 33
- Watchers: 8
- Forks: 6
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-georust - rust_road_router - Rust routing framework and toolkit. (Watchlist)
README
# Rust routing framework and toolkit
There are two crates.
The engine which is a library containing several routing algorithms and utilities for working with routing data.
The server crate builds on the engine library and provides and HTTP interface for answering routing queries.
Refer to the readmes of the respective crates for more information.Additonally, there is a `lib` directory, which contains `InertialFlowCutter`, a partitioning program to calculate nested disection orders for CCHs, as a git submodule.
# Running CCH server with Docker
Using the following commands, a docker container can be launched, which imports routing data from HERE CSV files and runs the routing server.
```
git submodule update --init --recursive
docker build -t routing_engine .
docker run -p :80 --mount 'type=bind,src=,dst=/import' --mount 'type=volume,src=routing_engine_data,dst=/data' routing_engine
```Here import will take 10 - 20 minutes and might need a lot of RAM for the link geometry.
FlowCutter some minutes.
Actual CCH preprocessing less than a minute.
Refer to the readme of the server crate for API documentation.