OpenStreetMap: Taller de desarrollo y administración.

Slides:



Advertisements
Presentaciones similares
GRUPO: SILVIA PAZMIÑO BELEN AGUILERA JUAN JOSE PARRA
Advertisements

Unidad didáctica 6 Diseño de páginas Web.
Google Docs Google Docs y Hojas de cálculo, oficialmente Google Docs & Spreadsheets es un programa gratuito basado en Web para crear documentos.
Your Logo ING. FREDY ALEXANDER MARTINEZ. Here comes your footer  Page 2 Este patrón fue descrito por primera vez por Trygve Reenskaug en 1979, y la implementación.
Modelo Cliente - Servidor. La Web funciona siguiendo el denominado modelo cliente-servidor, habitual en las aplicaciones que funcionan en una red. Existe.
LI. MAYRA SUAREZ. Microsoft Office. Tiene múltiples herramientas que se utilizar para realizar documento, hojas de cálculo, multimedia. Cuenta con una.
Materia: Sistemas Abiertos Catedrático: Nali Borrego PRESENTAN:
Proyecto gvBUS: Autobuses Interurbanos. Índice En qué consiste el proyecto Estado actual Tecnologías empleadas Evolución del proyecto.
POSTGIS raster en gvSIG Nacho Brodin
OpenStreetMap
¿Qué es OpenSteetmap?. El software no funciona bien.
INICIANDO MICROSOFT WORD Microsoft Word es un procesador de textos que permite crear documentos sencillos y profesionales. La pantalla de trabajo está.
Software Geoespacial por y para OSM III Jornadas de GIG Libre - 1 Software Geoespacial por y para OpenStreetMap Iván Sánchez Ortega Presidente de la Fundación.
Introducción a Open Street Map Navaparty 6 Rodrigo Moya Celso González Pamplona, sep 2008.
Sistema de Información Geográfica Accesible. Información geográfica Centros de atención socioeducativa Residencias para personas mayores Centros de estancia.
Trabajo de mantenimiento Presentado por: Daniel elejalde Víctor Manuel puentes.
Sistema multimodal para la planificación de viajes en transportes públicos de código abierto y basado en estándares ‘de facto’ Juan G. Jordán Aldasoro.
Hojas de Estilo en Cascada CSS RAFAEL MOURGLIA. CSS son las siglas de Cascade Style Sheet que traducido significa hojas de estilo en cascada. Las hojas.
Infraestructura de Datos Espaciales de Fuenlabrada José Martos Collado – Director STIC (Ayto Fuenlabrada) José Vicente Higón – Software Colaborativo 2.
Open Layers ¿por qué no poner un mapa en tu web?.
Implementación básica de un nodo IDE en Software Libre José Vicente Higón
Ciclope Weather Web Services ● Que tenemos – – RSS: (No Web.
COMUNICACIÓN Y TICS Károl Fernanda Barragán M. Jennylith Dayana Ardila P. Wendy Paola Pinto F.
Presentadores Gráficos Ivanoba Juárez INSTALABLES Pertenecen a una suite de Ofimática que se instalan directamente al ordenador.
COMUNICACIÓN Y TIC Ángela Espinosa Hayler Peñaranda.
V 14: Nuevos Procedimientos
Mapas Mentales: Información en árbol interactiva
WordPress REST API
COMPONENTES DE INTERNET
ARCGIS Taller básico con enfoque a Moscas de la Fruta
Agenda ¿Que es PRTG? Ventajas diferenciales Características de PRTG
DESARROLLO WEB CON HTML 5 Francisco J. Arce Anguiano
Proyecto GeoEtiquetas
Introducción al Proyecto
WEB 2.0.
CMS Un sistema de gestión de contenidos (en inglés: Content Management System, más conocido por sus siglas CMS) es un programa informático que permite.
gvSIG en dispositivos móviles
Capítulo 12 Leer archivos XML con AJAX
Cosas que hacer en compañía de OpenStreetMap
Tópicos de bases de datos
Laura Tatiana Echeverry Mesa Laura Cristina Restrepo Clavijo
Aplicaciones de gmail.
UNIDAD II INTERNET.
Product and Testing Manager
Presentado por: Diana Torres Azucena Blagauera
TIPO DE DATOS EN ACCESS 2010 TEXTO, MEMO, NUMERO, FECHA/HORA, MONEDA, AUTONUMERACION, SI/NO, OBJETO OLE, HIPERVINCULO, DATOS ADJUNTADOS, CALCULADO Y ASISTENTES.
¿Qué es IONIC? Ionic es un Framework que nos permite crear de una manera rápida y sencilla aplicaciones móviles multiplataforma (Android, IOS, Windows)
Un proyecto en marcha para el Servicio de Publicaciones UCM
PostgreSQL Herramienta para Administración
Resultado de Aprendizaje:1
Page 1. Page 2 Los lineamientos básicos que debe contener las paginas HTML.
WORD 2010 GRADO 6° / 7°.
FORMA Sistema de creación de formularios para publicación Web
Módulo Kiosko SuperNÓMINA
LOS HIPERVINCULOS Las características, funciones, tipos y ejemplos de los hipervínculos.
TECNOLOGÍA DE LA INFORMACIÓN
SISTEMA DE INFORMACIÓN GEOGRÁFICO EMPRESA DE OBRAS SANITARIAS DE PASTO EMPOPASTO S.A. – E.S.P UNIDAD DE GESTION ACUEDUCTO DE PASTO - UGAP.
JAVIER RESTREPO TOVAR.
Prepa Yucatán Mons. Luis Miguel cantón Marín Nombre de editores gratuitos de HTML, CSS y JavaScript Timna Jiménez Pérez.
SlidePlayer canaltic.com. ¿Qué es slidePlayer? ● Es un sencillo visor flash de presentaciones realizadas en Powerpoint o Impress. ● Integra de una.
Lenguajes del lado del cliente
Docente: Valerio Herrera, Luis E. Experiencia Formativa III Semana 4: Servidores Web.
ARQUITECTURA DE UN NAVEGADOR WEB ESTO SE REFIERE AL SOFTWARE O HARDWARE? Un navegador web es un programa que codifica y decodifica una serie de reglas,
Powered by BTC TECHNOLOGY COMPANY
Intr. a la creación y gestión de páginas web
ADMINISTRACIÓN DE SOFTWARE DE UN SISTEMA INFORMÁTICO LINUX SBACKUP.
Conjunto de programas contenidos en un núcleo o kernel que efectúan la gestión de los procesos básicos de un Sistema informático, y permite la normal.
SISTEMA DE INFORMACION CATASTRAL DE SIC-COMUNIDADES DIGESPACR
ING. NANCY BASILIO MARCELO ADMINISTRACIÓN REDES DE COMPUTADORAS.
CONEXIÓN SE SIG A BASE DE DATOS EXTERNAS ENLACES ESPACIALES CARTOGRAFICOS MODELOS GEO-REALCONADOS.
Transcripción de la presentación:

OpenStreetMap: Taller de desarrollo y administración

Esquema general y fundamentos

Sistema de coordenadas y proyección ● WGS 84 ● SRS (Spherical Mercator) ● En el zoom 0 sólo hay una “tile” de 256x256

En el siguiente zoom... ● Cada “tile” se divide en 4 (/zoom/x/y.png)/zoom/x/y.png

Ejercicio 0 ● ¿Cuantas “tiles” tendría, teóricamente, el zoom 18, que es el máximo de la capa “Mapnik”?

¿Cómo añadir un mapa de OSM a una página web?

Mapa estático ● Función “exportar” de la página principalexportar ● APIs externas: ● Static Maps API Static Maps API ● MapOf MapOf ● StaticMap StaticMap ● MapQuest MapQuest

Ejercicio 1 ● Crea una página web que contenga un mapa estático aproximadamente de la zona de Bilbao de un tamaño de 400 x 400 px

iframe ● Accesible también desde la opción de “exportar” (HTML para pegar) ● Permite añadir un marcador (opciones mlon y mlat)

Usando la API de Google Maps var osmMapType = new google.maps.ImageMapType({ getTileUrl: function(coord, zoom) { return " g/" + zoom + "/" + coord.x + "/" + coord.y + ".png"; }, tileSize: new google.maps.Size(256, 256), isPng: true, alt: "OpenStreetMap layer", name: "OpenStreetMap" });

Ejercicio 2 ● Crea una página web que contenga un mapa deslizante de la zona de Bilbao usando la API de Google Maps

OpenLayers ● Libre y gratuita incluso para uso comercial (licencia BSD) ● Permite mostrar mapas y otros elementos superpuestos ● API profesional y altamente personalizable ● Descargable desde

Código básico function initializeMap() { map = new OpenLayers.Map("map"); map.addLayer( new OpenLayers.Layer.OSM()); map.zoomToMaxExtent(); } […]

Ejercicio 3 ● Mostrar una página web con un mapa deslizante (400 x 300 px) usando OpenLayers

Afinando un poco más (I) // configuramos mapa map = new OpenLayers.Map("map", { controls: [ new OpenLayers.Control.Navigation(), new OpenLayers.Control.PanZoomBar(), new OpenLayers.Control.LayerSwitcher({'ascending':false}), new OpenLayers.Control.Attribution() ], numZoomLevels: 19 }); //anyadimos capas base var mapnik = new OpenLayers.Layer.OSM("Mapnik"); var tilesAtHome = new " map.addLayers([mapnik,

Afinando un poco más (II) // calculamos coordenada var lonLat = new OpenLayers.LonLat( , ).transform( new OpenLayers.Projection("EPSG:4326"), // de WGS84 map.getProjectionObject() // a Mercator Esferico ); var zoom = 16; // anyadimos marcador var markers = new OpenLayers.Layer.Markers("Marcadores"); map.addLayer(markers); markers.addMarker(new OpenLayers.Marker(lonLat)); //centramos mapa map.setCenter(lonLat, zoom);

Ejercicio 4 ● Crear, con OpenLayers, una página web con un marcador en el Guggenheim, de forma que se pueda hacer zoom y arrastrar la imagen, y elegir entre la capa Mapnik y Cycle Map

OSM API / XML

Protocolo ● Está documentado en: ● Cambia según necesidades (el actual data de abril del 2009, y solo añadió características nuevas) ● Es una API REST ● Es una API de edición, no de consulta

Esquema de datos […]

Comunicación con el servidor ● Obtener datos de un área: ● GET /api/0.6/map?bbox=left,bottom,right,top ● Crear un elemento: ● PUT /api/0.6/[node|way|relation]/create ● Leer un elemento: ● GET /api/0.6/[node|way|relation]/#id ● Actualizar un elemento: ● PUT /api/0.6/[node|way|relation]/#id ● Borrar un elemento: ● DELETE /api/0.6/[node|way|relation]/#id

Ejercicio 5 ● Ejecuta JOSM en consola y observa como muestra todas las comunicaciones con el servidor de OSM ● Descarga una región del mapa ● Copia el comando (URL) ejecutado por JOSM y pégalo en un navegador ● Guarda el resultado en disco y ábrelo con un editor de texto

Nominatim

Nominatim ● Es un indexador de nombres, teniendo en cuenta su localización geográfica y administrativa ● Se usa para búsquedas rápidas en la página principal ● Puede testearse en: ● Documentación en: natimhttp://wiki.openstreetmap.org/wiki/Nomi natim

Búsqueda de nombres ● Interfaz REST en formato JSON (o html, o xml) ● Ejemplo: ● q=Bilbao&format=json q=Bilbao&format=json [{"place_id":"151062",[…], "lat":" ", "lon":" ", "display_name":"Bilbao, Vizcaya, España, Europa", "class":"place", "type":"city", […]}, […]]

Búsqueda inversa ● Como la búsqueda normal, pero te devuelve la dirección de un par de coordenadas latitud / longitud ● Ejemplo: ● lat= &lon= &format=json lat= &lon= &format=json {[…], "display_name":"On Federico Moyuaren plaza, Zurbaranbarri, Bilbao, Vizcaya, 48011, España", […]}

Ejercicio 6 ● Crear un mapa desplazable con OpenLayers que incluya un cuadro de diálogo que permita la búsqueda de nombres y los muestre en el mapa

Overpass API / XAPI

Uso ● Es una API de consulta (sólo lectura) ● Esta desfasada unos días respecto a la base de datos principal ● Tiene más opciones y permite consultas más potentes que la API de edición ● Permite filtrar por bbox y/o por etiquetas

Ejemplos ● Todas los generadores nucleares del mundo: [power=generator][generator:source=nuclear] [power=generator][generator:source=nuclear] ● Escuelas de (aproximadamente) Madrid: [bbox=-3.845,40.321,-3.584,40.526][amenity=school] [bbox=-3.845,40.321,-3.584,40.526][amenity=school]

Ejercicio 7 ● Descárgate un mapa OSM de los parques de Donostia ● Encuentra una manera de obtener todos los molinos de viento del mundo

PostGIS

Instalación y uso básico $ sudo aptitude install postgresql-9.1 postgresql-9.1- postgis $ sudo -u postgres sh > createuser -DRS jynus > createdb -O jynus openstreetmap $ psql openstreetmap

Dumps ● Descargables desde planet.osm.org, o cualquiera de sus mirrors (incluyen extractos o conversiones) ● Geofabrik Geofabrik ● Cloudmade Cloudmade ● Se generan semanalmente, pero existen diffs semanales, diarios y de minutos ● Actualmente ocupa 18 GB comprimido con bzip2

osmosis ● Es la herramienta “oficial” para serializar y deserializar la base de datos en y desde XML ● Es un programa de línea de comandos java ● Mantiene la estructura tal y como en la original BBDD, con la posibilidad de importar/exportar o no el histórico

Instalación y uso ● Descarga de: build/osmosis-latest.zip build/osmosis-latest.zip ● Ejemplo de uso (importación a una base de datos para la API): $ osmosis --read-xml file="planet.osm" --write-apidb host="x" database="openstreetmap" user="x" password="x" ● Más detalles:

osm2pgsql ● Permite generar una estructura optimizada para el renderizado ● Es “con pérdida” (no apta para routing u otras aplicaciones) ● Instalación $ sudo aptitude -t unstable install osm2pgsql

Ejercicio 8 ● Descarga un mapa de la zona de Bilbao ● Impórtalo a una base de datos PostgreSQL, manteniendo el esquema original de la base de datos ● Obtén cuantas calles comienzan por la letra “Z” y lístalas ordenadas alfabéticamente

“The Rails port” ● Es el software que da soporte a la interfaz web en openstreetmap.org (gestión de usuario, trazas, diarios, slippy map, visualización de los datos y conjuntos de cambios, etc.) ● Está programada en Ruby on Rails y se apoya en la base de datos Postgres

Renderizadores

Osmarender (I)

Osmarender (II) ● Fue el primer renderizador que se usó ● Permite el rendering mediante (distribuido en red) ● Inicialmente era un conversor a SVG que se renderizaba con Inkscape ● Suele dibujar más características que Mapnik

Mapnik (I)

● Era (y sigue siendo) un proyecto aparte de renderizado de mapas de alta calidad con software libre ● El renderizado se hace en OSM a partir de la base de datos completa, aunque permite hacerlo directamente desde un.osm ● El aspecto es configurable mediante hojas de estilo

Preparación para el renderizado $ wget /export/osm2pgsql/ sql?format=raw -O sql $ psql -d gis -f./ sql $ sudo /etc/init.d/postgresql restart $ wget latest.osm.bz2 $ mkdir world_boundaries && cd world_boundaries $ wget htt://tile.openstreetmap.org/world_boundaries- spherical.tgz $ wget $ wget htt://tile.openstreetmap.org/shoreline_300.tar.bz2 $ wget ta.com/download/10m/cultural/10m-populated-places.zip $ wget ta.com/download/110m/cultural/110m-admin-0-boundary- lines.zip $ osm2pgsql -m -d gis planet-latest.osm.bz2

Renderizado con Mapnik $./generate_xml.py --host localhost --user jynus --dbname openstreetmap --symbols./symbols/ --world_boundaries./world_boundaries/ --port password '' $ MAPNIK_MAP_FILE="osm.xml" MAPNIK_TILE_DIR="tiles/"./generate_tiles.py

mod_tile ● Es un módulo de Apache que permite renderizar “al vuelo” las teselas ● Sólo están pre-renderizados los zooms más bajos, los otros se crean o actualizan bajo demanda

Ejercicio 9 ● Descarga un archivo.osm de la zona de Bilbao ● Descarga e instala el software Mapnik y todas sus dependencias ● Renderiza los datos descargados, pero cambia las autopistas para que aparezcan de color rojo con los bordes verdes ● Muéstralo las teselas generadas en un mapa deslizante