IGN

Géoservices IGN

Documentation du service de calcul d'isochrones

Dernière mise à jour : 3 Février 2020

Table des matières

Généralités

Le service de calcul d’isochrones/isodistances de la plateforme Géoportail permet de déterminer l’ensemble des lieux que l’on peut atteindre depuis un point de départ ou dont il faut partir pour atteindre un point d’arrivée en un temps (isochrone) ou une distance (isodistance) donné(e). Il retourne la géométrie de la zone calculée.

Le calcul peut être paramétré selon le besoin selon plusieurs options détaillées plus loin dont par exemple :

Les données de référence utilisées au sein du service de calcul d’isochrones/isodistances du Géoportail proviennent de la base de données IGN BD TOPO®.

Le calcul d’isochrones s’appuie sur les mêmes ressources que celles du calcul d’itinéraire. Seules les ressources de type « PGR » sont utilisées.

Interagir avec le service de calcul d’isochrones

On peut interagir avec la version d’évaluation du service du calcul d’isochrones/isodistances via une API REST accessible à l’adresse suivante :

https://itineraire.ign.fr/simple/1.0.0/isochrone

NB : il s’agit d’une adresse de test à ne pas utiliser pour des développements en production

La documentation de cette API au format OpenAPI peut être consultée ici

Les capacités du service (ressources disponibles, paramètres et valeurs autorisées) peuvent aussi être consultées en effectuant la requête suivante : https://itineraire.ign.fr/simple/1.0.0/getcapabilities

Construire une requête

Le tableau suivant liste les paramètres disponibles et indique leur utilité pour construire une requête d’isochrones/isodistances. Les détails techniques pour leur implémentation sont donnés dans la documentation OpenAPI du service et les capacités du service. Les paramètres dont le nom est indiqué en gras , sont les paramètres obligatoires.

Paramètre

Signification

Valeur par défaut

point

Coordonnées d'une position ponctuelle. C'est le point de départ ou d’arrivée à partir duquel seront faits les calculs.

Sans objet

resource 

Ce paramètre permet de préciser quelle ressource sera utilisée pour le calcul. Actuellement, seule la ressource de type "PGR" est disponible pour l’isochrone.

Sans objet

costValue

Valeur du coût utilisé pour le calcul. On pourra, par exemple, préciser une distance ou un temps, selon le mode de calcul choisi (isodistance ou isochrone).

Sans objet

costType

Précise le type de calcul qui est fait : « time » (isochrone) ou « distance » (isodistance)

« time »

profile

Permet de préciser le type « véhicule » effectuant le parcours. Actuellement : « car » (voiture) ou « pedestrian » (piéton)

« car »

direction

Sens du parcours. Soit on définit un point de départ (« departure ») et on obtient les points d'arrivée potentiels. Soit on définit un point d'arrivée (« arrival ») et on obtient les points de départ potentiels

« departure »

constraints

Permet d’exprimer des contraintes sur les caractéristiques du réseau routier pour le calcul d’isochrones/isodistances.

 

Une contrainte s’exprime ainsi :

la caractéristique (« key ») du réseau routier sur laquelle elle s’applique.

son type : actuellement, un seul : « banned » (exclusion)

un opérateur de comparaison

Une valeur permettant d’exprimer la contrainte associée à la caractéristique

 

Exemple : exclure d’emprunter les tronçons de route passant par des tunnels :

« key » = « wayType »

« type » = « banned »

Opérateur de comparaison = « = »

Valeur = « tunnel »

 

L’éventail des contraintes possibles varie selon les ressources. Il est indiqué dans les capacités du service.

Aucune contrainte

format

Format de la réponse. Les valeurs disponibles sont indiquées dans les capacités du service.

« application/json »

geometryFormat

Permet de préciser le format dans lequel la géométrie sera retournée : « polyline » (format compressé google) ou « geojson » (format standard)

« geojson »

crs

Permet de préciser le système de coordonnées dans lequel les géométries sont exprimées (dans les requêtes comme les réponses) : « EPSG:4326 » (longitude, latitude) ou « EPSG:2154 » (lambert 93 valable uniquement en France métropolitaine )

« EPSG:4326 »

timeUnit

Permet de préciser l’unité dans laquelle les durées sont exprimées dans la réponse : « hour », « minute » ou « second »

« second »

distanceUnit

Permet de préciser l’unité dans laquelle les distances sont exprimées dans la réponse : « meter » ou « kilometer »

« meter »

Exemple de requête en HTTP GET :

La requête suivante effectue un calcul d’isochrone en utilisant la ressource « bdtopo-pgr », pour un profil voiture disposant de 300 secondes, en appliquant la contrainte d’exclure les ponts et demande à ce que la géométrie soit retournée au format « geojson » dans la réponse.

https://itineraire.ign.fr/simple/1.0.0/isochrone?resource=bdtopo-pgr&profile=car&costType=time&costValue=300&direction=departure&point=2.3614597320556636,48.83043011096251&constraints={“constraintType”:”banned”,”key”:”wayType”,”operator”:”=”,”value”:”pont”}&geometryFormat=geojson

Méthode POST

Les requêtes peuvent aussi être implémentées en méthode POST. Exemple…

Réponse du service

Si les paramètres le permettent, le service retourne un itinéraire au format JSON comprenant les informations suivantes (selon ce qui a été demandé dans la requête) :

Exemple de réponse

La réponse du service à la requête précédente est la suivante

{
  "point": "2.3614597320556636,48.83043011096251",
  "resource": "bdtopo-pgr",
  "costType": "time",
  "costValue": "300",
  "profile": "car",
  "direction": "departure",
  "geometry": {
    "type": "Polygon",
    "coordinates": [
      [
        [
          2.38726511465143,
          48.82623558903
        ],
        [
          2.38774580339165,
          48.82589988688
        ],
        [
          2.38879986230739,
          48.8251057361793
        ],
[]
        [
          2.38701373406027,
          48.8264150746264
        ],
        [
          2.38726511465143,
          48.82623558903
        ]
      ]
    ]
  },
  "constraints": [
    {
      "type": "banned",
      "key": "wayType",
      "operator": "=",
      "value": "pont"
    }
  ]
}

Caractéristiques des règles de calcul pour les itinéraires.

Les données de navigation sont issues de la BDTOPO (réseau routier et table de non communications). Les vitesses moyennes utilisées pour le calcul sont établies à partir des attributs selon les mêmes règles que pour l’ancien service, définies ici : https://geoservices.ign.fr/documentation/geoservices/itineraires.html#vitesse-voiture