20
IDELAB MAPSTRACTIONINTERACTIVE: API UNIVERSAL Y POLÍGLOTA Pablo López Escobés IV Jornadas sobre SIG Libre de la Universidad de Girona 12 de Marzo de 2010 IDELab-Universidad de Valladolid http://www.idelab.uva.es

IDELab MapstractionInteractive: API Universal y Políglota

Embed Size (px)

Citation preview

Page 1: IDELab MapstractionInteractive: API Universal y Políglota

IDELAB MAPSTRACTIONINTERACTIVE:

API UNIVERSAL Y POLÍGLOTA

Pablo López EscobésIV Jornadas sobre SIG Libre de la Universidad de Girona

12 de Marzo de 2010

IDELab-Universidad de Valladolid http://www.idelab.uva.es

Page 2: IDELab MapstractionInteractive: API Universal y Políglota

INTRODUCCIÓN

El mundo de la web está cambiando

Aparecen nuevas aplicaciones Mashups

Mashups de mapas tienen gran éxito Surgen muchas alternativas

Cada una con su propio API

Surge el término Neogeografía

Problema para el usuario

Necesidad de buscar un API Universal

El IGN apostó por la integración de sus mapas en este API

Page 3: IDELab MapstractionInteractive: API Universal y Políglota

INTRODUCCIÓN

El mundo de la web está cambiando

Aparecen nuevas aplicaciones Mashups

Mashups de mapas tienen gran éxito Surgen muchas alternativas

Cada una con su propio API

Surge el término Neogeografía

Problema para el usuario

Necesidad de buscar un API Universal

El IGN apostó por la integración de sus mapas en este API

Page 4: IDELab MapstractionInteractive: API Universal y Políglota

MAPSTRACTION: API UNIVERSAL

Yahoo API Bing API Google API Otras API

API Mapstraction

Page 5: IDELab MapstractionInteractive: API Universal y Políglota

MAPSTRACTION: API UNIVERSAL

Librería de abstracción para la utilización de

distintos proveedores de mapas

El usuario no se tiene que preocupar por el API

propia de cada proveedor

Permite la integración fácil y sencilla de mapas

en cualquier página web

No permite interactuar con el mapa fácilmente

Page 6: IDELab MapstractionInteractive: API Universal y Políglota

PROBLEMAS

Mapstraction se encontraba en un estado casi de abandono La mayoría de los ejemplos de la web no funcionaban

Últimos cambios en Diciembre de 2008

Arquitectura era obsoleta y añadir funcionalidades o proveedores era muy complejo Todo incluido en un único script

No orientado a objetos

Las APIs de algunos proveedores habían cambiado y ya no era operativa en muchos casos o estaba incompleta Bing Maps

La evolución de los mashups de mapas exigía nuevas funcionalidades Interactividad

Page 7: IDELab MapstractionInteractive: API Universal y Políglota

PROBLEMAS

Mapstraction se encontraba en un estado casi de abandono La mayoría de los ejemplos de la web no funcionaban

Últimos cambios en Diciembre de 2008

Arquitectura era obsoleta y añadir funcionalidades o proveedores era muy complejo Todo incluido en un único script

No orientado a objetos

Las APIs de algunos proveedores habían cambiado y ya no era operativa en muchos casos o estaba incompleta Bing Maps

La evolución de los mashups de mapas exigía nuevas funcionalidades Interactividad

Page 8: IDELab MapstractionInteractive: API Universal y Políglota

MAPSTRACTION V2

Se hacía necesaria una nueva arquitectura para la librería

Necesaria la orientación a objetos y la modularidad

Surge la iniciativa de Mapstraction v2 Lleva a cabo la refactorización

Sólo incluye 3 proveedores

No incluye nuevas funcionalidades

Necesario incluir más proveedores

Necesario diseñar nuevas funcionalidades

Page 9: IDELab MapstractionInteractive: API Universal y Políglota

ARQUITECTURA MAPSTRACTION V2

Proveedores

Módulos

Base mxn.js

mxn.core.js

google microsoft geocommons

Page 10: IDELab MapstractionInteractive: API Universal y Políglota

LA NUEVA FUNCIONALIDAD

Creación de una extensión que dote de nueva funcionalidad a Mapstraction, denominada IDELab MapstractionInteractive

Posibilidad de interactuar con el mapa Creación de geometrías “al vuelo” haciendo click sobre el mapa.

Modificación de las geometrías haciendo click sobre el mapa.

Borrado de las geometrías del mapa de forma sencilla e intuitiva.

Generación de eventos para poder actualizar la página en función de lo que el usuario haga con el mapa. Creación, modificación, borrado...

Necesario un nuevo ciclo de vida para las geometrías

Page 11: IDELab MapstractionInteractive: API Universal y Políglota

EL NUEVO CICLO DE VIDA

Page 12: IDELab MapstractionInteractive: API Universal y Políglota

EL NUEVO CICLO DE VIDA

Page 13: IDELab MapstractionInteractive: API Universal y Políglota

IMPLEMENTACIÓN DEL WORKFLOW

Algunos proveedores proporcionan en su API métodos para implementar la funcionalidad deseada

OpenLayers, Cartociudad, Google Maps

Algunos proveedores no implementan en su API métodos para implementar la funcionalidad deseada

Fue necesario diseñar para ellos un workflow universal

Microsoft, Yahoo! Maps

Page 14: IDELab MapstractionInteractive: API Universal y Políglota

FUNCIONALIDAD UNIVERSAL

Hace posible la interactividad en cualquier proveedor

Combinación de operaciones de la librería original

Basado principalmente en el evento click del mapa

Sencillo e intuitivo

Page 15: IDELab MapstractionInteractive: API Universal y Políglota

FUNCIONALIDAD UNIVERSAL

Hace posible la interactividad en cualquier proveedor

Combinación de operaciones de la librería original

Basado principalmente en el evento click del mapa

Sencillo e intuitivo

Page 16: IDELab MapstractionInteractive: API Universal y Políglota

Módulos

LA NUEVA ARQUITECTURA

Proveedores

Capa universal

Base mxn.js

mxn.core.js

provs

mxn.interactive.js

provs

mxn.generic.interactive.js

provs

Page 18: IDELab MapstractionInteractive: API Universal y Políglota

CONCLUSIONES

La neogeografía es un nuevo campo que ofrece

muchas alternativas

Existe una necesidad de crear un API Universal

para los mashups de mapas

Mapstraction está intentando cubrir esas

necesidades

Todavía quedan muchas preguntas de

investigación abiertas en este campo

Page 19: IDELab MapstractionInteractive: API Universal y Políglota

FUTURO TRABAJO

Integración de más proveedores

Implementación de nuevas funcionalidades

El reto de los globos virtuales

Integración de la librería en componentes GWT

Page 20: IDELab MapstractionInteractive: API Universal y Políglota

IDELAB MAPSTRACTIONINTERACTIVE:

API UNIVERSAL Y POLÍGLOTA

Muchas gracias por su atención

http://www.idelab.uva.es