Beschreibung
Der GetSegmentData-Dienst gibt Segmentinformationen für einen Punkt oder eine Segment-ID zurück. Wenn ein Punkt angegeben ist, werden die am nächsten liegenden Routensegmente zurückgegeben. Wenn eine Segment-ID angegeben ist, werden die Routendaten für das angegebene Routensegment zurückgegeben.
URL-Format von HTTP-GET-Anforderungen
Für HTTP-GET-Anforderungen wird das folgende Format verwendet. Die HTTP-GET-Anforderungen sind für die Rückgabe von Segmentdaten an einem Punkt oder die Rückgabe von Segmentdaten für eine Segment-ID unterschiedlich.
Rückgabe von Daten für ein Segment an einem angegebenen Punkt:
HTTP GET /rest/Spatial/erm/databases/dbsource/segments.json?point=x,y,srsName&query_parameters Rückgabe von Daten für ein angegebenes Segment:
HTTP GET /rest/Spatial/erm/databases/dbsource/segments/segmentID.json?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. segmentID ist der Bezeichner des Segments, an das Sie die Daten zurückgeben möchten.
Abfrageparameter
Bei diesem Vorgang werden die folgenden Abfrageparameter verwendet.
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
| destinationSrs | Zeichenfolge | no | Das Koordinatensystem für die Rückgabe der Segmentdaten und die resultierende Geometrie. Standardmäßig wird das Koordinatensystem der Daten verwendet. |
| distanceUnit | Zeichenfolge | no | 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). |
| timeUnit | Zeichenfolge | no | 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). |
| velocityUnit | Zeichenfolge | no | Die Einheiten für die Rücklaufgeschwindigkeit. Standardmäßig ist „mph“ (Meilen pro Stunde) festgelegt. Verfügbare Werte sind: mph (Meilen pro Stunde) und kph (Kilometer pro Stunde). |
| angularUnit | Zeichenfolge | no | Die Wohneinheiten, für die Drehwinkel zurückgegeben werden sollen. Standardmäßig ist „deg“ (Grad) festgelegt. Verfügbare Werte sind: deg (Grad), rad (Radiant), minute (Minute), sec (Sekunde), grad (Grad). |
| segmentGeometryStyle | Zeichenfolge | no |
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:
|
| version | Zeichenfolge | Nein | Gibt die Version des GetSegmentData-REST-Dienstes an. Gültige Werte sind 1 und 2. Der Standardwert für version ist 1. |
Beispiele
Geben Sie Segmentdaten zurück, die einen Punkt angeben.
http://<server>:<port>/rest/Spatial/erm/databases/usroutedatabase/segments.json?point=-77,38,epsg:4326&segmentGeometryStyle=all Antwort
[{ "segmentID": "aa18eb33:1b7bbe", "primaryName": "VA-631", "primaryNameLanguage": "en", "alternateNames": [{ "alternateName": "Lloyds Rd", "language": "en" }, { "alternateName": "VA-631", "language": "en" }], "segmentLength": 4.954, "segmentLengthUnit": "mi", "timeTaken": 5.9333, "timeUnit": "min", "turnAngle": 0.0, "turnAngleUnit": "deg", "compassDirection": "", "speedOfTravel": 49.9955, "speedOfTravelUnit": "mph", "roadType": "major road rural", "segmentDirection": "bidirectional", "startJunctionType": "", "endJunctionType": "Other", "isRoundabout": false, "isTollRoad": false, "geometry": { "type": "LineString", "crs": { "type": "name", "properties": { "name": "epsg:4326" } }, "coordinates": [[…]] } }, { "segmentID": "46ed0e49:d9a7dc", "primaryName": "VA-631", "primaryNameLanguage": "en", "alternateNameList": [{ "alternateName": "Lloyds Rd", "language": "en" }], "segmentLength": 1.198, "segmentLengtUnit": "mi", "timeTaken": 1.433, "timeUnit": "min", "turnAngle": 0.0, "turnAngleUnit": "degree", "compassDirection": "", "speedOfTravel": 49.9955, "speedOfTravelUnit": "mph", "roadType": "major road rural", "segmentDirection": "bidirectional", "startJunctionType": "Other", "endJunctionType": "", "isRoundabout": false, "isTollRoad": false, "pointsInSegment": { "type": "LineString", "crs": { "type": "name", "properties": { "name": "epsg:4326" } }, "coordinates": [[…]] } }] Geben Sie Segmentdaten zurück, die eine segmentID angeben.
http://<server>:<port>/rest/Spatial/erm/databases/usroutedatabase/segments/aa18eb33:1b7bbe.json?distanceUnits=mi Antwort
[{ "segmentID": "aa18eb33:1b7bbe", "primaryName": "VA-631", "primaryNameLanguage": "en", "alternateNames": [{ "alternateName": "Lloyds Rd", "language": "en" }, { "alternateName": "VA-631", "language": "en" }], "segmentLength": 4.954, "segmentLengthUnit": "mi", "timeTaken": 5.9333, "timeUnit": "min", "turnAngle": 0.0, "turnAngleUnit": "deg", "compassDirection": "", "speedOfTravel": 49.9955, "speedOfTravelUnit": "mph", "roadType": "major road rural", "segmentDirection": "bidirectional", "startJunctionType": "", "endJunctionType": "Other", "isRoundabout": false, "isTollRoad": false } Versionsspezifische Fehlerreaktion
Wenn Sie in einem Auftrag einen ungültigen Parameterwert (z. B. ein fehlender Punkt) eingeben, hängt die Fehlerreaktion von der von Ihnen angegebenen 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?version=1 - Antwort:
{ "value": "Point cannot be empty.", "errors": [{ "errorCode": 4139, "userMessage": "Point cannot be empty." }] } - Abfrage, wenn version 2 ist:
http://<server>:<port>/rest/Spatial/erm/databases/usroutedatabase.json?version=2 - Antwort:
{"errors": [{ "errorCode": 4139, "userMessage": "Point cannot be empty." }]}