A routing engine for roads and more
GraphHopper offers memory efficient algorithms in Java for road routing. E.g. Dijkstra and A* but also optimized algorithms like Contraction Hierarchies. It stands under the Apache License and is heavily (automated) tested although still in alpha - i.e. the library itself is quite stable but the API not.
The core of GraphHopper can be used in a server, on the Desktop or on Android.
- Small and fast
- Memory efficient
- Well tested
The web subproject creates a simple routing service returning JSON which is then used via Leaflet.
This is an offline road routing example to show how to combine GraphHopper and Mapsforge on Android. You can directly use the Eclipse project to get started.