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"