Routing

specdraftimplproposal

Routen berechnen und verwalten.

Umfang

Dieser Baustein berechnet Routen mit Hilfe eines Routing-Providers, d.h. eines PostgreSQL-SQL-Feature-Providers mit den Erweiterungen PostGIS und pgRouting.

Eine Option zur Speicherung und Verwaltung der berechneten Routen wird ebenfalls unterstützt.

Konformitätsklassen

Der Baustein implementiert die Konformitätsklassen "Core", "Manage Routes", "Modes", "Intermediate Waypoints", "Height Restrictions", "Weight Restrictions" und "Obstacles" des Entwurfs von OGC API - Routes - Part 1: Coreopen in new window sowie die Konformitätsklasse "Route Exchange Model" des Entwurfs OGC Route Exchange Modelopen in new window.

Operationen

RessourcePfadMethodenFormateBeschreibung
Route Definition
routes/{routeId}/definition
GET
JSON
Holt die Definition einer gespeicherten Route.
Route
routes/{routeId}
DELETE
Löscht eine gespeicherte Route.
Route
routes/{routeId}
GET
GeoJSON
Holt eine Route.
Routes
routes
GET
HTML, JSON
Holt die Liste der gespeicherten Routen.
Route
routes
POST
GeoJSON
Diese Operation erstellt eine neue Route. Die Nutzlast der Anfrage gibt die Definition der neuen Route an.

Pfad-Parameter

NameRessourcenBeschreibung
routeId
Route, Route Definition
Der lokale Identifikator der Route.

Query Parameter

NameRessourcenBeschreibung
f
Routes
Wählt das Ausgabeformat der Antwort. Wenn kein Wert angegeben wird, gelten die Standard-HTTP Regeln, d.h. der "Accept"-Header wird zur Bestimmung des Formats verwendet.
f
Route
Wählt das Ausgabeformat der Antwort. Wenn kein Wert angegeben wird, gelten die Standard-HTTP Regeln, d.h. der "Accept"-Header wird zur Bestimmung des Formats verwendet.
f
Route Definition
Wählt das Ausgabeformat der Antwort. Wenn kein Wert angegeben wird, gelten die Standard-HTTP Regeln, d.h. der "Accept"-Header wird zur Bestimmung des Formats verwendet.
crs
Routes
Das Koordinatenreferenzsystem der zurückgegebenen Features. Default ist WGS84 longitude/latitude (mit oder ohne Höhe).

Konfiguration

Optionen

NameDefaultBeschreibungTypSeit
buildingBlock
Immer ROUTING.
string
v3.1
enabled
false
Soll der Baustein aktiviert werden?
boolean
v3.1
caching
{}
Setzt feste Werte für HTTP-Caching-Header für die Ressourcen.
object
v3.1
featureType
null
Required Name der Objektart im Feature-Provider mit der Routing-Erweiterung, die eine Route als eine Reihe von Routenabschnitten bereitstellt.
string
v3.1
manageRoutes
false
Aktiviert die Unterstützung für die Konformitätsklasse Manage Routes. Wenn diese Funktion aktiviert ist, werden die Routen zusammen mit der Nutzlast ihrer Anfrage in der API gespeichert und können abgerufen werden. Routen, die nicht mehr benötigt werden, können gelöscht werden.
boolean
v3.1
intermediateWaypoints
false
Aktiviert die Unterstützung für die Konformitätsklasse Intermediate Waypoints. Wenn diese Funktion aktiviert ist, können Routing-Anfragen mehr als zwei Wegpunkte entlang der Route enthalten.
boolean
v3.1
weightRestrictions
false
Aktiviert die Unterstützung der Konformitätsklasse Weight Restrictions. Wenn aktiviert, können Routing-Anfragen das Gewicht des Fahrzeugs enthalten und es werden nur Routensegmente ausgewählt, die das Gewicht unterstützen.
boolean
v3.1
heightRestrictions
false
Aktiviert die Unterstützung der Konformitätsklasse Height Restrictions. Wenn aktiviert, können Routing-Anfragen die Höhe des Fahrzeugs enthalten und es werden nur Routensegmente ausgewählt, die die Höhe erlauben.
boolean
v3.1
obstacles
false
Aktiviert die Unterstützung für die Konformitätsklasse Obstacles. Wenn diese Funktion aktiviert ist, können Routing-Anfragen ein Multi-Polygon von Bereichen enthalten, die die Route vermeiden muss.
boolean
v3.1
speedLimitUnit
kmph
Legt die in den Attributen für die Geschwindigkeitsbegrenzung von Segmenten verwendete Einheit fest. Entweder "kmph" oder "mph".
string
v3.1
defaultPreference
fastest
Legt den Standardwert für die "preference" (Kostenfunktion) in der Routing-Anfrage fest.
string
v3.1
defaultMode
driving
Legt den Standardwert für den "mode" (das Verkehrsmittel) in der Routing-Anfrage fest.
string
v3.1
additionalFlags
{}
Der Routing-Provider unterstützt die Angabe zusätzlicher Flags (Key-Value-Paare), die beim Routing-Prozess berücksichtigt werden können.
object
v3.1
defaultCrs
CRS84
Setzt das Standard-Koordinatenreferenzsystem, entweder 'CRS84' für einen Routing-Provider mit 2D-Koordinaten oder 'CRS84h' bei 3D-Koordinaten.
string
v3.1
coordinatePrecision
{}
Steuert, ob Koordinaten in Abhängig des verwendeten Koordinatenreferenzsystems auf eine bestimmte Anzahl von Stellen begrenzt werden. Anzugeben ist die Maßeinheit und die zugehörige Anzahl der Nachkommastellen. Beispiel: { "metre" : 2, "degree" : 7 }. Gültige Maßeinheiten sind "metre" (bzw. "meter") und "degree".
object
v3.1
elevationProfileSimplificationTolerance
null
Wenn diese Option gesetzt ist, werden Routensegmente mit 3D-Koordinaten unter Verwendung des Douglas-Peucker-Algorithmus mit der angegebenen Toleranz geglättet.
number
v3.1
html
{ "enabled": true }
Wenn aktiviert (das Objekt enthält ein "enabled"-Member, das auf true gesetzt ist), wird die HTML-Antwort auf die Operation "Get Routes" aktiviert. Das Objekt kann außerdem ein "defaults"-Mitglied enthalten, das Key-Value-Paare enthält. Die folgenden Eigenschaften werden unterstützt: "name" (Standardname der Route), "start" (Längen- und Breitengrad des Standard-Startpunkts der Route), "end" (Längen- und Breitengrad des Standard-Endpunkts der Route), "center" (Längen- und Breitengrad des Mittelpunkts der ursprünglichen Kartenansicht), "centerLevel" (WebMercatorQuad-Zoomstufe der ursprünglichen Kartenansicht).
object
v3.1

Beispiele


- buildingBlock: ROUTING
  enabled: true
  featureType: route
  defaultCrs: CRS84
  coordinatePrecision:
    metre: 2
    degree: 7
  defaultPreference: fastest
  defaultMode: driving
  speedLimitUnit: kmph
  intermediateWaypoints: true
  weightRestrictions: true
  heightRestrictions: true
  obstacles: true
  manageRoutes: true
  html:
    enabled: true
    crs:
      'WGS 84 longitude/latitude':
        code: 4326
        forceAxisOrder: LON_LAT
      'Web Mercator':
        code: 3857
        forceAxisOrder: NONE
    defaults:
      name: Calexico International Airport to Shafter Airport
      start:
      - -115.510
      - 32.667
      end:
      - -119.184
      - 35.505
      center:
      - -118.0
      - 34.5
      centerLevel: 6