domingo, 16 de marzo de 2014

Garmin y los BirdsEye JNX (3).

Hoy toca explicar un proceso alternativo para generar hipermapas JNX para los dispositivos Garmin compatibles (unidades más modernas y con firmware parcheado). Si en el post anterior vimos como hacerlos usando solamente Global Mapper y jnxCustomizer (hilo oficial), ahora usaremos además jnxmerge y JNXer, dos utilidades adicionales. Para compensar esa desventaja inicial de usar cuatro pasos en vez de dos, nuestro JNX resultante nos ocupará muchos menos megas de esta manera. La razón es que jnxCustomizer necesita para unir dos JNX que ambos tengan las mismas teselas, lo que nos obliga a generar los JNX topo con el mismo número de mosaicos que el JNX orto (que es el que realmente aumenta el peso final del archivo dada su resolución). Con jnxmerge esto no es necesario por lo que podemos generar los JNX topo sin la ortofoto de fondo, consiguiendo un gran ahorro de tamaño como veremos. Y, en cualquier caso, ¿no os gusta trastear como a mi? Jaja... Pues a trastear.
La primera parte (generar los JNX de las capas que queramos con Global Mapper) no difiere apenas del post anterior. Simplemente exportaremos la orto sola por un lado, y después los mapas topo sin la orto cargada. El ahorro de teselas es brutal (una ortofoto de unos 11000 mosaicos puede ocupar unos 60 en mapa topográfico para el mismo terreno), lo que se traduce en un menor peso global del JNX.
Una vez tenemos los tres JNX que queremos unir abrimos jnxmerge, una sencillísima utilidad para unirlos. De interfaz básica, pinchamos en open file 1 y seleccionamos el topo50; pinchamos en open file 2 seleccionando el topo25 y le damos a merge, dándole nombre y ubicación al nuevo JNX dos niveles. En breves segundos lo tendremos hecho. Como la interfaz de jnxmerge es tan básica que sólo permite cargar dos mapas, para unir el tercero repetimos la operación cargando esta vez el JNX unión de los dos topo anteriores, más la orto y volvemos a unirlos dándole nombre.
Pantalla resultante de la unión de los dos primeros jnx: topo50 y topo25.

El problema de jnxmerge es que nuestro JNX resultante tendrá los niveles al zoom que le de la gana y además genera un JNX versión 3, algo ya caduco que no entienden los nuevos firmwares de los dispositivos Garmin. Y para colmo jnxCustomizer no los puede cargar y actualizar (aunque en teoría está concebido para ambas versiones).
Error de jnxCustomizer al intentar abrir un jnx generado con jnxmerge.

Por ello necesitamos JNXer. Es JNXer un programilla mucho más atractivo visualmente; abrimos nuestro JNX de 3 niveles generado con jnxmerge (de nombre mapa3niveles). En la pantalla principal podemos movernos visualizando los distintos niveles así como información detallada de cada uno (mosaicos, draworder, nivel de zoom, etc...). Se observa como el DrawOrder es erróneo por completo (-1).

En la pantalla secundaria (Lista de Mapas) aún mucha más información. Aquí es donde cambiáremos los niveles de zoom de cada capa y actualizaremos el JNX a la versión 4. Después actualizaremos el mapa (UpdateMap) -el draworder cambiará a 30 y se mantendrán los zoom elegidos para cada nivel- y lo salvaremos (SaveMap). El programa salva por defecto añadiendo el sufijo _saved al nombre del archivo original.

Lamentablemente este archivo resultante sigue sin ser visible en BaseCamp, por lo que el último paso es cargarlo en jnxCustomizer 1.0.24 (la 1.0.28 no me lo ha hecho), activar las casillas de los niveles 1, 2 y 3 y guardarlo (el sufijo _new se añade al nombre del archivo original). Podemos añadir también el número de Grupo y su descripción para ir creando una familia de mapas que luego pueden encenderse o apagarse a la vez en nuestro gps.
Con esto nuestro JNX debería ser perfectamente visible en BaseCamp y en los dispositivos Garmin compatibles. ADVERTENCIA: ESTE PROCEDIMIENTO DE GENERAR JNX MULTINIVEL ES BASTANTE CAPRICHOSO E IMPREDECIBLE. ME HA PASADO DE TODO EN LAS PRUEBAS: DESDE QUE FUNCIONEN A LA PRIMERA, A QUE UNAS VECES SI, OTRAS NO O DEPENDA DEL ORDENADOR EN EL QUE TRABAJE. Así que tomaos esto como unas prácticas y no desesperéis tanto como yo sino os resulta, porque es para enloquecer.

Ayer me harté de hacer pruebas siguiendo EXACTAMENTE los pasos de este artículo y ninguna de las pruebas se veía en BaseCamp (Windows 7). Hoy acabo de hacer otra prueba siguiendo EXACTAMENTE los pasos de este artículo (Windows XP, no se si tendrá algo que ver...) y aquí os dejo las capturas. A la primera.
Topo50 a 1km de zoom
Topo25 a 300m de zoom

Ortofoto a 100m de zoom

De hecho este JNX elaborado de forma tan artesanal es perfectamente visible en Global Mapper, funcionando perfectamente los distintos niveles de zoom del hipermapa, como se ve en las siguientes capturas con su correspondiente nivel de zoom:
JNX elaborado según este artículo abierto en Global Mapper. Estructura del archivo en el Control Center.

Como veis, un proceso distinto, algo más laborioso pero con un resultado de un JNX mucho más ligero. Eso si es que funciona, claro... La decisión de cómo hacerlos es vuestra. Lo que parece que nunca falla es cargar en la carpeta BirdsEye un jnx individual de cada capa y que vayan entrando dependiendo del nivel de zoom configurado para cada uno.
Se agradecen comentarios de los resultados a los que probéis este sistema, que de editar el post con los nuevos descubrimientos siempre hay tiempo.


2 comentarios:

  1. Hola, he estado probando esto y no me funciona bien el JNXer, cuando pongo la versión 4 al JNX, en cuanto salgo del campo vuelve a ponerme 3. Sin embargo como dices, una pequeña ortofoto, guardada desde SASplanet como Jnx, al abrirlo en Basecamp, basta con ponerle un orden de trazado superior (por ejemplo 41) y entra al aumentar el zoom.
    Creo que este es un buen método para ortofotos de pequeñas zonas dentro de un mapa grande, por ejemplo el TopoEspaña.
    El método de crear el JNX multicapa con SASplanet creo que es el ideal para pequeños mapas con todos los niveles en uno.
    No he probado lo de bajar fotos del IGN en ecw , convertirlas a kmz ¿con Globalmapper? y pasarlas en ese formato al GPS, pero ¿tiene alguna ventaja en vez de hacerlo en jnx con SASplanet?, esto me ha parecido muy sencillo
    Vaya rollo me he soltado, pero es que es ya muy tarde...

    ResponderEliminar
  2. Si, creo que tienes que salvar los cambios sino al JNXer le cuesta pillar el cambio a 4. En cualquier caso esto fue escrito antes de descubrir SASPlanet y sus posibilidades; ahora mismo no se me ocurre ninguna razón para usar kmz en vez de jnx (que además es el formato más recomendado y mejor optimizado para imágenes en los gps). Quizá alguien que no pueda o no quiera parchear el dispositivo... pero quitando ese caso las ventajas del jnx respecto al kmz son todas. Saludos tocayo!

    ResponderEliminar