Datenimport

Nachdem das Datenbankupdate der Anwendung ausgeführt wurde, müssen die eigentlichen Routingdaten noch importiert werden.

Die Daten müssen manuell in das Schema (beispielsweise aus einem bestehenden Routingschema) integriert werden. Die folgenden Tabellen müssen noch befüllt werden:

  • rt_vehicle
  • rt_category
  • rt_speed
  • rt_edges, rt_vertices (über eine im Schema implementierte Funktion prep_routing)

rt_vehicle

In dieser Tabelle sind die nutzbaren Fortbewegungsmittel hinterlegt.

Beispiele:

  • Car (Auto)
  • Walking (zu Fuß)

rt_category

Hier sind alle verfügbaren Wege- und Straßenkategorien eingetragen.

Beispiele:

  • BUND (Bundesstraße)
  • BUND_IO (Bundesstraße innerorts)
  • AUTOBAHN

rt_speed

Diese Tabelle hält Informationen über die Geschwindigkeiten der verschiedenen Fortbewegungsmittel in unterschiedlichen Kategorien.

Beispiele (Vehicle - Category - Speed):

  • CAR - AUTOBAHN - 110
  • CAR - BUND - 75
  • CAR - BUND_IO - 40

rt_speed, rt_category und rt_vehicle können frei vergeben werden. Es ist im späteren Verlauf darauf zu achten, dass die Werte aus rt_category einen Verweis in der rt_edges Tabelle haben. Diese Daten werden zum Ermitteln der Reisezeit benötigt.

Die rt_edges und rt_vertices Tabellen werden mit Hilfe einer Funktion befüllt, welche als Parameter den Schemanamen der Ursprungstabelle, den Namen der Ursprungstabelle, sowie die Spalten für Geometrie und ID der Ursprungstabelle übergeben bekommt:

select prep_routing('schema_der_quelltabelle', 'quelltabelle_name', 'geom_spalte', 'id_spalte', null);

Nun muss die category-Spalte der rt_edges Tabelle mit entsprechenden Kategoriewerten versehen werden. Die Spalte base_id dient dazu als Referenz auf die Original-ID der Quelltabellendaten. Ebenso wird mit der oneway-Spalte verfahren. Diese markiert eine Strecke als Einbahnstraße.

Man benötigt also folgende Informationen um ein vollständiges Routing zu realisieren:

  • Geometrien (als Linestrings)
  • Kategorien zu den Geometrien
  • Informationen über die gerichtete Befahrbarkeit (Einbahnstraßen)
  • entsprechende Einträge in rt_speed und rt_vehicle

Wichtiges in Bezug auf die Anwendungseinstellungen

In den Anwendungseinstellungen lassen sich Fortbewegungsarten definieren. Diese werden für den Routingvorgang gewählt und die Anwendung greift dabei auf die in der rt_vehicle hinterlegten Einträge zu.

Die Anwendung hat Basis-Einträge die auch für Anzeigezwecke genutzt werden (der Wert vor der Klammer entspricht dem Eintrag in rt_vehicle):

  • Walking (Laufen)
  • Cycling (Radfahren)
  • Skiing (Skilaufen)
  • Riding (Reiten)
  • WheelChair (Rollstuhl)
  • PublicTransport (Öffentliche Verkehrsmittel)
  • Car (Auto)

Jede Bewegunsart ist unter anderem definiert mit:

  • Art (siehe oben, Laufen, Auto etc.)
  • Id der Bewegungsart

Beispiel:

Man legt folgende Bewegungsart an:

  • Titel: Mountainbike
  • Art: Radfahren
  • Id: frei gelassen, keine ID
  • Einbahnstraßen vermeiden: nein

Wird mit dieser Bewegungsart geroutet, so greift die Anwendung auf den Eintrag "Cycling" (und damit dann auch auf die in rt_speed hinterlegten Geschwindigkeiten) in rt_vehicle zu. Dieser muss natürlich vorhanden sein.

Hat man sich jetzt zusätzlich einen Eintrag "MTB" in der rt_vehicle erstellt, so passt man die Bewegungsart an:

  • Titel: Mountainbike
  • Art: Radfahren
  • Id: MTB
  • Einbahnstraßen vermeiden: nein

Zusammengefasst heißt dies:

Wenn man die ID bei der Bewegungsart frei lässt, so werden Standard-IDs (wie oben angegeben) verwendet. Gibt man zusätzlich eine ID ein, so wird diese verwendet. Die fix definierte Art wird zusätzlich für Anzeigezwecke genutzt. Hier ist es sinnvoll entsprechend logische Kombinationen zu wählen.


Zuletzt geändert: 22.04.2024 18:21:00 (erstmals erstellt 12.07.2019)