Hilfe beim Auslesen von Daten aus OSM

Hallo zusammen,

ich versuche gerade selbst ein Navigationssystem zu programmieren, habe jetzt aber das Problem, dass ich bisher keinen Weg gefunden habe die benötigten Daten aus OSM auszulesen.
Im Forum war ich bereits auf der Suche, konnte aber leider nichts finden das mir weitergeholfen hätte. Deshalb wende ich mich nun an euch und hoffe auf eure Hilfe.

Mein Plan wäre eine bereits bestehende auf OSM Daten aufbauende Karte zu nehmen. Hier habe ich bisher lediglich mit JOSM gearbeitet, konnte aber die nötige Funktion nicht finden dann auch gezielt Daten aus- / an andere Programme weiterzugeben.
Ich arbeite mit Windows, was ebenfalls einige Möglichkeiten ausschließt oder zumindest erschwert.

Nun aber zu meiner Frage und Problemstellung:
Ich würde gerne in einer (wenn möglich schon) bestehenden Karte zur Wegdefinition eine Reihe von Mausklicks setzen und deren Koordinaten bzw. Längen– und Breitengrade auslesen (bestenfalls in C/ C++) um mit hiermit eine Trajektorie zu generieren die die Wegpunkte verbindet. Damit diese Trajektorie auch befahrbar ist müsste ich die hierbei entstehende Trajektorie noch einmal mit den nodes und ways der OSM Datenbank vergleichen, diese Daten also entweder direkt mit ausgeben oder im Nachhinein die Wegpunkte meiner Trajektorie wieder in der Karte visualisieren und eine „Sichtprüfung“ machen.

Könnt ihr mir hierzu Tipps geben bezüglich eines dafür geeigneten Programmes, einer Möglichkeit in JOSM oder generell Empfehlungen zu Vorgehensweise?
Ich bin generell über jeden Tipp sehr dankbar!
Solltet ihr andere Plattformen kennen auf denen ich hierbei Hilfe erwarten kann nehme ich diese Tipps ebenfalls gerne an.

Auf jeden Fall vielen Dank euch schon im Voraus für eure Zeit!

Mit freundlichen Grüßen,
Philipp

… und einfach auf bestehendes - freie Software (Lizenz beachten) - zurückgreifen und anpassen?

http://brouter.de/brouter-web/

http://www.routino.org/

Auf Netzwolfs Seite über Routing geht zwar das Beispiel nicht mehr, aber die Programme dort sollten noch funktionieren. Damit wird man keinen Router bauen können, der einen quer durch Europa führt, aber als Einstieg für bastelfreudige Programmierer finde ich die Beispiele super.

Grüße
Max

Sowas gibts schon als fertige Lösung unter dem Stichwort ‘map match’ service als Teil des OSRM Projekts. Ein paar links dazu:
https://github.com/Project-OSRM/osrm-backend/blob/master/docs/http.md#match-service

https://gis.stackexchange.com/questions/244090/query-for-way-that-connects-two-intersections