- Splitting osm.XML files into regions for faster loading
- AStar routing with custom factors for modifying weights of roadpriority
- Output result as JSON
- Render Image of resulting path, weights, and loaded regions
At the moment, the program is able to split a give OSM-XML-Dataset into smaller "regions" that contain the needed information (e.g. nodes with coordinates, connections and some information on the ways) used for routing. This excludes borders, adresses, etc.
Using those regions, we can dynamically load needed data for any routing-requests, therefor reducing memory-usage.
Routing is based on an A*-Algorithm using a combination of distance-to-goal, roadPriority (e.g. highways over local roads) and turning-angles to get the heuristic value for next-node-visiting.
After calculation we can output the path JSON formatted including total-distance and time (based on roadspeed), as well as each step (node).
All of the aforementioned can be accessed via an API.
Also we can render different images (path, area(loaded regions), weights) or a combination thereof.