[Talk-it] Come renderizzare OSM in tempo reale?

Martin Koppenhoefer dieterdreist a gmail.com
Ven 17 Feb 2012 15:52:05 GMT


2012/2/17 albertobonati at libero.it <albertobonati at libero.it>:
> Ho una domanda:
> Se volessi mostrare OSM su un mio sito ma volessi fare il rendering come
> pare a me, cosa dovrei fare?
> Non generarmi le tiles con Maperitive e mostrarle con OpenLayers, intendo
> proprio dire usare i dati aggiornati sul DB, renderizzarli e mostrarli...


Non è senza complicazioni, ma si può fare.
Ci sono metodi diversi (alternativi sono per esempio Geoserver o
Mapserver), ma se vuoi prendere l'approccio Mapnik / postgres potresti
fare così:
creare una database postgres/postgis sul server, importare il planet
(o un estratto) con osm2pgsql e poi ogni minuto/ora/giorno gli updates
incrementali (anche con osm2pgsql).

Sullo stesso server (o anche su un altro) ci metti il tuo stylesheet,
mapnik è un manager (tirex o renderd). Ci metti anche apache2 e
mod_tile (lo devi compilare dal source). Poi ci metti un applicazione
per fare vedere la mappa (Openlayers, leaflet, ...)

Fatto. ;-)

Questo è, mi rendo conto, un riassunto molto sintetico, ma per ogni
passo ci sono delle instruzioni nel wiki di OSM (e nei vari blog, con
Google li trovi). Il software (tranne postgres e mapnik) lo trovi su
http://svn.openstreetmap.org

Se invece non vuoi renderizzare il mondo, non hai bisogno di essere
aggiornato al minuto e non hai un server che ti consente di avere un
database di 300 GB di dati, potresti usare un estratto più piccolo
oppure renderizzare su un altro PC e copiare solo i tiles sul
webserver.

ciao,
Martin



Maggiori informazioni sulla lista Talk-it