HTTP-POST-Optionen für GetRouteCostMatrix

URL-Format von HTTP-POST-Anforderungen

Zusätzlich zu den regulären HTTP-GET-Parametern können Sie HTTP-POST-Nutzlastoptionen zu Ihrer Anforderung hinzufügen, in denen vorübergehende Aktualisierungen und die Priorität für Straßentypen angegeben werden. Die HTTP-POST-Nutzlast kann auch verwendet werden, wenn die Liste der eingegebenen Punkte die Grenzen des URL-Puffers des Aufrufers überschreitet. Der Inhaltstyp muss auf „application/json“ festgelegt werden. Für HTTP-POST-Anforderungen wird das folgende Format verwendet:


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

Start- und Endpunkte definieren

Fügen Sie zum Einschließen einer Reihe von Start- oder Endpunkten in eine HTTP-POST-Anforderung die MultiPoint-JSON-Nutzlast hinzu, in der die in der Route enthaltenen Punkte angegeben werden. Wenn in der HTTP-POST-Nutzlast Start- und Endpunkte definiert sind, sind die Abfrageparameter startPoints und endPoints in der URL nicht obligatorisch. Wenn sie in der URL definiert sind, werden sie ignoriert. In der Datei „wrapper.log“ wird eine Warnmeldung protokolliert, wenn Punkte in der URL ignoriert werden.

Beispiel für Startpunkte in der HTTP-POST-Nutzlast.


{			
"startPoints": {"type": "MultiPoint","crs": {"type": "name","properties": {"name": "epsg:4326"}},"coordinates": [[ -73.976266,40.788717],[ -73.973562,40.792193],[ -73.971802,40.794630]]}
}			
			

Beispiel für Endpunkte in der HTTP-POST-Nutzlast.


{			
"endPoints": {"type": "MultiPoint","crs": {"type": "name","properties": {"name": "epsg:4326"}},"coordinates": [[ -73.976266,40.788717],[ -73.973562,40.792193],[ -73.971802,40.794630]]}
}			
			

Vorübergehende Aktualisierungen

Diese Einstellungen ermöglichen es Ihnen, für jede Anforderung vorübergehende Aktualisierungen festzulegen. Sie können beispielsweise anfordern, dass der Server versucht, alle Hauptverkehrsstraßentypen zu vermeiden. Jede Anforderung kann mindestens eine Aktualisierung enthalten. Bei Geschwindigkeitsaktualisierungen steht ein positiver Geschwindigkeitswert für eine Geschwindigkeitserhöhung und ein negativer Geschwindigkeitswert für eine Geschwindigkeitsverringerung. Im Folgenden wird eine Beschreibung der vorübergehender Aktualisierungstypen dargestellt:

Aktualisierungstyp

Beschreibung

Punkt

Punktaktualisierungen sind Änderungen, die auf einen entsprechenden Punkt (Breitengrad, Längengrad) angewendet werden. Bei einem bestimmten Punkt können Sie den Punkt ausschließen, die Geschwindigkeit des Punktes festlegen oder die Geschwindigkeit des Punktes durch einen Wert oder einen Prozentsatz ändern (erhöhen oder verringern). Verwenden Sie einen der folgenden Aktualisierungstypen:

percentage
Dies ist eine Geschwindigkeitsaktualisierung, bei der Sie eine Erhöhung der Geschwindigkeit des Punktes definieren, indem Sie einen Prozentsatz zur Erhöhung (positiver Wert) oder zur Verringerung (negativer Wert) der Geschwindigkeit angeben.
speed
Dies ist eine Geschwindigkeitsaktualisierung, bei der Sie die neue Geschwindigkeit des Punktes definieren, indem Sie die Geschwindigkeitseinheit und die neue Geschwindigkeit angeben. Bei Geschwindigkeitsaktualisierungen kann die Geschwindigkeitseinheit einen der folgenden Werte aufweisen: kph (Kilometer pro Stunde), mph (Meilen pro Stunde), mtps (Meter pro Sekunde) oder mtpm (Meter pro Minute).
speedAdjustment
Dies ist eine Geschwindigkeitsaktualisierung, bei der Sie eine Änderung der Geschwindigkeit des Punktes definieren, indem Sie die Änderung der Geschwindigkeit (Einheit und Wert) angeben. Geschwindigkeitswerte können erhöht (positiver Wert) oder verringert (negativer Wert) werden. Bei Geschwindigkeitsaktualisierungen kann die Geschwindigkeitseinheit einen der folgenden Werte aufweisen: kph (Kilometer pro Stunde), mph (Meilen pro Stunde), mtps (Meter pro Sekunde) oder mtpm (Meter pro Minute).
exclude
Dies ist ein Zeichenfolgenwert, mit dem der angegebene Punkt aus der Routenberechnung ausgeschlossen werden soll. Zum Ausschließen eines Punktes müssen Sie diesen Punkt angeben und den als „Y“ definierten Ausschlussparameter einschließen. Gültige Werte sind „Y“ (Yes) und „N“ (No).

segmentID

Bei Segmentaktualisierungen handelt es sich um Änderungen, die auf eine entsprechende Segment-ID angewendet werden. Für ein bestimmtes Segment können Sie das Segment ausschließen, die Geschwindigkeit des Segments festlegen, die Geschwindigkeit des Segments um einen Wert oder Prozentsatz ändern (erhöhen oder verringern) oder den Straßentyp des Segments ändern. Verwenden Sie einen der folgenden Aktualisierungstypen:

percentage
Dies ist eine Geschwindigkeitsaktualisierung, bei der Sie eine Erhöhung der Geschwindigkeit der segmentID definieren, indem Sie einen Prozentsatz zur Erhöhung (positiver Wert) oder zur Verringerung (negativer Wert) der Geschwindigkeit angeben.
speed
Dies ist eine Geschwindigkeitsaktualisierung, bei der Sie die neue Geschwindigkeit der segmentID definieren, indem Sie die Geschwindigkeitseinheit und die neue Geschwindigkeit angeben. Bei Geschwindigkeitsaktualisierungen kann die Geschwindigkeitseinheit einen der folgenden Werte aufweisen: kph (Kilometer pro Stunde), mph (Meilen pro Stunde), mtps (Meter pro Sekunde) oder mtpm (Meter pro Minute).
speedAdjustment
Dies ist eine Geschwindigkeitsaktualisierung, bei der Sie eine Änderung der Geschwindigkeit der segmentID definieren, indem Sie die Änderung der Geschwindigkeit (Einheit und Wert) angeben. Geschwindigkeitswerte können erhöht (positiver Wert) oder verringert (negativer Wert) werden. Bei Geschwindigkeitsaktualisierungen kann die Geschwindigkeitseinheit einen der folgenden Werte aufweisen: kph (Kilometer pro Stunde), mph (Meilen pro Stunde), mtps (Meter pro Sekunde) oder mtpm (Meter pro Minute).
exclude
Dies ist ein Zeichenfolgenwert, mit dem die angegebene segmentID aus der Routenberechnung ausgeschlossen werden soll. Zum Ausschließen einer segmentID müssen Sie dieser segmentID angeben und den als „Y“ definierten Ausschlussparameter einschließen. Gültige Werte sind „Y“ (Yes) und „N“ (No).
roadType

Dies ist ein Zeichenfolgenwert, mit dem der Wert des Straßentyps für das Segment für die Routenberechnung geändert werden soll.

Der roadType kann einer der folgenden sein:

  • Zugangsweg
  • Nebenstraße
  • Verbindungsstraße
  • Fähre
  • Fußweg
  • Zufahrtsbeschränkung, dicht, städtisch
  • Zufahrtsbeschränkung, ländlich
  • Zufahrtsbeschränkung, vorstädtisch
  • Zufahrtsbeschränkung, städtisch
  • Lokale Straße, dicht, städtisch
  • Lokale Straße, ländlich
  • Lokale Straße, vorstädtisch
  • Lokale Straße, städtisch
  • Lokale Hauptverkehrsstraße, dicht, städtisch
  • Lokale Hauptverkehrsstraße, ländlich
  • Lokale Hauptverkehrsstraße, vorstädtisch
  • Lokale Hauptverkehrsstraße, städtisch
  • Hauptverkehrsstraße, dicht, städtisch
  • Hauptverkehrsstraße, ländlich
  • Hauptverkehrsstraße, vorstädtisch
  • Hauptverkehrsstraße, städtisch
  • Lokale Nebenstraße, dicht, städtisch
  • Lokale Nebenstraße, ländlich
  • Lokale Nebenstraße, vorstädtisch
  • Lokale Nebenstraße, städtisch
  • Normale Straße, dicht, städtisch
  • Normale Straße, ländlich
  • Normale Straße, ländlich
  • Normale Straße, städtisch
  • Autobahn/Bundesstraße, dicht, städtisch
  • Autobahn/Bundesstraße, ländlich
  • Autobahn/Bundesstraße, vorstädtisch
  • Autobahn/Bundesstraße, städtisch
  • Auffahrt, dicht, städtisch
  • Auffahrt, Zufahrtsbeschränkung
  • Auffahrt Hauptverkehrsstraße
  • Auffahrt Autobahn/Bundesstraße
  • Auffahrt, ländlich
  • Auffahrt Landstraße
  • Auffahrt, städtisch
  • Auffahrt, vorstädtisch
  • Landstraße, dicht, städtisch
  • Landstraße, ländlich
  • Landstraße, vorstädtisch
  • Landstraße, städtisch

roadType

Straßentypaktualisierungen sind auf einen entsprechenden Straßentyp angewendete Änderungen. Bei einem bestimmten Straßentyp können Sie den Straßentyp ausschließen oder die Geschwindigkeit des Straßentyps durch einen Wert oder einen Prozentsatz ändern (erhöhen oder verringern). Verwenden Sie einen der folgenden Aktualisierungstypen:

percentage
Dies ist eine Geschwindigkeitsaktualisierung, bei der Sie eine Erhöhung der Geschwindigkeit des Straßentyps definieren, indem Sie einen Prozentsatz zur Erhöhung (positiver Wert) oder zur Verringerung (negativer Wert) der Geschwindigkeit angeben.
speed
Dies ist eine Geschwindigkeitsaktualisierung, bei der Sie die neue Geschwindigkeit des Straßentyps definieren, indem Sie die Geschwindigkeitseinheit und die neue Geschwindigkeit angeben. Bei Geschwindigkeitsaktualisierungen kann die Geschwindigkeitseinheit einen der folgenden Werte aufweisen: kph (Kilometer pro Stunde), mph (Meilen pro Stunde), mtps (Meter pro Sekunde) oder mtpm (Meter pro Minute).
speedAdjustment
Dies ist eine Geschwindigkeitsaktualisierung, bei der Sie eine Änderung der Geschwindigkeit des Straßentyps definieren, indem Sie die Änderung der Geschwindigkeit (Einheit und Wert) angeben. Geschwindigkeitswerte können erhöht (positiver Wert) oder verringert (negativer Wert) werden. Bei Geschwindigkeitsaktualisierungen kann die Geschwindigkeitseinheit einen der folgenden Werte aufweisen: kph (Kilometer pro Stunde), mph (Meilen pro Stunde), mtps (Meter pro Sekunde) oder mtpm (Meter pro Minute).

Beispiel für vorläufige Aktualisierungen der HTTP-POST-Nutzlast.


{
  "transientUpdates": [
    {
        "segmentID": "specify a segment id",
        "updates": [
            {"exclude": "Y"},
            {"roadType": "a road type"},
            {"percentage": 26.0},
            {"speed": { "velocity": 25, "velocityUnit": "kph"}},
            {"percentage": -13.5},
            {"speedAdjustment" : { "velocity": 5, "velocityUnit": "kph"}}
        ]
    },
    {
        "point": "specify a geojson point",
        "updates": [
            {"exclude": "Y"},
            {"percentage": 26.0},
            {"speed": { "velocity": 25, "velocityUnit": "kph"}},
            {"percentage": -13.5},
            {"speedAdjustment" : { "velocity": 5, "velocityUnit": "kph"}}
        ]
    },    
    {
        "roadType": "specify a road type",
        "updates": [
            {"percentage": 26.0},
            {"speed": { "velocity": 25, "velocityUnit": "kph"}},
            {"percentage": -13.5},
            {"speedAdjustment" : { "velocity": 5, "velocityUnit": "kph"}}
        ]
    }
]
}			
			

Beispiel für GeoJSON-Punkt.


"point": {"type": "Point", "crs":
          {
              "type": "name",
              "properties":
                {"name": "epsg:4326"}
               },
               "coordinates":
               [-73.979102,40.785193]
			   }
			

Straßentyppriorität

Gibt die Priorität an, die verschiedenen Straßentypen beim Bestimmen der Route gegeben werden soll. Im Folgenden wird eine Beschreibung der Optionen für die Straßentyppriorität dargestellt:

Option

Beschreibung

hoch

Ziehen Sie den Straßentyp anderen Straßentypen vor.

mittel

Geben Sie diesem Straßentyp die gleiche Präferenz wie anderen Straßentypen. Wenn für einen Straßentyp keine Präferenz angegeben ist, lautet der Standard „Mittel“.

niedrig

Ziehen Sie diesem Straßentyp andere Straßentypen vor.

vermeiden

Schließen Sie den Straßentyp, wenn möglich, aus Routen aus. Ein Straßentyp kann nicht immer aus den Fahrtanweisungen ausgeschlossen werden. Abhängig von der Situation kann die Alternative zu einem vermiedenen Straßentyp so schlecht sein, dass die Software eine Route auswählt, bei der ein anderer vermiedener Straßentyp verwendet wird. Zudem verwendet die Software dieses Segment weiterhin, wenn der Start- oder Endpunkt entlang eines Segments liegt, dessen Straßentyp vermieden wurde.

Beispiel für Straßentyppriorität in HTTP-POST-Nutzlast.


{
" roadTypesPriority ": {
        "RoadType.MajorRoadDenseUrban": "High",
        "RoadType.LimitedAccessDenseUrban":"Low",
        "RoadType.LimitedAccessRural":"Medium",
        "RoadType.PrimaryHighwayUrban":"Avoid"
      }
}