Un tesista mi contatta perché deve fare una tesi su una frazione di un Comune sperduto in provincia dell’Aquila, conosce gli indirizzi ma non le coordinate (lat, lon) e mi chiede come ottenerle.
Io penso subito a OpenStreetMap e tramite API, usando gsheet, provo ad estrarre le coordinate usando questo comando:
JOIN(",", ImportXML(CONCATENATE("http://nominatim.openstreetmap.org/search/?format=xml&q=",F3), "//place[1]/@lat | //place[1]/@lon"))
ma gsheet mi avvisa, tramite un errore, che il contenuto importato è vuoto
, allora mi chiedo, come capire – in OSM – se una zona ha civici
o meno??
Il mio caro amico Andrea Borruso, che è sempre in ascolto, mi suggerisce di usare Overpass-turbo
e questa query
/* This has been generated by the overpass-turbo wizard. The original search was: “addr:housenumber” */ [out:json][timeout:25]; // gather results ( // query part for: “addr:housenumber” node["addr:housenumber"]({{bbox}}); ); // print results out body; >; out skel qt;
che individua, fissando un bbox (limiti di una zona), i numeri civici presenti;
e con quest altra query, individuo gli oggetti con un civico associato:
/* This has been generated by the overpass-turbo wizard. The original search was: “addr:housenumber” */ [out:json][timeout:25]; // gather results ( // query part for: “addr:housenumber” node["addr:housenumber"]({{bbox}}); way["addr:housenumber"]({{bbox}}); relation["addr:housenumber"]({{bbox}}); ); // print results out body; >; out skel qt;
applicando la prima query alla zona di interesse del tesista ottengo:
praticamente in quella zona non esiste nulla o quasi su OpenStreetMap!!!
Per fare una ricerca per nome zona di tutti gli oggetti che hanno associato un civico, ecco la query:
[out:json][timeout:25]; // fetch area Palermo to search in {{geocodeArea:Palermo}}->.searchArea; // gather results ( // query part for: “historic=fort” node["addr:housenumber"](area.searchArea); way["addr:housenumber"](area.searchArea); relation["addr:housenumber"](area.searchArea); ); // print results out body; >; out skel qt;
Come area di ricerca ho messo Palermo
, cliccare su esegui
e poi sull’icona lente di ingrandimento, come in figura:
NOTE FINALI: al tesiste non rimane che utilizzare Google o altri strumenti a pagamento, oppure, visto che è una tesi, di inserire gli edifici e i numeri civici della frazione studiata, questo è facile da fare grazie ai numerosi strumenti messi a disposizione dalla comunità OSM.
RIFERIMENTI
- OpenStreetMap (OSM): https://www.openstreetmap.org/#map=11/42.2402/13.4377
- OverPass-Turbo API: https://dev.overpass-api.de/overpass-doc/en/
- T’ansigari: http://tansignari.opendatasicilia.it/it/latest/ricette/geocoder/Geocoder.html
Questa cosa è utilissima! grande Salvatore!
"Mi piace"Piace a 1 persona
Grazie Alberto
"Mi piace""Mi piace"
Buonasera, complimenti per l’articolo!
C’è differenza tra questa procedura e quella effettuata dal plugin MMQGIS?
"Mi piace"Piace a 1 persona
Anche MMQGIS usa OSM.
"Mi piace""Mi piace"