miércoles, 13 de mayo de 2015

MOBAC: importar cache SASPlanet.

Hoy vamos a tratar un asunto a mi modo de ver muy útil e interesante. Como sabemos, tanto SASPlanet como MOBAC son dos de los programas fundamentales a la hora de crear nuestros mapas a partir de servicios WMS. En mi opinión, SASPlanet es el rey a la hora de hacer mapas JNX multicapa para los dispositivos Garmin, y MOBAC es el rey por ejemplo para hacer mapas multicapa para OruxMaps. Dependiendo de la cantidad de servicios WMS que seamos capaces de configurar para uno u otro programa, así será la cantidad de mapas disponibles que tendremos en los mismos (y, por ende, en nuestros dispositivos de mano). Sabemos que ambos guardan en caché los mosaicos de los mapas que visualizamos o descargamos, de forma que esa multitud de pequeñas imágenes quedan en nuestro disco duro para sucesivas cargas del mapa mucho más veloces (o para componer un mapa más grande de esos pequeños mosaicos).
Pues bien, a partir de la versión 141212 de SASPlanet (la última estable hasta la fecha), el programa permite guardar las imágenes de caché en formato MobileAtlas o, lo que es lo mismo, en un formato que puede ser leído directamente desde MOBAC con su correspondiente archivo .xml de fuente de mapa. ¿Qué quiere decir esto? Que los mapas que tengamos configurados en SASPlanet para que nos guarden la caché en formato MobileAtlas podrán ser abiertos en MOBAC simplemente apuntando desde él a la carpeta caché correspondiente de SASPlanet.
Creo que para los que admiramos y utilizamos ambos programas con frecuencia es una noticia extraordinaria, pues nos permite abrir en MOBAC la gran colección de mapas que ya tenemos disponibles en SASPlanet. Y aunque es cierto que las mismas fuentes WMS de SASPlanet son en teoría igual de fácilmente configurables para MOBAC, este hecho de poder compartir caché nos evitará duplicidades y ahorrará espacio en disco al no ser necesario tener la caché de un mapa en las carpetas de ambos programas. Espero haberme explicado y vamos con ello....

1.- Configurar el tipo de cache en el mapa deseado en SASPlanet.
El primer paso es decirle a SASPlanet que para un determinado mapa queremos que su cache nos la guarde en el formato MobileAtlas. Como ejemplo de este artículo vamos a usar, obviamente, la versión SASPlanet 141212 y el mapa TOPO10k de Catalunya. Procedemos según la siguiente secuencia:
1.- En el menú Settings/Options buscamos en la pestaña Maps nuestro mapa a modificar. 2.- Lo seleccionamos y pulsamos el botón Settings. 3.- En la pestaña Cache type seleccionamos MobileAtlas. Aceptamos y aplicamos todos los cambios en todas las ventanas.
Si tenemos nuestro mapa objetivo abierto en pantalla, el menú Settings/Map Settings que vemos donde el número 1 nos llevaría también directamente a la ventana 3. Con esto hemos conseguido que el programa nos genere una nueva carpeta cache_ma como por defecto tiene configurado en sus opciones para alojar las imágenes de la cache en formato MobileAtlas.
Menú de opciones donde se nos informa del nombre de la carpeta cache para cada tipo de cache. Una vez tengamos configurado el mapa como cache MobileAtlas y lo abramos en pantalla, automáticamente se genera la carpeta cache_ma.
Será pues a partir de ahora dentro de esta carpeta cache_ma donde se alojarán las imágenes del TOPO10k de Catalunya, y más concretamente dentro de la carpeta CatalunyaTOPO10k, pues es así como está configurado el nombre de la carpeta cache propia del mapa (línea NameInCache=CatalunyaTOPO10k dentro del archivo params.txt del mapa). Y según vayamos descargando o navegando por el mapa a diferentes niveles de zoom, la carpeta cache irá adquiriendo un aspecto y estructura como este:
Carpeta cache en formato MobileAtlas (cache_ma) del mapa TOPO10k de Catalunya
 conteniendo multitud de imágenes en sus carpetas con diferentes niveles de zoom.

2.- Crear el archivo del mapa para MOBAC.
Nuestro segundo paso es crear el archivo .xml de mapa que permitirá a MOBAC acceder a la carpeta cache correspondiente de SASPlanet. Tanto en la ayuda de la web de MOBAC, como en el archivo de ayuda README.HTM en la carpeta del programa, tenemos las directrices necesarias para crear un archivo que lea las local tiles, o sea, las imágenes de cache de nuestro disco duro en local. Abrimos un simple editor de texto (bloc de notas) y ponemos el siguiente texto:

<?xml version="1.0" encoding="UTF-8"?>
<localTileFiles>
<name>Sasplanet-CAT-TOPO10k</name>
<sourceType>DIR_ZOOM_X_Y</sourceType>
<sourceFolder>E:\SAS.Planet.Release.141212\cache_ma\CatalunyaTOPO10k</sourceFolder>
</localTileFiles>

Este código os puede servir de plantilla para cualquier otro mapa que queráis (yo he probado con varios y funciona, pero no garantizo infalibilidad). En realidad sólo son DOS los parámetros importantes a modificar para elaborar cualquier mapa, tal cual vemos en la siguiente captura:
En naranja el nombre que nos va a salir en la lista de mapas de MOBAC. En verde la ruta a la carpeta cache del mapa
 en SASPlanet (formato MobileAtlas), por lo tanto por defecto siempre carpeta cache_ma.
El archivo se nos guardará por defecto con la extensión .txt. Simplemente cambiamos la extensión a .xml sin ningún problema y ponemos el archivo en la carpeta mapsources dentro de MOBAC.

3.-  Comprobar que la cache del mapa configurado en SASPlanet se visualiza en MOBAC.
Sólo nos queda hacer la comprobación de que al arrancar MOBAC nuestro nuevo mapa está disponible en la lista y es capaz de cargar aquellas imágenes que previamente hayamos descargado en SASPlanet. Tanto terreno y tantos niveles de zoom como acumulemos en la cache de SASPlanet, tanto terreno y niveles de zoom se verán en MOBAC. Y además actualizándose constantemente: si descargamos en SASPlanet un nuevo nivel de zoom del mapa u otra zona de terreno, sólo tendremos que volver a abrir MOBAC para tenerlo disponible.
Mapa de la cache de SASPlanet perfectamente cargado en MOBAC, con el nombre personalizado.
La versatilidad de SASPlanet como programa portable es, en estos casos, muy útil. Podemos por ejemplo tener el mismo SASPlanet instalado dos veces y en una de las instalaciones configurarlo para que todos los mapas guarden la cache en formato mobileatlas (de forma que tengamos el SASPlanet tradicional y el SASPlanet al que apuntarán los mapas de Mobac). O configurar como cache mobileatlas sólo los mapas que no tengamos ya configurados en Mobac.... Y no olvidemos tampoco que SASPlanet nos permite exportar cualquier cache que tengamos ya descargada al formato MobileAtlas y a la carpeta que elijamos, sin necesidad de volver a descargarla en formato MobileAtlas. Las posibilidades son tantas como los gustos personales o las necesidades.

3 comentarios:

  1. MUY BUEN POST. ME SALIO A LA PERFECCIÓN. ES UD UN GENIO SEÑOR!

    ResponderEliminar
  2. Pero este hombre de donde saca tiempo.......Javi que te van a echar de casa !!!

    ResponderEliminar
    Respuestas
    1. Jajaja... tengo que dejar escrito todo lo que descubra antes de que chocheé!!!

      Eliminar