Arxiu de la categoria: openstreetmap

GeoJSON: densitat de les comarques de Catalunya

Tenia un tema pendent amb la visualització de mapes: programar aquells mapes en què es veuen les fronteres (ja siguin països, regions, comarques, municipis), i on podem assignar un color o podem clicar a cadascuna de les regions.

A l’API d’Overpass es poden fer consultes de les relacions a nivell administratiu, i normalment s’obté les ways que representen línies de frontera administrativa. Això ja va bé per pintar el contorn d’un municipi, per exemple. Ara bé, per ombrejar tota una àrea necessitem un poligon tancat. El millor és cercar una font de dades amb format GeoJSON de les dades que necessitem, per exemple les comarques. Cercant una mica pots trobar dades de tot: països, comunitats autònomes, províncies, etc. Combinant aquestes dades amb la informació que ens interessa (per exemple, la densitat de població per comarca), podem fer una aplicació com la que mostrem a la imatge.

Per fer-ho, està explicat a la wiki. Ara que m’he posat amb el GeoJSON, ara veig que hi ha un altre format interessant que és el TopoJSON. Això és un no parar!

Catalunya megalítica

Ja tinc acabada la visualització de tots els dòlmens de Catalunya i la Catalunya Nord. S’ha fet aquesta feina amb varis propòsits. D’una banda, unificar i actualitzar tota la informació disponible a OpenStreetMap, on només estaven llistats la meitat dels dòlmens. També m’interessava la programació de OpenLayers per tal de visualitzar el mapa, i la renderització del mapa amb diferents estils a part del clàssic de OSM.

Per visualitzar el mapa crec que el més xul·lo és l’estil Terrain. Ara bé, si vull fer zoom i que aparegui informació al detall de la zona, el millor mapa continua sent el de OSM. L’aplicació també pot visualitzar el mapa amb els estils Toner i Watercolor.

Tot plegat m’ha portat més feina del que havia previst i desitjat. O sigui que n’he fet un subdomini per tal de què la informació estigui sempre disponible:

Ruta pels arbres singulars de Barcelona (minimitzant la distància)

El problema del viatjant de comerç (traveling salesman problem) és un problema clàssic de l’algorísmica: es tracta de passar per una sèrie de punts, sense repetir-ne cap, i minimitzant la distància recorreguda. Fa unes poques setmanes vaig importar els arbres singulars de Barcelona a OpenStreetMaps, i crec que és una bona activitat didàctica per conèixer els arbres de la ciutat fer una ruta per uns quants d’aquests arbres.

Per fer-ho més interessant, podem plantejar-nos el problema de fer un recorregut que minimitzi la distància, passant per tots els arbres, i que retorni al punt de partida. Vaig estar cercant diferents implementacions amb Python que resolguin el problema, fins que en vaig trobar una que satisfeia la meva restricció de tornar al punt de partida.

Sobre aquesta solució he fet alguna modificació per tal de generar un fitxer JSON amb la solució. Finalment, hem de pintar sobre un mapa OSM els nostres punts (nodes); traçar una línia recta entre els punts; i afegir un label-text informatiu sobre aquests punts. El resultat es pot veure en la imatge.

Evidentment hem fet unes simplificacions: la distància mínima entre dos punts és la línia recta, però per la ciutat no podem anar en línia recta, i a més poden haver-hi pujades i baixades. Però com a exercici didàctic crec que és interessant.

Aquí Catalunya són populars les Curses d’Orientació. Crec que es podria aprofitar aquestes activitats en el lleure i afegir-hi una capa de coneixement, com ara conèixer els arbres, conèixer monuments, etc. Crec que per als joves i infants pot ser una activitat engrescadora.

Referències:

Importacions del Cadastre a OSM

Jo sóc nou amb això de OpenStreetMaps. Però de la gent que porta temps, veig que en les llistes de correu es parla bastant d’importacions del Cadastre. Importar el Cadastre és important perquè es tracta d’unir la informació geomètrica dels edificis amb altres capes d’informació, concretament la direcció postal d’un edifici. Si s’aconsegueix això a nivell general, serveis com Nominatim, que proporcionen geocoding (resoldre una direcció postal a coordenades geogràfiques; o a l’inversa), serà molt útil (com ho és el mateix servei que proporciona Google Maps).

Anem a fer un cas concret: Bagà, on no hi ha ficada la informació del cadastre. Faig la prova d’un edifici de Bagà, per exemple Carrer del Raval 13 Bagà. A partir de la informació de l’edifici on visc (a Barcelona, on sí que hi ha incorporada la informació del cadastre), veig com és el format de la informació que s’ha d’incorporar:

addr:housenumber=13
addr:postcode=08695
addr:street=Carrer del Raval
type=multipolygon

Per tant, modifico a OSM el builiding en qüestió i afegeixo aquesta referència.

Ara ja podem anar a Nominatim, i cercar per

Carrer del Raval 13 Bagà

I el troba! Aquí es veu la importància d’afegir la informació del Catastre a OSM.

També podem fer la consulta inversa, a partir de les coordenades trobar la direcció postal:

https://nominatim.openstreetmap.org/reverse?format=xml&lat=42.25255&lon=1.86283&zoom=18&addressdetails=1

I el resultat (en format XML):



13, Carrer del Raval, Bagà, Berguedà, Barcelona, Catalunya, 08695, Espanya

13 Carrer del Raval Bagà
Berguedà
Catalunya 08695 Espanya
es

Vista des del Refugi de Rebost (realitat virtual)

En el curs de Realitat Virtual ens fan fer una petita aplicació de realitat virtual. Entre les diferents propostes, RoundMe sembla ser una opció fàcil i ràpida.

Primer de tot hem de descarregar de Google Maps una fotografia panoràmica, i s’ha de convertir com està explicat en el tutorial en un panorama apte per ser importat a RoundMe.

RoundMe m’ha semblat bastant inestable. De fet, no podia penjar el meu panorama a Public, em donava un error de upload. De fet, vaig fer fins a 4 proves diferents el divendres passat, fins que ho vaig deixar per després del cap de setmana. I la meva sorpresa avui diumenge al vespre és que aquests 4 panorames estan com a Publics. Bueno, en fi…

Com a exemple he trobat una foto del refugi de Rebost (la foto no és meva, sinó que l’he trobat d’algú que l’ha penjada a Google Maps), i des del refugi puc identificar fàcilment unes muntanyes i paisatges que em són molt familiars.

Horts urbans de Barcelona

I ara li toco el torn als Horts urbans de Barcelona [1]. En aquest cas és poca informació i la podríem introduir manualment. Però de la manera com ho hem fet es podria executar el script en una base anual, i d’aquesta manera es pot eliminar un hort si aquest ja no existeix, o bé actualitzar la informació o introduir-ne un de nou. Aquests són els horts urbans gestionats per l’ajuntament de Barcelona.

{{geocodeArea:”Barcelona”}}->.boundaryarea;
(
node[“landuse”=”orchard”](area.boundaryarea);
);
out body;

{{style:

node[landuse=orchard] {
icon-image: url(‘https://www.barcelona.cat/estatics-planol/v0.8/img/w/bg/M/M009.png’);
icon-width: 28;
icon-height: 38;
}

}}

Parkings de bicicletes a Barcelona (openstreetmap)

En aquest cas estem parlant de 3000 punts. Ha estat una mica complicat fer aquesta importació, perquè hi havia uns 400 punts que ja estaven introduïts. Però d’aquests, uns 150 no existeixen en la base de dades de l’ajuntament, que se suposa que està actualitzada. Som conscients de què hi pot haver parkings d’ús privat.

En qualevol cas, com que es tracta d’una importació de 3000 punts, no es pot ana un per un. Realment, no me n’havia adonat de què hi haguessin tants punts de parking de bicis. Jo, com que vaig amb la Brompton, no els necessito, la bici sempre va amb mi.

{{geocodeArea:”Barcelona”}}->.boundaryarea;
(
node[“amenity”=”bicycle_parking”](area.boundaryarea);
);
out meta;

{{style:
node[amenity=bicycle_parking] {
icon-image: url(‘http://free-icon-rainbow.com/i/icon_01944/icon_019440_256.png’);
icon-width: 20;
icon-height: 20;
}
}}

Arbres singulars de les Illes Balears


Hem actualitzat a OpenStreetMap la llista d’arbres singulars de les Illes Balears [1], a partir de l’experiència d’introduir els arbres monumentals de Catalunya i els arbres singulars de Barcelona.

A més, amb overpass-turbo.eu ara ja sé ficar una icona d’un arbret sobre el punt d’interès, i així queda una gràfica molt mona.

area[“name”=”Illes Balears”]->.boundaryarea;
(
nwr(area.boundaryarea)[website~’arbres_singulars_de_les_Illes_Balears’];
);
out meta;

{{style:
node[natural=tree] {
icon-image: url(‘https://img.icons8.com/cotton/2x/tree.png’);
icon-width: 25;
icon-height: 25;
}
}}

Arbres singulars de Barcelona: Salvem l’alzina!

Aquí estic jo estudiant la programació amb OSM, actualitzant des d’un script python els arbres singulars de Barcelona, i evidentment m’he topat amb l’alzina de la caseta del carrer Encarnació.

Quina contradicció! D’una banda volem protegir el patrimoni i prendre consciència del medi natural que tenim dins una gran ciutat, i d’altra banda veiem com hi ha gent que li importa una merda tot això i només pensa en un terreny pel valor econòmic que té i el rendiment que en pot treure.

Doncs això, s’ha de salvar l’alzina i les casetes del carrer Encarnació de l’especulació urbanística. La gent que està a l’ajuntament que es mullin de veritat i que posin sobre la taula una proposta que acontenti totes les parts.

Per visualitzar tots els arbres singulars que hi ha a Barcelona podem fer servir overpass-turbo.eu, que ens permet realitzar una consulta i veure’n el resultat gràfic de forma fàcil.

area[“name”=”Barcelona”]->.boundaryarea;
(
nwr(area.boundaryarea)[note~’Arbres d\\’interès local de Barcelona’];
nwr(area.boundaryarea)[tree];
);
out meta;

Arbres monumentals de Catalunya a OpenStreetMap (2a part)

Ja he fet l’actualització dels arbres monumentals, són més de 200 arbres. No hem volgut fer una inserció automàtica, perquè sóc conscient de què hi ha informació que ja existeix, i vull ser respectuós amb aquesta informació. Per tant, el script és interactiu perquè, donat un node/arbre que ja existeix (el criteri és cercar arbres en un entorn de 50m del punt on vull inserir), vull comparar la informació antiga amb la nova.

Al final, de la llista de 222 arbres monumentals que tenim, hem inserit al voltant d’un 80% dels arbres, i de la resta s’ha actualitzat la informació.

Aquest estiu vam anar a veure el Pi de les Tres Branques. Feia anys que no anava al Camp Llong, vora de Berga, un indret realment idíl·lic. Després volíem buscar el Pi Jove, també arbre monumentals, que és allí a la vora, i no el vam trobar. Ara quan hi torni ja no tindré excusa per trobar-lo.

Aquest exercici ha estat un bon punt de partida per col·laborar amb la comunitat OpenStreetMap amb una tasca concreta i fàcil. Espero poder seguir col·laborant amb l’actualització dels mapes de OSM.