Skip to content

flosch/routeplanner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

routeplanner

A simple route planning software with a focus on bicycles written in Go (using OpenStreetMap data).

Just putting the source code online for those of you who are interested in the basic techniques and reading the code. I developed this route planner mainly for learning purposes. I never planned to release the code which is why most of the code comments are in German (sorry). Hence my approach is far from complete or ready for being used in production; it's likely that this code won't run on your computer because of invalid paths etc (I have to clean up the code first). I'm currently working on a new version where I try to take all leasons learned into account.

I put up a demo page for the Berlin/Germany area: http://route.florian-schlachter.de (API available)

Anyway, the route planner works quite nice even given its early stage. :-)

Features

  • Route calculation with profile support (for now, cars and bicycles)
  • JSON-API for route calculation and point discovery
  • Calculation of ETA, duration and route's bike compatiblity (in percent)
  • Reasonably fast (demo route through Berlin, about 37km, route calculated in about 40ms [car]/1s [bike])
  • General considerations for routes:
    • Speed limitations
    • Turn constraints
    • Driving directions
    • Traffic signals
    • Way types (private/public accesses)
    • Indication for tunnel entrances/exits
  • Bicycle profile:
    • Street conditions
    • Shortcuts using footways
    • Lightning conditions
    • Prefers "nice" ways (i.e. green and calm areas)
    • Level crossings
    • Barriers
  • Car profile:
    • Support for motorways, route indication for entrace/exit ramps

Due to some tricks, the car profile is way faster than the bike profile. The bike profile is much more complex and therefore takes more time to calculate the best route.

Blog posts

The following blog posts are written in German, sorry folks.

About

A simple route planner with a focus on bicycles written in Go

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages