GetRoute - web_services - 23 - 23.1

Spectrum-Webdienste-Handbuch

Product type
Software
Portfolio
Integrate
Product family
Spectrum™ software
Product
Spectrum™ software > Web Services
Version
23.1
ft:locale
de-DE
Product name
Spectrum Technology Platform
ft:title
Spectrum-Webdienste-Handbuch
First publish date
2007
ft:lastEdition
2023-10-25
ft:lastPublication
2023-10-25T07:20:03.279000

Beschreibung

Der „GetRoute“-Dienst gibt Routinginformationen für einen Satz von zwei bestimmten oder mehreren Punkten zurück. Verwendet einen Start- und einen Zielort mit optionalen Zwischenpunkten als Eingabe und gibt die Route zurück, die entweder am schnellsten oder am kürzesten ist.

Anmerkung: Die Antwort des REST-Dienstes erscheint im JSON-Format und die zurückgegebene Geometrie im GeoJSON-Format. Wenn eine Anforderung ungültige Abfrageparameter in der GET URL oder eine ungültige Nutzlast für POST enthält, wird eine gesammelte Fehlerantwort in einem JSON-Array zurückgegeben. Der Knoten value in der Antwort-JSON ist veraltet. Bei der Fehlerüberprüfung sollte nur der Knoten errors verwendet werden.

URL-Format von HTTP-GET-Anforderungen

Für HTTP-GET-Anforderungen wird das folgende Format verwendet. HTTP GET wird für einfache Routen verwendet, bei denen keine zusätzliche JSON-Nutzlast erforderlich ist. Zwischenpunkte können ebenfalls zur HTTP GET-Anforderung hinzugefügt werden.

 HTTP GET /rest/Spatial/erm/databases/dbsource.json?q=route&query_parameters 

Dabei steht dbsource für den Namen der Datenbank, die die für die Route zu verwendenden Daten enthält. Verwenden Sie den Datenbanknamen, der im Tool der Routing-Datenbankressource von Spectrum Spatial angegeben ist.

URL-Format von HTTP-POST-Anforderungen

Für HTTP-POST-Anforderungen wird das folgende Format verwendet:

 HTTP POST:  /rest/Spatial/erm/databases/dbsource.json?q=route&query_parameters POST BODY: Content-Type:application/json {Route Data} 

Route Data stellt den POST-JSON-Text (Content-Type: application/json) für die zusätzlichen Routeninformationen dar, die bei der Berechnung mit Zwischenpunkten, vorübergehenden Aktualisierungen und Priorität für Straßentypen verwendet werden sollen. Weitere Informationen und Beispiele für diese Optionen finden Sie unter HTTP-POST-Optionen für GetRoute.

Abfrageparameter

Bei diesem Vorgang werden die folgenden Abfrageparameter abgerufen.

Parameter Typ Erforderlich Beschreibung
startPoint Zeichenfolge Ja Der Startstandort der Route in folgendem Format: x,y,KoordSys. Beispiel: -74.2,40.8,epsg:4326
endPoint Zeichenfolge Ja Der Zielstandort der Route in folgendem Format: x,y,KoordSys. Beispiel: -74.2,40.8,epsg:4326
intermediatePoints Zeichenfolge Nein Eine Liste der Zwischenpunkte, die entlang der Route eingeschlossen werden sollen. Verwenden Sie zum Einschließen der HTTP-GET-Anforderung das folgende Format: Länge,Breite,Länge,Breite,…,Koordsys. Beispiel: -74.2,40.8,-73,42,epsg:4326. Fügen Sie zum Einschließen einer Reihe von Zwischenpunkten in eine HTTP-POST-Anforderung die MultiPoint-JSON-Nutzlast hinzu, in der die in der Route enthaltenen Punkte angegeben werden. Wenn in der URL und in der JSON-Nutzlatz Zwischenpunkte angegeben sind, wird der JSON-Nutzlast der Vorzug gegeben. Die Zwischenpunkte in der URL werden ignoriert.
oip Boolean Nein Ein Verarbeitungsparameter, der angibt, ob die Zwischenpunkte optimiert werden sollen. Der Standardwert ist „false“. Die Zwischenpunkte werden standardmäßig in der angegebenen Reihenfolge in der Berechnung verwendet. Bei einer Einstellung auf „true“ werden die angegebenen Punkte auf optimale Weise während der Routenberechnung neu sortiert.
returnIntermediatePoints Boolean Nein

Gibt an, ob die Zwischenpunkte in der Routenantwort zurückgegeben werden sollen. Der Standardwert ist „false“.

Bei einem anderen Wert als „true“ oder „false“ gilt der Standardwert „false“. Diese Option gibt die Zwischenpunkte in der Reihenfolge zurück, wie sie im POST-Text angegeben sind. Wenn der Wert der Option oip auf „true“ festgelegt ist, gibt diese Option Zwischenpunkte in optimierter Reihenfolge zurück.

destinationSrs Zeichenfolge Nein Das Koordinatensystem für die Rückgabe der Route und der resultierenden Geometry. Standardmäßig wird das Koordinatensystem der Daten verwendet.
optimizeBy Zeichenfolge Nein Der für die Optimierung zu verwendende Optimierungstyp. Gültige Werte sind time oder distance. Der Standardwert ist „time“.
returnDistance Boolean Nein Die Wegbeschreibungen beinhalten die zurückgelegte Strecke. Der Standardwert ist „true“.
distanceUnit Zeichenfolge Nein Die Einheiten für die zurückgelegte Strecke. Standardwert ist m (Meter). Verfügbare Werte sind: m (Meter), km (Kilometer), yd (Yard), ft (Fuß), mi (Meile).
returnTime Boolean Nein Die Wegbeschreibungen beinhalten die Zeit, die benötigt wird, um einer Anweisung zu folgen. Der Standardwert ist „true“.
timeUnit Zeichenfolge Nein Die Einheiten für die Rücklaufzeit. Standardmäßig ist min (Minute) ausgewählt. Verfügbare Werte sind: min (Minute), msec (Millisekunde), s (Sekunde), h (Stunde).
language Zeichenfolge Nein

Die Sprache, in der Wegbeschreibungen zurückgegeben werden sollen, nur wenn Routenwegbeschreibungen zurückgegeben werden (falls directionsStyle als „Normal“ oder „Kurz“ definiert ist). Die Standardeinstellung ist Englisch (en).

Wegbeschreibungen können in den folgenden Sprachen zurückgegeben werden:

sq
Rückgabewegbeschreibungen in Albanisch.
zh_CN
Rückgabewegbeschreibungen in Chinesisch.
zh_TW
Rückgabewegbeschreibungen in Chinesisch (Taiwan).
hr
Rückgabewegbeschreibungen in Kroatisch.
cs
Rückgabewegbeschreibungen in Tschechisch.
da
Rückgabewegbeschreibungen in Dänisch.
nl
Rückgabewegbeschreibungen in Niederländisch.
en
Rückgabewegbeschreibungen in Englisch. Standard
en-US
Rückgabewegbeschreibungen in amerikanischem Englisch.
et
Rückgabewegbeschreibungen in Estnisch.
fi
Rückgabewegbeschreibungen in Finnisch.
fr
Rückgabewegbeschreibungen in Französisch.
de
Rückgabewegbeschreibungen in Deutsch.
hu
Rückgabewegbeschreibungen in Ungarisch.
it
Rückgabewegbeschreibungen in Italienisch.
ja
Rückgabewegbeschreibungen in Japanisch.
lv
Rückgabewegbeschreibungen in Lettisch.
lt
Rückgabewegbeschreibungen in Litauisch.
no
Rückgabewegbeschreibungen in Norwegisch.
pt
Rückgabewegbeschreibungen in Portugiesisch.
ro
Rückgabewegbeschreibungen in Rumänisch.
sk
Rückgabewegbeschreibungen in Slowakisch.
sl
Rückgabewegbeschreibungen in Slowenisch.
es
Rückgabewegbeschreibungen in Spanisch.
sv
Rückgabewegbeschreibungen in Schwedisch.
ru
Rückgabewegbeschreibungen in Russisch.
tr
Rückgabewegbeschreibungen in Türkisch.
returnDirectionGeometry Boolean Nein Schließt in der Routenantwort die Geometrie ein, die den einzelnen Routenanweisungen zugeordnet ist. Der Standardwert ist „false“.
directionsStyle Zeichenfolge Nein

Der Typ der zurückzugebenden Wegbeschreibungen. Der Standardwert ist „None“. Geben Sie diesen Parameter an, wenn Wegbeschreibungen zurückgegeben werden sollen. Bei der Angabe von Wegbeschreibungen sind folgende Optionen verfügbar:

None
Es werden keine Wegbeschreibungen zurückgegeben. Standard, wenn keine Angaben vorhanden sind.
Normal
Wegbeschreibungen werden im Vollformat für webbasierte Anwendungen zurückgegeben.
Terse
Wegbeschreibungen werden im Kurzformat für mobile Anwendungen zurückgegeben.
segmentGeometryStyle Zeichenfolge Nein

Das Format der Geometrie, in dem ein Segment der Route dargestellt wird. Der Standardwert ist „None“. Geben Sie diesen Parameter an, wenn Geometriedaten des Segments zurückgegeben werden müssen. Bei der Angabe von Wegbeschreibungen sind folgende Optionen verfügbar:

None
Keine geometrische Darstellung eines Segments wird zurückgegeben. Standard, wenn keine Angaben vorhanden sind.
End
Die einzelnen Segmente der Route werden nur mit den eigenen Endpunkten in einer LineString zurückgegeben.
All
Die einzelnen Segmente werden mit allen zugehörigen Shape-Punkten in einer LineString zurückgegeben. Die LineString kann als Überlagerung in einer Karte verwendet werden.
primaryNameOnly Boolean Nein Gibt an, ob in den Wegbeschreibungen alle Namen für eine angegebene Straße oder nur der primäre Name der Straße zurückgegeben werden soll. Wird nur verwendet, wenn Wegbeschreibungen zurückgegeben werden. Der Standardwert ist „false“.
majorRoads Boolean Nein Gibt an, ob alle Straßen oder nur Hauptverkehrsstraßen in die Berechnung eingeschlossen werden sollen. Wenn Sie entscheiden, dass nur Hauptverkehrsstraßen eingeschlossen werden sollen, wird die Leistung verbessert, aber die Genauigkeit verringert. Der Standardwert ist „false“.
historicTrafficTimeBucket Zeichenfolge Nein

Gibt an, ob bei der Berechnung der Fahrtstrecke die Fahrtgeschwindigkeit der letzten Fahrten verwendet wurde. Diese Fahrtgeschwindigkeitswerte basieren auf unterschiedlichen Tageszeitintervallen. Die Daten müssen über den Verlauf der Fahrtgeschwindigkeitswerte verfügen, um diese Funktion nutzen zu können. Die Daten für jedes Land/jede Region haben dieselben Intervalldefinitionen, bei denen die Geschwindigkeitswerte für diese Schichtwerte variieren können. Die Optionen sind:

None
Der Standardwert. Es werden keine Fahrtdaten im Verlauf bei der Berechnung verwendet. Stattdessen wird ein durchschnittlicher Geschwindigkeitswert verwendet.
AMPeak
Berechnung der Routen mit den vormittäglichen Geschwindigkeitsspitzenwerten. AMPeak-Zeitintervall: 07:00 bis 10:00 Uhr.
PMPeak
Berechnung der Routen mit den nachmittäglichen Geschwindigkeitsspitzenwerten. PMPeak-Zeitintervall: 16:00 bis 19:00 Uhr.
OffPeak
Berechnung der Routen mit den Geschwindigkeitswerten außerhalb der Stoßzeiten (tagsüber). OffPeak-Zeitintervall: 10:00 bis 16:00 Uhr.
Night
Berechnung der Routen mit den nächtlichen Geschwindigkeitswerten. Nachts-Zeitintervall: 22:00 bis 04:00 Uhr.
avoid Zeichenfolge Nein Gibt eine durch Kommas getrennte Liste von Straßentypen an, die bei der Routenberechnung vermieden werden sollen. Dies ist ein String-Parameter. Wenn ein Straßentyp als Wert des Parameters bereitgestellt wird, wird dieser Straßentyp bei der Routenberechnung aus der Route ausgeschlossen. Wenn zum Beispiel tollRoad als Parameterwert angegeben wird, enthält die berechnete Route eine Route ohne Mautstraßen.
version Zeichenfolge Nein Gibt die Version des GetRoute-REST-Dienstes an. Gültige Werte sind 1 und 2. Der Standardwert für version ist 1.

localRoadsLoadFactor

Zeichenfolge Nein

Gibt die Anzahl der lokalen Straßen an, die während der Routen- oder Matrixberechnung in den Speicher geladen werden können. Die Anzahl der Straßen, die geladen werden können, ist direkt proportional zu dem im Parameter gewählten Wert, wobei 1 der Minimal- und 3 der Maximalwert ist. Gültige Werte sind 1, 2 oder 3. Der Standardwert ist 1. Eine detaillierte Beschreibung und Auswirkung des Parameters auf das Routing oder die Matrixberechnung finden Sie unter Auslastungsgrad lokaler Straßen.

Anmerkung: Der Parameter akzeptiert keine Dezimalwerte.

Beispiele

Einfache Route mit Start- und Zielpunkten:

http://<server>:<port>/rest/Spatial/erm/databases/usroutedatabase.json? q=route&startPoint=-73.97,40.79,epsg:4326&endPoint=-73.98,40.74,epsg:4326

Antwort

{ 	"distance": 7779, 	"distanceUnit": "m", 	"time": 16.75, 	"timeUnit": "min" }

Route mit Zwischenpunkten:

http://<server>:<port>/rest/Spatial/erm/databases/usroutedatabase.json? q=route&startPoint=-73.970257,40.794045,epsg:4326&endPoint=- 73.972103,40.786605, epsg:4326&intermediatePoints=-73.976266,40.788717,-73.973562,40.792193,-73.971802,40.794630, epsg:4326&oip=true&returnIntermediatePoints=true"/>

Antwort

{ 	"distance": 1921, 	"distanceUnit": "m", 	"intermediatePoints": { 		"type": "MultiPoint", 		"coordinates": [ 			[-73.971802, 40.79463], 			[-73.973562, 40.792193], 			[-73.976266, 40.788717] 		] 	}, 	"time": 4.2, 	"timeUnit": "min" }

Route mit aktivierten Wegbeschreibungen:

http://<server>:<port>/rest/Spatial/erm/databases/usroutedatabase.json? q=route&startPoint=-73.97,40.79,epsg:4326&endPoint=-73.98,40.74, epsg:4326&language=en&directionsStyle=Normal&returnDirectionGeometry=true

Antwort

{ 	"time": 10.58, 	"timeUnit": "min", 	"distance": 9035, 	"distanceUnit": "m", 	"language": "en", 	"directionsStyle": "Normal", 	"routeDirections": [ 		{ 			"time": 0.03, 			"timeUnit": "min", 			"distance": 25, 			"distanceUnit": "m", 			"instruction": "", 			"directionGeometry": 			{ 				"type": "LineString", 				"coordinates": 				[ 					[ 						-76.421169, 						42.69302 					], 					[ 						-76.421353, 						42.692645 					], 					... 				] 			} 		}, 		{ 			"time": 0.7, 			"timeUnit": "min", 			"distance": 394, 			"distanceUnit": "m", 			"instruction": "Turn right on W 91st St and travel West 394.0 m 			(0.7 min).", 			"directionGeometry": 			{ 				"type": "LineString", 				"coordinates": 				[ 					[ 						-76.429896, 						42.67153 					], 					... 				] 			} 		} 	] }

Versionsspezifische Fehlerreaktion

Wenn Sie in einer Anforderung einen ungültigen Parameterwert (z. B. Punkte außerhalb der Grenzen) eingeben, hängt die Fehlerreaktion von der von Ihnen eingegebenen Version ab. Wenn die Version 1 ist, erhalten Sie Wert und Fehler. Wenn dahingegen die Version 2 ist, enthält die Antwort nur den Fehler.

  • Abfrage, wenn version 1 ist:
    http://<server>:<port>/rest/Spatial/erm/databases/usroutedatabase.json? &q=route&startPoint=-14.321600,60.662859,epsg:4326&endPoint=-74.035208,40.695624, epsg:4326&distanceUnit=km&version=1
  • Antwort:
    {   "value": "Point outside boundaries: (-14.3216,60.662859,0)",   "errors": [     {       "errorCode": 5008,       "userMessage": "Point outside boundaries: (-14.3216,60.662859,0)"     }   ] }
  • Abfrage, wenn version 2 ist:
    http://<server>:<port>/rest/Spatial/erm/databases/usroutedatabase.json? &q=route&startPoint=-14.321600,60.662859,epsg:4326&endPoint=-74.035208,40.695624, epsg:4326&distanceUnit=km&version=2 
  • Antwort:
    {   "errors": [     {       "errorCode": 5008,       "userMessage": "Point outside boundaries: (-14.3216,60.662859,0)"     }   ] }