Envinsa es la plataforma de servicios geográficos más completa dentro de la gama de productos de PBBI. El API Rest incluido en las últimas versiones simplifica mucho el trabajo de los desarrolladores de aplicaciones web, haciendo la vida más fácil a la hora de realizar aplicaciones AJAX.
Vamos a aprovechar el servicio de Tiling de Envinsa a través del API Rest para generar una aplicación web simple. El objetivo es no tener que escribir ni una sola línea de código. Seguramente no lo consigamos pero será muy poco lo que tengamos que escribir, y todo en el lado cliente. Para conseguir este noble propósito pediremos ayuda a OpenLayers.
OpenLayers es un framework javascript geográfico que permite mostrar mapas generados casi desde cualquier sitio, esto incluye por supuesto los productos de PBBI. No hay ningún problema a la hora de incluir una capa publicada a través del servicio WMS de Envinsa en una aplicación que utilice OpenLayers. En este caso vamos a utilizar el servicio de tiling que no está soportado directamente por OpenLayers. Para eso vamos a pedir prestado otro trocito de código creado por PBBI. El equipo de ingeniería ha desarrollado una capa de OpenLayers para comunicarse con el servicio de tiling de Envinsa.
Se puede descargar desde el Code Exchange de PBBI allí puedes encontrar ejemplos de desarrollo para todos productos de desarrollo. Dentro de la sección de Envinsa se encuentra la demo llamada EnvinsaAardvark7 . Si tienes tiempo échale un vistazo, contiene un ejemplo más completo sobre cómo integrar Envinsa usando OpenLayers. Por ahora solo nos interesa el fichero EnvinsaTileServer.js que se encuentra en la carpeta scripts. Es el que añade el soporte para Envinsa en OpenLayers.
El proceso de configuración de OpenLayers puede consultarse en cualquiera de los ejemplos incluidos en la distribución. Una vez que has incluido el fichero EnvinsaTileServer.js en tu página solo tienes que crear la capa basada en el servicio de tiling.
envinsaBaseMapLayer = new OpenLayers.Layer.EnvinsaTileServer("Envinsa Spain",
‘http://localhost:8070/MapTiling/RESTService/getTile’,
{ mapname: 'Spain', output: 'image/png' },
{ isBaseLayer: true, buffer: 0, opacity: 1.0, output: 'image/jpg' });
envinsaBaseMapLayer.setTileSize(new OpenLayers.Size(256, 256));
map.addLayer(envinsaBaseMapLayer);
En este ejemplo hemos añadido como capa el mapa “Envinsa Spain” publicado en el servicio de tiling.
En la documentación de Envinsa se describe en detalle el proceso de configuración del servicio de tiling.


