Routes les plus proches

Roads API accepte jusqu'à 100 coordonnées indépendantes et renvoie le segment de route le plus proche pour chaque point. Les points traversés n'ont pas besoin de faire partie d'un chemin continu.

Si vous travaillez avec des points GPS séquentiels, utilisez Snap to Roads.

Requêtes

Une requête envoyée à Nearest Roads doit utiliser le protocole HTTPS et se présente comme suit :

https://roads.googleapis.com/v1/nearestRoads?parameters&key=YOUR_API_KEY

Paramètres obligatoires

  • points

    Points à accrocher. Le paramètre "points" accepte une liste de paires latitude/longitude. Séparez les valeurs de latitude et de longitude par une virgule. Séparez les coordonnées par une barre verticale ("|"), par exemple : points=60.170880,24.942795|60.170879,24.942796|60.170877,24.942796.

Exemples

La requête suivante renvoie un ensemble de tronçons routiers en fonction de la liste de coordonnées spécifiée.

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'

Réponses

Pour chaque requête valide, Roads API renvoie une réponse au format indiqué dans l'URL de la requête.

{
  "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",
      },
    ],
}

La réponse utilise le schéma suivant.

NearestRoadsResponse

Champ Obligatoire Type Description
facultatif Array<SnappedPoint>

Tableau de points accrochés. Parfois, plusieurs points ancrés peuvent être associés à un même point, avec des ID de lieu ou des positions différents.

Pour en savoir plus, consultez SnappedPoint.

SnappedPoint

Champ Obligatoire Type Description
required LatitudeLongitudeLiteral Pour en savoir plus, consultez LatitudeLongitudeLiteral.
required chaîne

Identifiant unique d'un lieu. Tous les ID de lieu renvoyés par l'API Roads correspondent à des tronçons de route.

facultatif nombre

Entier indiquant la valeur correspondante dans la requête d'origine. Chaque valeur de la requête doit correspondre à une valeur ajustée dans la réponse. Toutefois, si vous avez défini interpolate=true ou si vous utilisez les routes les plus proches, il est possible que la réponse contienne plus de coordonnées que la requête. Les valeurs interpolées n'auront pas de originalIndex. Ces valeurs sont indexées à partir de 0. Par conséquent, un point dont l'index d'origine est 4 correspondra à la valeur ajustée de la 5e latitude/longitude transmise au paramètre de chemin. Les points "Routes les plus proches" peuvent contenir plusieurs points pour des coordonnées uniques avec des lieux ou des placeId différents.

LatitudeLongitudeLiteral

Objet décrivant un emplacement spécifique avec la latitude et la longitude en degrés décimaux.

Champ Obligatoire Type Description
required nombre

Latitude en degrés décimaux

required nombre

Longitude en degrés décimaux