Zum Inhalt springen

Matrix (`/sources_to_targets`)

Berechnet Zeit und Entfernung zwischen jedem Startpunkt und jedem Ziel — in einer Anfrage statt in vielen einzelnen Routen.

POST https://valhalla.pixelmap.at/sources_to_targets

Typische Anwendung: „Welche unserer zwölf Filialen liegt am nächsten?“, „Welche Reihenfolge ist für fünf Stopps die kürzeste?”

Ein Start, zwei Ziele:

Terminal-Fenster
curl -H "Authorization: Bearer <IHR-TOKEN>" -X POST -H "Content-Type: application/json" \
-d '{
"sources": [{"lat": 46.6247, "lon": 14.3053}],
"targets": [
{"lat": 46.6103, "lon": 13.8558},
{"lat": 46.7700, "lon": 14.4500}
],
"costing": "auto"
}' \
"https://valhalla.pixelmap.at/sources_to_targets"
{
"algorithm": "…",
"units": "kilometers",
"sources": [ … ],
"targets": [ … ],
"sources_to_targets": [
[
{ "from_index": 0, "to_index": 0, "time": 2077, "distance": 39.008,
"begin_lat": 46.624711, "begin_lon": 14.305372,
"end_lat": 46.610036, "end_lon": 13.855683 },
{ "from_index": 0, "to_index": 1, "time": …, "distance": … }
]
]
}

sources_to_targets ist eine Matrix: eine Zeile je Quelle, darin ein Eintrag je Ziel. time steht in Sekunden, distance in der unter units genannten Einheit.

Ist zwischen zwei Punkten kein Weg zu finden, steht dort null statt einer Zahl — die Anfrage als Ganzes bleibt erfolgreich. Prüfen Sie darauf, statt eine Zahl vorauszusetzen.

Die Matrix wächst multiplikativ: 50 Quellen × 50 Ziele sind 2.500 Berechnungen in einer Anfrage. Eine Obergrenze ist uns nicht bekannt und wurde nicht gemessen; das ist keine Zusage, dass beliebig große Matrizen durchgehen. Bei großen Vorhaben sprechen Sie uns vorher an.