====== OSM overpass-api ======
http://overpass-turbo.eu/
Documentation:
* [[https://wiki.openstreetmap.org/wiki/FR:Overpass_API/Overpass_QL|FR:Overpass API/Overpass QL]]
* [[https://wiki.openstreetmap.org/wiki/Overpass_API/Overpass_API_by_Example#List_of_streets|Overpass API/Overpass API by Example]]
===== Tips & Tricks =====
==== Rechercher par un morceau de nom ====
- bouton assistant
- entrer "name="ESPE" in France
- clic "construire et exécuter"
le nom contient ESPE, remplacer le ''='' par ''~'' (cela fonctionne aussi dans l'assistant)
pour ignorer les différences majuscule/minuscule, on rajoute un '',i'' après
la doc https://wiki.openstreetmap.org/wiki/FR:Overpass_API/Overpass_QL#Valeur_correspondant_.C3.A0_une_expression_r.C3.A9guli.C3.A8re_.28.7E.2C_.21.7E.29
==== Extraction des gares ferroviaires de Normandie ====
//Normandie 3793170
rel(3793170);
map_to_area -> .searchArea;
(
rel[railway=station](area.searchArea);
way[railway=station](area.searchArea);
node[railway=station](area.searchArea);
);
out center;
Ou si ''nwr'' est disponible :
//Normandie 3793170
rel(3793170);
map_to_area -> .searchArea;
(
nwr[railway=station](area.searchArea);
);
out center;
==== Extraction des communes françaises ====
Obtenir les nœuds "admin_centre" et relations d'une région française "admin_level=4" :
// Chargé – nœuds: 1757, chemins: 0, relations: 1757
[out:json][timeout:180];
area[name="Centre-Val de Loire"][admin_level=4]->.zone;
(
rel(area.zone)["boundary"="administrative"]["admin_level"="8"]->.relations;
node(r.relations:"admin_centre");
);
out ;
La même sans les parenthèse ne retourne que les nœuds :
// Chargé – nœuds: 1757, chemins: 0, relations: 0
[out:json][timeout:180];
area[name="Centre-Val de Loire"][admin_level=4]->.zone;
rel(area.zone)["boundary"="administrative"]["admin_level"="8"]->.relations;
node(r.relations:"admin_centre");
out ;
Un CSV avec les relations et noeuds pour les communes avec position admin_centre et autres données
[out:csv(::type, ::lat, ::lon, "ref:INSEE", postal_code, "addr:postcode", name; true; ",")]
[timeout:300];
area[name="Centre-Val de Loire"][admin_level=4]->.zone;
(
rel(area.zone)["boundary"="administrative"]["admin_level"="8"]->.relations;
node(r.relations:"admin_centre");
);
out ;