Jon Garrido Martin GIS Developer

GIS Developer Freelance

Análisis network con open source (II): Creación de una red con OSM

By jongarrido | September 4, 2015 | 0 Comment

Segundo artículo de una serie de 3 para el análisis de redes network con software open source. Explicaremos en ese artículo cómo crear un base de datos con capacidad postgis y pgrouting y después incorporar en ella un red network con datos Open Street Map.

Las versiones 9.x de postgresql tiene un sistema de extensiones que nos van a facilitar mucho las cosas. Podemos realizar la instalación incluso con clicks de ratón desde la interfaz pgAdmin III*. Explicaremos en todo caso la instalación mediante consola.

*Nota: ojo, con la versión 9.1 no funciona el pgAdmin 1.8 (último hasta la fecha). Así que estoy usando una más antigua, la 1.16.

Lo primero es crear nuestra base de datos:

sudo -u postgres createdb basenueva

Nos conectamos a la base de datos con:

psql basenueva

Y añadimos las extensiones..

basenueva=# CREATE EXTENSION postgis;
CREATE EXTENSION
basenueva=# CREATE EXTENSION postgis_topology;
CREATE EXTENSION
basenueva=# CREATE EXTENSION pgrouting;
CREATE EXTENSION

basenueva=# \q

Y ya están habilitadas las característias espaciales y topológicas en la base de datos.

El siguiente paso es incorporar los datos desde OSM. De todas las vías posibles creo que la que se explica a continuación es la mas sencilla: utilizando la herramienta osm2pgrouting. Esta herramienta incorpora los datos en la base de datos y crea la topología adecuada.

Primero descargamos los datos (desde geofabrik o desde cloudmade):

wget http://downloads.cloudmade.com/europe/southern_europe/spain/la_rioja/la_rioja.osm.bz2

Y descomprimimos:

bunzip2 la_rioja.osm.bz2

Solo nos queda ejecutar la herramienta:

osm2pgrouting -file la_rioja.osm -config /user/share/pgrouting/mapconfig.xml -dbase basenueva -passwd XXXX

Y a esperar… que tarda un rato.

Si no tienes el archivo de configuración puedes utlizar este mapconfig

Y ya está!!

0 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *