Skip to content

Repository files navigation

Freiraum – Camper-Routenplaner

Freiraum ist ein funktionsfähiger Proof of Concept für OSM-basierte Routenplanung mit Wohnmobilen und Wohnwagen. Die Anwendung berücksichtigt Fahrzeughöhe, -breite und -länge bei der Routenberechnung und zeigt bekannte, für das Fahrzeug kritische Höhen- und Breitenbeschränkungen als Warnmarker auf der Karte.

Wichtiger Hinweis: Die Anwendung kann nur Beschränkungen auswerten, die in OpenStreetMap erfasst sind. Beschilderung und tatsächliche Gegebenheiten vor Ort haben immer Vorrang.

Screenshots

Startansicht

Startansicht des Freiraum-Routenplaners

Route mit Gefahrenstellen

Berechnete Route mit maßabhängigen Gefahrenmarkern

Nutzersicht

Was kann die Anwendung?

  • Start und Ziel über eine deutsche Adresssuche auswählen
  • Start- und Zielpunkt alternativ direkt auf der Karte setzen
  • Höhe und Breite des Fahrzeugs eingeben
  • Gesamtlänge inklusive Deichsel oder Fahrradträger ergänzen
  • eine für große Fahrzeuge optimierte Route berechnen
  • Route, Fahrzeit, Entfernung und deutsche Abbiegehinweise anzeigen
  • bekannte niedrige Durchfahrten und schmale Engstellen in Routennähe erkennen
  • kritische OSM-Objekte über rote Marker und Detail-Popups prüfen
  • Start und Ziel mit einem Klick tauschen
  • die Anwendung auf Desktop und Smartphone verwenden

Typischer Ablauf

  1. Start und Ziel eingeben oder auf der Karte setzen.
  2. Höhe und Breite des Wohnmobils oder Gespanns eintragen.
  3. Optional die Gesamtlänge ergänzen.
  4. Sichere Route berechnen auswählen.
  5. Route und Gefahrenhinweise auf der Karte prüfen.
  6. Einen roten Marker anklicken, um Grenzwert, Fahrzeugmaß und das zugrunde liegende OSM-Objekt zu sehen.
  7. Die Beschilderung vor Ort vor der Durchfahrt erneut kontrollieren.

Bedeutung der Warnmarker

Ein roter Marker erscheint, wenn innerhalb eines schmalen Korridors entlang der Route ein numerischer OSM-Wert für maxheight, maxheight:physical, maxwidth oder maxwidth:physical bei oder unter dem eingegebenen Fahrzeugmaß liegt. Die Marker zeigen Gefahrenstellen in Routennähe; sie müssen nicht zwingend auf der tatsächlich gewählten Fahrspur liegen.

Technische Sicht

Architektur

flowchart LR
    UI["React-Oberfläche"] --> GEO["/api/geocode"]
    UI --> ROUTE["/api/route"]
    UI --> RISK["/api/restrictions"]
    GEO --> NOM["Nominatim"]
    ROUTE --> VAL["Valhalla Truck Routing"]
    RISK --> OVER["Overpass API"]
    UI --> MAP["Leaflet + OSM-Kacheln"]
Loading
Baustein Aufgabe
Next.js / vinext Full-Stack-Anwendung und API-Routen
React Eingabe, Status, Ergebnis- und Detailansichten
Leaflet Interaktive OSM-Karte, Route und Marker
Nominatim Geocodierung von Start und Ziel
Valhalla Truck-Routing mit Höhe, Breite und Länge
Overpass API Abfrage von OSM-Höhen- und Breitenbeschränkungen
Cloudflare-Vite-Plugin Worker-kompatibler Produktions-Build

Routing

POST /api/route validiert Koordinaten und Fahrzeugmaße und übergibt sie an Valhalla mit dem Profil truck. Die API normalisiert das Ergebnis für die Oberfläche:

  • kodierte Routengeometrie
  • Entfernung und Fahrzeit
  • deutsche Manöver
  • Autobahn-, Maut- und Fährhinweise

Gefahrenanalyse

Nach erfolgreicher Routenberechnung wird die Geometrie auf maximal 70 Punkte reduziert. POST /api/restrictions fragt in einem 90-Meter-Korridor um diese Linie folgende OSM-Tags ab:

  • maxheight
  • maxheight:physical
  • maxwidth
  • maxwidth:physical

Metrische Angaben sowie Fuß-/Zollangaben werden in Meter umgerechnet. Nur Objekte, deren Grenzwert das aktuelle Fahrzeugmaß erreicht oder unterschreitet, werden an die Karte zurückgegeben. OSM-Texte werden vor der Ausgabe in Leaflet-Popups maskiert.

API-Routen

Route Methode Beschreibung
/api/geocode?q=… GET Liefert passende OSM-Orte für eine Suchanfrage
/api/route POST Berechnet die maßabhängige Fahrzeugroute
/api/restrictions POST Ermittelt kritische OSM-Beschränkungen entlang der Route

Projektstruktur

app/
├── api/
│   ├── geocode/route.ts
│   ├── restrictions/route.ts
│   └── route/route.ts
├── CamperRouter.tsx
├── globals.css
├── layout.tsx
└── page.tsx
docs/
└── screenshots/

Lokal starten

Voraussetzungen

  • Node.js >=22.13.0
  • Internetzugriff auf OSM-Kacheln, Nominatim, Valhalla und Overpass

Installation

npm install
npm run dev

Danach ist die Anwendung unter http://localhost:3000 erreichbar.

Prüfung und Produktions-Build

npm run build
npm test

Datenschutz und externe Dienste

Bei einer Adresssuche und Routenberechnung werden die dafür erforderlichen Suchbegriffe, Koordinaten und Fahrzeugmaße serverseitig an die jeweiligen Kartendienste übertragen. Die Anwendung speichert selbst keine Routen oder Nutzerdaten dauerhaft.

Datenquellen und Grenzen

Öffentliche Dienste können zeitweise langsam oder nicht erreichbar sein. Eine fehlende Warnung bedeutet nicht automatisch, dass eine Durchfahrt sicher ist. Der Proof of Concept ersetzt kein zugelassenes Navigationssystem und keine Kontrolle der Verkehrszeichen.

About

OSM-basierter POC-Routenplaner für Wohnmobile und Wohnwagen mit Fahrzeugmaßen, Valhalla-Truck-Routing und Gefahrenmarkern für Höhen- und Breitenbeschränkungen.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages