Haciendo tile cache de WMS en ubuntu

Tile cache en WMS es una técnica que consiste en tener el mapa cortado en trocitos y cacheado de forma que el servidor no tiene  que estar generando una imagen cada vez que se hace una petición. De esta manera trabaja kamap, google maps, etc…

Estábamos intentando poner entre en el server (Mapserver en nuestro caso) y el cliente (Openlayers en nuestro caso) algo que nos hiciera es tile cache y que fuera lo más independiente de ambos que se pudiera.

Empezamos a tratar el tema usando GeoWebCache, tenía muy buena pinta, parecía fácil de configurar y ligerito. Nos metimos en faena y después de un rato nos sale:

org.geowebcache.GeoWebCacheException: GeoWebCache only handles EPSG:4326 and EPSG:900913!

¡Sólo soporta esas dos proyecciones!

Buceando un poco en la documentación parece ser que estas dos proyecciones son las recomendadas por el OGC para hacer tile cache

http://blog.geoserver.org/2008/03/12/geowebcache-070/

Tras trastear un poco decidimos descartarlo por ahora y nos lanzamos a buscar alternativas y había dos (Gracias Xurxo). En primer lugar ka-map! pero usando como cliente openlayers.Esta opción la descartamos por su fuerte dependencia de mapserver y porque estamos esperando a la version siguiente que funcionará ya con openlayers, aunque me quedé con ganas de probarlo pero no teníamos tanto tiempo y en segundo lugar TileCache de  mercarta. Es una pequeña librería de python que funciona sobre apache y fue por la que al final nos decantamos.

Voy a escribir aqui las cosas que tuvimos que hacer para que nos funcionara TileCache.

En primer lugar es necesario que nuesto apache ejecute python.

Para instalar apache2 y el mod_python seguí al pie de la letra este post y me funciono directamente

http://tru3n0.com/index.php/2007/10/18/instalar-apache2-mod_python-en-debian/

Y ahora viene lo que es la configuración en sí del TileWebCache

1 . Bajar la aplicación de http://www.tilecache.org/

2. El tar que bajamos, lo descomprimimos en la carpeta accesible por apache, típicamente en ubuntu y con todo bajado por apt esta carpeta es /var/www con lo que el directorio de tilecache será

/var/ww/tilecache

Al descomprimir en la carpeta tilecache hay varios archivos en el directorio. Como lo estamos haciendo con mod_python, el archivo tilecache.cgi debe ser renombrado a tilecache.py.

3. Editamos el archivo

/etc/apache2/sites-available/default (en mi caso)

y añadimos:

 <Directory /var/www/tilecache/>
AddHandler mod_python .py
PythonHandler TileCache.Service
PythonOption TileCacheConfig /var/www/tilecache/tilecache.cfg
PythonPath "['var/www/tilecache/'] + sys.path
PythonDebug On
</Directory>

La opción PythonPath arregla el error:

ImportError: No module named TileCache.Service

Este error me estuvo volviendo loco durante un buen rato, evidentemente ahí hay que poner
los paths que tenga cada uno a tilecacache

Después de tocar este archivo hay que reiniciar apache,  pero ya podemos ver si funciona tilecache poniendo en nuestro navegador lo siguiente:

http://localhost/tilecache/tilecache.py?LAYERS=basic&SERVICE=WMS%20&VERSION=1.1.1&REQUEST=GetMap&SRS=EPSG:4326&BBOX=-180,-90,0,90%20&WIDTH=256&HEIGHT=256

Si nuestro apache está montado en otro path o con otra ip, pues habrá que poner la url correctamente

4. Tile Cache ya funciona, ahora tenemos que añadir nuestras propias capas para tener una instalación completa. Esto se hace editando el archivo tilecache.cfg .

[cache]
type=Disk
base=/temp/tilecache

Con el parámetro anterior se fija el path donde se guardan los tiles en el disco

Para conocer lo que significan todos los parámetros debemos consultar:

http://www.tilecache.org/readme.html#configuration

En mi caso el archivo de configuración es:

type=WMSLayer
url=http://localhost:80/cgi-bin/mapserv?map=/var/www/cultura/cultura.map
layers=municipios
extension=png
srs=EPSG:23030
extent_type=loose
bbox=107897, 4201010, 360935, 4490145
resolutions= 564.716797,282.358398,141.179199,70.589600,35.294800,17.647400,8.823700,4.411850,2.205925,1.102962,0.551481,0.275741

Los parámetros mś complicados de averiguar fueron las resoluciones disponibles, pero con la ayuda de firebug, viendo las peticiones que hacía mi cliente te openlayers para cada nivel de zoom pude ir averiguando las resoluciones, segun la documentación, si fijamos maxresolution tile cache automáticamente genera un array con las resoluciones permitidas.

Funciona bastante bien por ahora, tendremos que verlo en el servidor…

Add comment Julio 24, 2008

Cáceres 3D

La licitación convocada por el CESEX relativa a la “DIGITALIZACIÓN EN TRES DIMENSIONES DEL CONJUNTO HISTÓRICO DE LA CIUDAD DE CÁCERES” ha sido adjudicada a la UTE FOMEX – PRODEVELOP, quienes desarrollarán un proyecto que tiene como objetivo la reconstrucción tridimensional detallada de la ciudad monumental de Cáceres que difunda sus principales valores patrimoniales.

Este proyecto surge como parte de un plan de apoyo a la candidatura de Cáceres como Ciudad Europea de la Cultura en el año 2016. De esta forma se dan a conocer los valores históricos, artísticos, culturales y arquitectónicos que hicieron que en 1986 este conjunto histórico fuera nombrado por la UNESCO como “Ciudad Patrimonio de la Humanidad”.

La ejecución de este proyecto se basará en el trabajo de un equipo multidisciplinar cuyos profesionales aportarán sus conocimientos y habilidades durante las diferentes etapas de trabajo. Para el desarrollo del sistema de Información y 3D, Fomex, Prodevelop e Igo software reunirán sus plantillas y su experiencia en trabajos similares. A su vez Igo aportará la colaboración de su departamento gráfico, 3D y de creatividad. Como parte de este proyecto se pretende la implementación del modelo en 3D en la web dentro de un entorno colaborativo en tiempo real. Varios usuarios podrán visitar a la vez la ciudad monumental y se podrán organizar eventos en los que pueda participar cualquier usuario desde cualquier lugar a través de Internet.

De la documentación y sustento teórico del proyecto se encargará un equipo de doctorandos en historia del arte dirigidos por la catedrática de la Universidad de Extremadura María del Mar Lozano Bartolocci, que aportarán importantes conocimientos en arte e historia del desarrollo urbanístico, arquitectura, evolución del conjunto monumental de Cáceres, entre otros. Por su parte La empresa Gavle se encargará del levantamiento arquitectónico de los monumentos, utilizando principalmente técnicas de captura masiva de información como el láser escáner con fototexturización, así como la fotogrametría convergente y la topografía clásica.

El modelo será implementado en JAVA3D y será corregido y optimizado para conseguir el renderizado en tiempo real. Se utilizaran únicamente herramientas libres y los avances del proyecto podrán ser seguidos en la wiki de igo software. http://igosoftware.dyndns.org:8080/IGOWiki/

Todas las herramientas y librerías que utilizaremos en este proyecto son open source. Los resultados y modelos georeferenciados obtenidos durante el desarrollo del proyecto estarán disponibles en formatos libres en su correspondiente repositorio.

El prototipo de este proyecto está en este mismo blog


Se puede descargar desde aqui


Y podemos ver un vídeo



Add comment Julio 22, 2008

Unidades Interactivas en el Proyecto Alba Plata

La UTE: IGO SOFTWARE, S.L.- FOMEX, S.A. ha resultado adjudicataria en el consurso para la Realización de las unidades multimedia interactivas en el proyecto Alba Plata. En este proyecto se creará el material multimedia destinado a dar a conocer el patrimonio cultural y artístico de la Vía de la Plata a partir del diseño de unidades didácticas destinadas a los diferentes centros de interpretación que se ubican a lo largo de todo el recorrido.

Las unidades correspondientes a los centros de interpretación de Cáparra, Oppidum de Hornachuelos y Cáceres el viejo serán recreaciones tridimensionales de cómo eran en su época de mayor esplendor, para lo cual trabajaremos con las herramientas Blender y Gimp. Para el diseño del resto de las unidades interactivas, incluyendo los centros de interpretación general, se utilizará la herramienta educativa squeak, cada unidad contará con su propio diseño creativo correspondiente a su centro de interpretación.

El desarrollo de este proyecto está enmarcado bajo las gestiones del proyecto Alba-Plata surgido en 1996 y cuya principal finalidad es la de estimular el desarrollo de la región en diferentes aspectos como el turístico, económico, patrimonial, cultural y de medio ambiente, en torno a la Vía de la Plata.

Todo el material que surja como producto del desarrollo de este proyecto será publicado en su repositorio correspondiente, del que hablaremos muy pronto.

Add comment Julio 22, 2008

ESTUDIO Y ADAPTACIÓN DEL SISTEMA DE INFORMACIÓN GEOGRAFICA DE LA CONSEJERÍA DE CULTURA Y TURISMO.

Continuando con la línea de las adjudicaciones y proyectos nuevos, os informamos que la UTE: PRODEVELOD, S.L.- IGO SOFTWARE, S.L.- FOMEX, S.A. ha resultado adjudicataria en el concurso para la realización del Estudio y adaptación del Sistema de información geográfica de la Consejería de Cultura y Turismo (SIGATEX).

El principal objetivo de este proyecto es adaptar y desarrollar el actual Sistema de Información Geográfica de la Consejería para incluir las necesidades propias de la Dirección General de Turismo. Este sistema se contará con sus propias fuentes de datos así como con los almacenados en el Inventario de Bienes inmuebles de la Consejería y del SIG existente en la actualidad.

Se realizará por tanto, un SIG temático, riguroso, atractivo al visitante, compatible con el resto de los Sistemas de la Consejería de Cultura y Turismo y útil para los potenciales usuarios de este Sistema.

Al igual que el resto de los diferentes proyectos en desarrollo, contaremos con un repositorio en el que se publicará toda la documentación surgida.

1 comment Julio 14, 2008

Gente Guada

Gente Guada ya va tomando forma, tenemos desarrollado el servidor, parte del cliente y la herramienta de configuración de avatares.

Este desarrollo es un juego colaborativo que estamos desarrollando para el SADESI (Sociedad Andaluza para el desarrollo de la Sociedad de la información), en poco tiempo se podrá jugar (final del verano) y ya estamos haciendo las primeras pruebas

Se ha desarrollado en python y se han programado varias librerías que pueden ser bastante útiles para otros propósitos aparte de este juego. Toda la información de desarrollo está en la wiki del proyecto en la forja de guadalinex.

WIKI

El juego se puede ya probar, simplemente hay que bajárselo de los repositorios y tener instalado python y pygame, en ese caso, el juego se verá en local.

REPOSITORIO

Aqui un minivídeo de Gente Guada en acción

Y los pantallazos.

pantallazo 1

2 comments Julio 2, 2008

Gente Guada (Guada People)


Gente Guada (Guada People) starts running, we already developed the Server, part of the client and the avatar configuration tool

This project is a collaborative game we are developing for SADESI (Sociedad Andaluza para el desarrollo de la Sociedad de la información), hopefully in a while it will be possible to play (end of the summer), we are performing first tests already.

This Project has been developed in python. Different libraries that can be usefull for different purposes other than the game itself, has been programmed. All development info is available at the Project Wiki in guadalinex “forja”.

WIKI

The game can be tested, you just have to download it from the repositories and install python and pygame, in that case the game will be played locally.

REPOSITORIO

Watch here a mini video of the game

And some screenshots

pantallazo 1

Add comment Julio 1, 2008

Jugando con el wiimote (parte 2)

Con un proyector, una mando de la wii y unos leds de infrarrojos se consigue proyectar una imagen sobre una superficie concreta, si mueves esta superficie, la imagen que se proyecto va siguiendo a la superficie citada anteriormente.

Como es más complicado de explicar que de ver, pongo un cutre-vídeo hecho con el teléfono en el que lenna se mueve por la pared siguiendo a la superficie.

Esperamos pronto tener nuevas ediciones de este serial.

Add comment Julio 1, 2008

Prototipo Cáceres 3D

En las últimas semanas hemos estado haciendo pruebas con JAVA3D para meter modelos en un motor de realidad virtual para poder ser visitados por un usuario.

Este trabajo es sólo un prototipo, por lo tanto hay cosas no implementadas como son las colisiones, para que funcione sólo es necesario tener instalada la máquina virtual de JAVA.

Se puede descargar desde aqui

Y podemos ver un vídeo

El prototipo sólo hay que descargarlo y ejecutarlo, no hay un ejecutable de windows porque no lo hemos hecho aún pero en principio no debe ser muy complicado hacerlo correr en windows

Add comment Julio 1, 2008

Inventario de Arquitectura Vernácula de Extremadura

Fomex ha resultado adjudicatario de este concurso para hacer el Inventario de arquitectura Vernácula de Extremadura. Durante el próximo año las empresas FOMEX, Geodatum e Igo Software trabajarán para conseguir un inventario lo más completo posible.

Enlace

Concretamente nuestra empresa se encargará de realizar la aplicación informática que permitirá la recogida de datos de campo y su posterior incoporación al Inventario de la Consejería de Cultura y Turismo de la Junta de Extremadura.

Según vayamos desarrollando iremos publicando en repositorios todo lo que vayamos haciendo.

Add comment Junio 9, 2008

Festival Nuevas Tecnologías de Extremadura de Los Santos de Maimona

Estuvimos por alli, lo pasamos muy bien, vimos muchas cosas interesantes y encima nos trajimos un par de premios por los dos videojuegos hechos en Software Libre para la Junta de Extremadura

noticia

Fue muy divertido y desde aqui agradecer a toda la gente del Ayuntamiento , organización y de la Fundación Maimona el trato hacia nosotros.

Esperamos volver el año que viene y participar más en este evento!

De nuevo gracias!

Add comment Mayo 1, 2008

Previous Posts


Categorías

Entradas recientes

Etiquetas

Blog Stats

Autores

Top Clicks