Die Funktion Roads API kann bis zu 100 unabhängige Koordinaten verarbeiten und gibt für jeden Punkt den nächstgelegenen Straßenabschnitt zurück. Die übergebenen Punkte müssen nicht Teil eines zusammenhängenden Pfads sein.
Wenn Sie mit sequenziellen GPS-Punkten arbeiten, verwenden Sie An Straßen ausrichten.
Anfragen
Eine Anfrage an „Nearest Roads“ muss über HTTPS gesendet werden und hat die folgende Form:
https://roads.googleapis.com/v1/nearestRoads?parameters&key=YOUR_API_KEYErforderliche Parameter
-
Punkt
Die Punkte, die gefangen werden sollen. Für den Parameter „points“ kann eine Liste von Breiten-/Längengradpaaren angegeben werden. Trennen Sie Breiten- und Längengradwerte durch Kommas. Trennen Sie die Koordinaten mit einem senkrechten Strich „|“, z. B.
points=60.170880,24.942795|60.170879,24.942796|60.170877,24.942796.
Beispiele
Die folgende Anfrage gibt eine Reihe von Straßensegmenten basierend auf der angegebenen Liste von Koordinaten zurück.
URL
https://roads.googleapis.com/v1/nearestRoads ?points=60.170880%2C24.942795%7C60.170879%2C24.942796%7C60.170877%2C24.942796 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://roads.googleapis.com/v1/nearestRoads?points=60.170880%2C24.942795%7C60.170879%2C24.942796%7C60.170877%2C24.942796&key=YOUR_API_KEY'
Antworten
Für jede gültige Anfrage gibt Roads API eine Antwort im Format zurück, das in der Anfrage-URL angegeben ist.
{ "snappedPoints": [ { "location": { "latitude": 60.170878428876755, "longitude": 24.94269540970182 }, "originalIndex": 0, "placeId": "ChIJfVFHrM0LkkYRBzUQos_jR5w", }, { "location": { "latitude": 60.17087741412199, "longitude": 24.942695474405202 }, "originalIndex": 1, "placeId": "ChIJfVFHrM0LkkYRBzUQos_jR5w", }, { "location": { "latitude": 60.170875416131736, "longitude": 24.942695601802203 }, "originalIndex": 2, "placeId": "ChIJfVFHrM0LkkYRBzUQos_jR5w", }, ], }
Die Antwort verwendet das folgende Schema.
NearestRoadsResponse
| Feld | Erforderlich | Typ | Beschreibung |
|---|---|---|---|
|
optional | Array<SnappedPoint> |
Ein Array von angepassten Punkten. Manchmal enthält sie mehrere angepasste Punkte für denselben Punkt mit unterschiedlicher „placeId“ oder „location“. Weitere Informationen finden Sie unter SnappedPoint. |
SnappedPoint
| Feld | Erforderlich | Typ | Beschreibung |
|---|---|---|---|
|
required | LatitudeLongitudeLiteral | Weitere Informationen finden Sie unter LatitudeLongitudeLiteral. |
|
required | String |
Eine eindeutige Kennung für einen Ort. Alle von der Roads API zurückgegebenen Orts-IDs entsprechen Straßenabschnitten. |
|
optional | Zahl |
Eine Ganzzahl, die den entsprechenden Wert in der ursprünglichen Anfrage angibt. Jeder Wert in der Anfrage sollte einem gerundeten Wert in der Antwort zugeordnet werden. Wenn Sie jedoch „interpolate=true“ festgelegt haben oder die Option „nearest roads“ verwenden, kann die Antwort mehr Koordinaten als die Anfrage enthalten. Interpolierte Werte haben keine |
LatitudeLongitudeLiteral
Ein Objekt, das einen bestimmten Ort mit Breiten- und Längengrad in Dezimalgrad beschreibt.
| Feld | Erforderlich | Typ | Beschreibung |
|---|---|---|---|
|
erforderlich | Zahl |
Breitengrad in Dezimalgrad |
|
required | Zahl |
Längengrad in Dezimalgrad |