Open Source Routing Machine - C++ backend
Go to file
2016-05-04 18:42:47 +02:00
cmake Resolves issues with multiple includedirs in pkg-config file; closes #2195. 2016-04-05 22:59:14 +02:00
docker No longer install osmosis in docker env 2016-01-13 17:57:22 +01:00
docs Introduce on_ramp and off_ramp, deprecate ramp 2016-05-04 12:09:54 +02:00
example We require Visual Studio 2015+ 2016-05-02 17:50:54 +02:00
features Cucumber test for destination:ref and no destination=* 2016-05-04 15:28:34 +02:00
include Make hint values optional, fixes issue 2356 2016-05-04 15:24:48 +02:00
profiles Guard against mis-tagging: only use destination tag in combination with oneway tag 2016-05-04 15:28:34 +02:00
scripts enable suppression name suffix changes 2016-04-27 18:10:56 +02:00
src Register a way's .nodes() function for use in the profile's way_function. 2016-05-04 15:28:34 +02:00
test Add benchmark target to Makefile and save timings 2016-04-05 18:57:31 +02:00
third_party Merge commit '62e8601919faca57a0fa4be1a910458390450cc9' as 'third_party/variant' 2016-03-24 21:32:27 +01:00
unit_tests Add failing test for empty hint 2016-05-04 15:24:48 +02:00
.clang-format Squashed 'third_party/variant/' content from commit b585021 2016-03-24 21:32:27 +01:00
.clang-tidy Integration scripts for Clang's Modernize and Tidy tool. 2015-09-22 17:32:32 +02:00
.cncc.style Add simple cncc file 2016-01-05 12:06:33 +01:00
.eslintrc Rewrite cucumber test suite in JS 2016-03-24 16:01:01 -07:00
.gitignore Implement arbitrary turn penalty file IO and integration (#2306) 2016-04-29 00:48:13 -07:00
.gitmodules Removing Docs submodule 2012-12-26 18:29:16 +01:00
.travis.yml Enable ccache compression 2016-05-04 18:42:47 +02:00
appveyor-build.bat [skip travis] make AppVeyor publish binaries again 2016-04-29 10:32:29 +02:00
appveyor.yml Remove develop branch from appveyor 2016-04-23 17:55:18 +02:00
build-local.bat make AppVeyor work again 2016-03-31 16:49:30 +02:00
CHANGELOG.md [skip ci] Update changelog 2016-05-04 18:05:37 +02:00
CMakeLists.txt We require Visual Studio 2015+ 2016-05-02 17:50:54 +02:00
cucumber.js adding tests for guidance 2016-04-08 10:43:22 +02:00
Doxyfile.in Exclude new node_modules folder that might be around if test cases have been run. 2016-04-05 22:59:14 +02:00
LICENCE.TXT We are at 2016 for the license 2016-01-04 18:13:05 +01:00
package.json Colorize test result diff output. 2016-04-05 22:59:14 +02:00
profile.lua readding profile.lua 2013-07-02 22:51:21 +02:00
README.md Overhault the README 2016-04-29 13:00:27 +02:00
taginfo.json Basic destination sign handling. 2016-05-04 15:28:34 +02:00

About

The Open Source Routing Machine is a high performance routing engine written in C++11 designed to run on OpenStreetMap data.

Current build status

build config status
Linux Build Status
Windows Build status
Coverage Coverage Status

Building

For instructions on how to build and run OSRM, please consult the Wiki.

To quickly try OSRM use our free and daily updated online service

Documentation

Full documentation

Quick start

Building OSRM assuming all dependencies are installed:

mkdir -p build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
cmake --build .
sudo cmake --build . --target install

Loading preparing a dataset and starting the server:

osrm-extract data.osm.pbf -p profiles/car.lua
osrm-contract data.osrm
osrm-routed data.osrm

Running a query on your local server:

curl http://127.0.0.1:5000/13.388860,52.517037;13.385983,52.496891?steps=true&alternatives=true

Running a request against the Demo Server

First read the API usage policy.

Then run simple query with instructions and alternatives on Berlin:

curl https://router.project-osrm.org/13.388860,52.517037;13.385983,52.496891?steps=true&alternatives=true

References in publications

When using the code in a (scientific) publication, please cite

@inproceedings{luxen-vetter-2011,
 author = {Luxen, Dennis and Vetter, Christian},
 title = {Real-time routing with OpenStreetMap data},
 booktitle = {Proceedings of the 19th ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems},
 series = {GIS '11},
 year = {2011},
 isbn = {978-1-4503-1031-4},
 location = {Chicago, Illinois},
 pages = {513--516},
 numpages = {4},
 url = {http://doi.acm.org/10.1145/2093973.2094062},
 doi = {10.1145/2093973.2094062},
 acmid = {2094062},
 publisher = {ACM},
 address = {New York, NY, USA},
}