domingo, 20 de abril de 2014

SASPlanet: caché y mosaicos.

La caché de SASPlanet es uno de sus pequeños tesoros; entenderla y saber administrarla en pantalla nos proporciona una comprensión mucho más global del programa y un manejo y aprovechamiento más ágil del mismo. Es importante saber que SASPlanet trabaja con el sistema de mosaicos (tiles en inglés) y que almacena en su carpeta de nombre cache todos aquellos mosaicos que va descargando conforme visualizamos los mapas.

En el menú Source del programa disponemos de tres modos de trabajo de SASPlanet: Cache, en el que el programa no está conectado a internet y por tanto no descarga datos de mapas; trabajando sólo con las teselas existentes en nuestro disco duro; Internet, el programa funciona con conexión pero no tiene en cuenta los mosaicos existente en caché a la hora de visualizar en pantalla; e Internet&Cache, nuestra opción por defecto en la que tenemos una gestión completa (descarga más caché).
A su vez, la estructura de carpetas de la caché se configura de la siguiente forma: una carpeta para cada mapa, dentro de la cual se crearán subcarpetas para cada uno de los niveles de zoom de mapa. Esas subcarpetas contienen los mosaicos de cada uno de los zoom que tengamos descargados (z12,z13...). Y dentro de ellas más y más subcarpetas que corresponden con las coordenadas x e y de cada mosaico. El nombre de la carpeta caché para cada mapa es configurable como ya vimos (o desde el mismo archivo params.txt o desde el menú Settings/Map Settings).

Explicado esto, SASPlanet nos ofrece dos herramientas básicas para tener una visualización directa en pantalla del estado actual de nuestra caché. Ello no sólo nos proporciona un conocimiento real de los mosaicos en caché que disponemos para trabajar, sino que también mejora mucho la concepción espacial del terreno y nos ofrece información actualizada del número y tamaño de los mosaicos que necesitaremos en nuestra selección.

La primera herramienta que recomiendo activar es Tile Boundaries, que no es más que la visualización en pantalla de la rejilla que componen los mosaicos a determinado nivel de zoom. Desde su menú podemos desactivarla, activarla para el zoom actual que tengamos puesto, o activarla para cualquiera de los zoom superiores. De forma que sin modificar nuestro zoom podemos consultar el aspecto de la rejilla para cualquier otro zoom superior y así hacernos una idea bastante exacta del numero de mosaicos que lo componen.


La rejilla de mosaico viene por defecto configurada en color blanco y a determinada opacidad; puede darse el caso de que haya mapas que por su color general hagan muy difícil la visualización de la rejilla, en cuyo caso podemos cambiar el color y la opacidad de las líneas en las opciones generales del programa. En el ejemplo véis como yo la he configurado en un color azul; también se puede marcar o desmarcar la casilla que muestra las coordenadas x e y del mosaico en pantalla. En definitiva creo que es una opción que merece la pena estar activada, sobre todo en combinación con la segunda herramienta que paso a describiros.



La opción Cached Tiles Map es, sin duda, el complemento perfecto al tener activada la visualización de la rejilla de mosaico Tile Boundaries. Traduciéndolo como "mapa de mosaicos en caché", esta herramienta, que cuenta con botón propio en la barra de iconos principal, es un poderoso gestor y organizador de todos aquellos archivos que conforman la maraña de carpetas en que nuestra caché puede convertirse después de un prolongado uso de SASPlanet.
Al tener la rejilla de mosaicos activa, Cached Tiles Map nos permite destacar de varias formas aquellos mosaicos que ya están descargados en caché (y por tanto ya están en nuestro disco duro) dándonos una visión inmediata y real de la cantidad de mosaicos que habremos de descargar para conseguir el mapa de nuestra selección. Y no sólo eso, sino que nos ofrece la misma información para cualquier nivel de zoom y para cualquier mapa de nuestro catálogo, con lo que con un simple jugueteo con este menú podremos saber con rapidez y fiabilidad los mosaicos que tenemos en caché de la zona que nos interesa para cualquier mapa y a cualquier nivel de zoom. También tener una representación gráfica en directo más agradable y certera de los mosaicos que se están descargando cuando trabajamos con el gestor de descargas. Los parámetros son muy sencillos:

SASPlanet mostrando los mosaicos en caché para zoom 14 en modo degradado verde
aunque tenemos seleccionado zoom 12 en vista principal (rejilla azul).
SASPlanet mostrando los mosaicos en caché para zoom 16 en modo sombrear los no existentes en caché,
 aunque tenemos seleccionado zoom 14 en vista principal (rejilla azul)
SASPlanet mostrando los mosaicos en caché para zoom 16 en modo sombrear los existentes en caché, y para un mapa
distinto (SPAIN topo) del que tenemos activo (Spain PNOA). Si no fuera así los mosaicos se habrían oscurecido al coincidir el zoom general con el zoom de visionado de mosaico (la caché los habría descargado automáticamente).
Todo esto, que tampoco es fundamental (se puede trabajar sin nada de esto, descargando sin saber nada de la caché y cuando acabe acabó y punto pelota), ni siquiera necesario, se me volvió imprescindible en el siguiente caso que un compañero forero me comentó: después de hacer un JNX de tres capas comprobó que la última capa no cubría el mismo terreno que la anterior,  lo que podría provocarle lagunas vacías en una serie de mosaicos JNX. Otra querida compañera forera me dio la pista: cada tesela se divide en cuatro más pequeñas a cada ampliación de zoom, de tal forma que lo que es una tesela a zoom 17, se convierte en 4 a zoom 18 y en 16 a zoom 19. Así pues, si no hemos ajustado nuestra selección lo más posible al borde de la tesela al mayor de los zoom, al ampliar ese zoom y multiplicarse el número de teselas en el mismo espacio, es muy fácil que la esquina de nuestra selección caiga en una tesela diferente a zoom 17 y a zoom 20. Esto sucederá siempre, y con mayor facilidad a mayores diferencias de zoom, aunque ni siquiera cambiemos el mapa para cada capa. Con un ejemplo gráfico se verá muy claro y os aburriré menos (pinchad en la imagen para ampliarla):
Por eso, en el caso de que queramos hacer un mosaico del terreno con varios jnx, recomiendo irnos hasta el último zoom que vayamos a trabajar y ajustar nuestra selección lo más posible al borde de la última tesela que comprenda (sin pasarse, sino descargará la siguiente fila o columna). En el caso del ejemplo, antes de descargar nada, sería irnos a zoom 20 y estirar nuestra selección hasta dejarla incluida dentro de la zona rosa.
Este asunto se complica un poco más cuando usamos para alguna capa un mapa que tiene distinta proyección que el de la capa precedente (por ejemplo, Spain Topo+Bing Satélite); en estos casos, además del lógico desplazamiento de la esquina de nuestra selección por el efecto zoom y la multiplicación de teselas, resulta que el grid de mosaico no es el mismo y también sufre una leve distorsión al cambiar la proyección. De nuevo lo mejor el ejemplo gráfico:
Por lo tanto y como veis, aquí ya no es sólo que se desplace la esquina de nuestra selección al aumentar el zoom (lo lógico), sino que al ajustarse la rejilla de mosaicos por la nueva proyección, ni siquiera nuestra selección original mantiene el borde de tesela, por muy ajustada que la hayamos hecho. Para este caso no he probado aún, pero sólo me queda confiar en que al desplazar nuestra selección x teselas para hacer otro jnx de nuestro mosaico, el efecto vuelva a ser el mismo y al final la capa ortofoto cubra todo el terreno sin dejar espacios en blanco. Repito que sólo debería suponer algún teórico problema si estamos haciendo mosaico de varios jnx y con capas de distintas proyecciones; en caso de usar mapas de misma proyección debería bastar con ajustar todo lo posible la selección en el mayor zoom a utilizar para evitar el problema.

También quería comentar (ya que este post va de caché) que sigo sin conseguir que funcione el Cache Manager, a pesar de que me pareció leer que en esta última versión de SASPlanet había sido resuelto. En teoría nos permite seleccionar cualquier carpeta de nuestra caché y convertir todos sus mosaicos a cualquiera de los formatos que veis en la captura. Especialmente interesante sería la opción de exportar la caché a un mosaico Global Mapper, con todas las posibilidades que este programa nos ofrece en conversiones de archivo. Pero insisto que en mis pruebas no responde (o no se hacerlo). Seguiremos intentando.



Para desengrasar un poco pensaba dejaros un pequeño vídeo mostrando el funcionamiento del mapa caché en SASPlanet, y cómo se visualizan las descargas de teselas en directo. Pero creo que por este post ya vamos serviditos. Saludos.

7 comentarios:

  1. Gracias por la información. Estoy tratando de entender dónde guarda el caché SAS.Planet y si puedo moverlo hacia otro disco sin alterar su funcionamiento. Creería que sí porque cuando descargué el programa sólo tenia que descomprimir la carpeta y no instalar nada. Todavía no intento porque tengo muchos datos descargados y no quiero perderlos. Mi problema es que el disco principal ya se llenó y no puedo usar la computadora, por eso debería cambiarlo a otro disco. Me ayudaría mucho si alguien sabe cómo hacerlo o al menos si es factible hacer lo que planteo. Desde ya les agradezco. Saludos!

    ResponderEliminar
    Respuestas
    1. Hola Carol. Si mueves las carpetas de la caché lógicamente SASPlanet no encontrará las teselas cuando uses un mapa y deberá volver a descargarlas. Puedes limpiar caché de los mapas que no te interese mantener o modificar cada mapa de forma que su ruta caché apunte a la nueva ubicación de la carpeta. Saludos!

      Eliminar
  2. Hola. Hay una cosas que no tengo clara:para descargar un mosaico en un archivo con la opción stich a un determinado zoom, ¿siempre es necesario haberse desplazado a ese zoom por toda la extensión a descargar? Es algo muy tedioso... Gracias!

    ResponderEliminar
    Respuestas
    1. No hombre... desplazarse por la zona también va descargando los archivos en caché según la vas visualizando, pero para eso está el gestor de descargas: para seleccionar una zona y decirle a que zoom o zooms debe descargar los mosaicos. Y luego ya hacemos el stitch.

      Eliminar
    2. aaahhh vale... Yo me iba directamente a la pestaña Stich. 🙈 Gracias de nuevo.

      Eliminar
  3. Buen día amigo, tengo una duda ¿Por que es necesario para descargar una imagen satelital darle clik primero a download y no directamente en Stich? De hecho lo intente directamente con Stich y si se me descargo la imagen satelital

    ResponderEliminar
    Respuestas
    1. Porque si no descargas antes las imágenes a los zoom que necesites al exportar solo tendrás disponibles las de los zooms que hayas previsualizado en pantalla, no el resto. A ti te funcionaría el Stich sin descarga previa porque lo hiciste con imágenes ya en caché al haber previsualizado esa zona. Si de esa misma zona hubieras necesitado imágenes más detalladas te hubieran salido borrosas en tu imagen exportada al no estar descargadas previamente (mediante la descarga previa o mediante la previsualización en pantalla -SASPlanet va descargando también en caché las imágenes que vamos viendo en pantalla-). Saludos.

      Eliminar