Anleitung: Eigene Fahrradstrecken mit GraphHopper erstellen


Tutorial: Erstellen Sie personalisierte Fahrradstrecken mit GraphHopper

Schlüsselbegriffe Wichtige Details
📖 Definition GraphHopper ist eine Open-Source-Routenberechnungs-Engine.
🚴 Vorteile Optimierte Routen für das Fahrrad unter Berücksichtigung von Sicherheit und Komfort.
⚙️ Installation Docker oder lokale Installation je nach Bedarf.
🛣️ Fahrradprofile Anpassung des Fahrradtyps und der Streckenpräferenzen.
🎯 Personalisierung Geschwindigkeits-, Höhenprofil- und stark befahrene Straßen-Vermeidungsparameter.
📤 Export & Integration GPX, JSON und JavaScript-Integration in Ihre WordPress-Seiten.

Wenn Sie davon träumen, maßgeschneiderte Fahrradstrecken zu erstellen, erweist sich GraphHopper als robuster und flexibler Verbündeter. Hinter seiner minimalistischen Oberfläche verbirgt sich eine leistungsstarke Engine, die OpenStreetMap-Daten verarbeitet, um die am besten an Ihre Wünsche angepasste Route zu berechnen, sei es eine urbane Tour oder eine mehrstufige Strecke. Dieser Artikel führt Sie Schritt für Schritt, von der Installation des Dienstes bis zum Export Ihrer Tracks, einschließlich der feinen Anpassung der Fahrradprofile.

Warum GraphHopper für den Fahrradtourismus wählen?

GraphHopper ist nicht nur ein einfaches Routing-Tool: Es basiert auf einer aktiven Community, regelmäßigen Updates und einer GPLv3-Basis. Sie profitieren von einem immer weiter optimierten Algorithmus für das Fahrrad, der neue Radwege und Fahrradstraßen integriert. Im Vergleich zu anderen Lösungen zeigt sich, dass seine Modularität (JSON-Profil, HTTP-API) große Freiheit bietet, insbesondere wenn Sie es auf Ihrem eigenen Server hosten möchten, um nicht von Drittanbieterdiensten abhängig zu sein.

Zuverlässigkeit und Leistung

Das Herzstück von GraphHopper basiert auf komprimierten Datenstrukturen, die die Berechnung im Speicher beschleunigen. Ergebnis: Ihre Anfragen für Fahrradstrecken werden in wenigen Millisekunden ausgeführt, selbst bei einem Datensatz, der ein ganzes Land abdeckt.

Flexibilität der Profile

Man kann ein Profil „Stadtrad“, „Rennrad“ oder „Mountainbike“ definieren, indem man die Durchschnittsgeschwindigkeiten und die zu vermeidenden Straßentypen anpasst. Diese sehr granulare Einstellung verbessert die Qualität der dem Nutzer vorgeschlagenen Route erheblich.

Installation und erste Konfiguration

Über Docker

Starten Sie GraphHopper mit wenigen Befehlen: Laden Sie das offizielle Image, binden Sie ein Volume für die OSM-Daten ein und öffnen Sie den HTTP-Port. Dieser Ansatz isoliert Ihre Umgebung und garantiert ein vereinfachtes Update.

docker pull graphhopper/graphhopper
docker run -d -v cheminguide/osm:/data -p 8989:8989 graphhopper/graphhopper

Lokale Installation

Wenn Sie selbst kompilieren möchten, klonen Sie das GitHub-Repository, installieren Sie Java 11 und Maven und führen Sie dann aus:

mvn clean package -DskipTests

Kopieren Sie anschließend Ihre OpenStreetMap-PBF-Datei in den Ordner graphs und starten Sie die Anwendung mit java -jar web/target/graphhopper-web-*.jar server config.yml.

Erstellung benutzerdefinierter Fahrradprofile

Der Kern der Anpassung liegt in den JSON-Dateien unter profiles. Beispiel für ein Mountainbike (MTB):

{
  "profiles": [
    {
      "name": "vtt",
      "vehicle": "bike",
      "weighting": "fastest",
      "turn_costs": false,
      "hints": {"elevation": true}
    }
  ]
}

Durch Anpassung von weighting und hints beeinflussen Sie die Wahl der Wege: Waldwege, Radwege oder Nebenstraßen.

Ein gemischtes Profil hinzufügen

Für eine Route, die Asphaltstraßen und Pfade kombiniert, kopieren Sie den JSON-Block eines bestehenden Profils, ändern die Eigenschaft vehicle zu custom_bike und erstellen Sie ein Rezept in graphhopper.yml, um Ihr gemischtes Profil zu laden.

Generierung maßgeschneiderter Routen

Sobald der Dienst bereit ist, fragen Sie die REST-API mit einem POST an /route unter Angabe Ihres Profils und Ihrer Koordinaten ab:

{
  "points": [[48.8566,2.3522],[45.7640,4.8357]],
  "profile": "bike",
  "locale": "fr"
}

Das zurückgegebene Ergebnis enthält mehrere Abschnitte, darunter paths für die GPS-Spur und instructions für jeden Abschnitt, mit Zoomstufe und Abbiegeinformationen.

GraphHopper-Oberfläche mit einer benutzerdefinierten Fahrradroute

Export und Integration in WordPress

Um Ihre interaktive Karte einzubinden, können Sie:

  • Die GPX-Spur in einem dedizierten JavaScript-Player anzeigen.
  • Die GraphHopper-API direkt hinter einem WordPress-Shortcode bereitstellen.

In einer PHP-Vorlage holen Sie die JSON-Punkte ab, konvertieren sie in GeoJSON und integrieren sie über Leaflet oder OpenLayers. Wenn Sie die Darstellung erweitern möchten, können Sie eine Straßenkarte von Frankreich als Hintergrund anzeigen, um Ihre Routen zu verorten.

Erweiterte Anwendungsfälle und bewährte Praktiken

Neben der Fahrradplanung wird GraphHopper auch für spezifischere Routen verwendet, zum Beispiel die Route der Loire-Schlösser oder für Strecken mit starken Höhenunterschieden. Denken Sie daran:

  • Aktualisieren Sie regelmäßig Ihre OSM-Daten, um von den neuesten Wegen zu profitieren.
  • Testen Sie mehrere Profile, bevor Sie in Produktion gehen.
  • Begrenzen Sie gleichzeitige Anfragen oder cachen Sie Antworten, um Überlastungen zu vermeiden.

FAQ

Benötigt man einen leistungsstarken Server, um GraphHopper zu hosten?

Ein VPS mit 2 vCPU und 4 GB RAM reicht für die Fahrradnutzung in einem ganzen Land aus. Darüber hinaus sollten Sie auf 8 GB für sehr dichte Gebiete erhöhen.

Wie erhält man einen GPS-kompatiblen GPX-Export für Wanderungen?

Die API liefert bereits ein Punktarray, das für das GPX-Format geeignet ist. Es genügt, diesen JSON-Stream in XML-Tags <trkpt> umzuwandeln.

Kann man mehrere Verkehrsmittel kombinieren?

Ja: Erstellen Sie separate Profile für jeden Abschnitt (Fahrrad + Zug, Fahrrad + Fähre) und synchronisieren Sie die Übergangspunkte.

A lire  Top 5 der asiatischen Städte, die man in 3 Tagen mit optimierten Routen besuchen kann

Schreibe einen Kommentar