lunes, 2 de octubre de 2017

Dockable MirrorMap: multilienzo en QGIS.

Otro de los complementos para QGIS que nos han parecido de mucha utilidad ha sido Dockable MirrorMap, elaborado por Giuseppe Sucameli para Faunalia. En este caso hablamos de una utilidad principalmente visual que nos permite abrir distintas vistas del lienzo de QGIS, pudiendo pues representar en cada una de ellas diferentes perspectivas de nuestro área de trabajo.
Podemos instalarlo de la forma habitual desde el gestor de complementos (y también está disponible en su propio repositorio GitHub).
Una vez instalado el complemento crea entrada en el menú Complementos e icono en la barra de botones.
Cargamos en QGIS uno de nuestros proyectos, en este caso compuesto por varios vectores y un servicio WMS para comprobar que el complemento funciona con diversas fuentes de datos.
Abrimos una segunda vista del lienzo de trabajo presionando en el icono del complemento Dockable MirrorMap:

Esta segunda vista del área de trabajo se nos abre por defecto en blanco. Seleccionamos la capa o capas de las disponibles en nuestra vista principal que queremos añadir a la segunda ventana:
1.- Seleccionamos tres capas del proyecto. 2.- El botón + de la nueva vista se activa para poder añadir las capas,
y 3.- las capas se cargan en nuestra vista secundaria del mapa.
La imagen de nuestra ventana secundaria es ahora independiente en cuanto a su contenido de capas y está además perfectamente sincronizada con la vista principal, de forma que los desplazamientos y zooms que hagamos en ésta se reproducen simultáneamente en aquella.
Las ventanas abiertas por Dockable MirrorMap contienen una barra de herramientas en su parte inferior, muy elementales y que explicamos en el siguiente cuadro:
Dependiendo de la capa seleccionada en el panel de capas se nos activará el botón correspondiente para Añadir o eliminar capa. Si la capa contiene varios estilos de representación podremos elegirlo en la pestaña Estilo de capa. El selector de Renderizar imagen habilita o anula la carga continua de los elementos al desplazarnos por el mapa. Con el Factor de escala podemos seleccionar la proporción de escala respecto a la vista principal, y por último la Etiqueta de vista nos permite dar un nombre identificativo a cada ventana.
Dockable MirrorMap nos permite añadir diferentes ventanas cada una de ellas perfectamente configurables en elementos representados, estilo de los mismos o nivel de escala de la vista. También podemos ajustar el tamaño o ubicación de cada ventana. Jugando con estas posibilidades disponemos de un lienzo de trabajo enriquecido, que gracias a la rápida visión de diferentes perspectivas de un proyecto, nos permite maximizar nuestro tiempo y ayudarnos a encontrar con más facilidad el enfoque deseado.
Ejemplo con dos ventanas secundarias abiertas y diferentes capas activas: la primera con estilo de color en la ortofoto y factor de escala 0,5 respecto a la principal. y la segunda renombrada con una etiqueta identificativa.
Obviamente decir que las modificaciones que hagamos en los elementos de la vista principal tendrán reflejo inmediato en las vistas secundarias, ya que son lo que son, vistas y no duplicados de capa que estén a salvo de la edición. Nada nos impide tampoco duplicar las capas de nuestro interés y trabajar en la vista principal con una y en la duplicada con otra, o cualquier otro procedimiento que cada uno tenga por costumbre.
Desde Cartografía Digital damos las gracias sinceras a sus creadores. Un saludo.

lunes, 25 de septiembre de 2017

Callejero Digital de Andalucía en QGIS.

Seguimos profundizando en el uso de QGIS y de aquellos complementos que nos están resultando más prácticos e interesantes. De entre los innumerables plugins del programa que lo completan y mejoran, hoy nos hemos fijado en CDAU Downloader, o lo que es lo mismo, la descarga de capas del Callejero Digital de Andalucía Unificado. Otro magnífico complemento de los chicos de SIGdeletras.
Una vez instalado de la forma habitual desde el gestor de complementos, la utilidad queda disponible a través
 de un nuevo botón en la barra de herramientas o a través del menú Complementos.
¿Qué hace CDAU Downloader?
El complemento descarga, a través del servicio WFS de la Infraestructura de Datos Espaciales de Andalucía, las capas disponibles en su callejero unificado. Tenéis información más detallada tanto en el repositorio GitHub del complemento (donde disponemos del código Python para poder adaptar el complemento a otros servicios WFS), como en la web del proyecto CDAU.
Como siempre nos gusta mostraros las cosas sobre el papel, vamos a plasmar un ejemplo en el que todo se observe con claridad. Ejecutando el complemento se abre la ventana para configurar los parámetros de descarga:

Es obligatorio completar ahora los campos de provincia, municipio, ruta local para la descarga y capas a descargar. Se puede seleccionar la opción de aplicar estilos a capas para que la descarga se realice con una determinada simbología, que incluye:
  • Capa Vial: Color negro y etiquetado por nombre de calle (campo "nom_normalizado") visible a partir de la escala 1:5000
  • Capa Portal/PK: Visibilidad de la capa capa a partir de la escala 1:3000, simbología puntal y etiquetado por número (campo "num_por_desde")
Rellenamos pues para nuestro ejemplo de la forma que sigue en la imagen:
Escogemos la provincia de Cádiz y el municipio de Jerez de la Frontera. Escogemos una ruta a la
 carpeta de descarga de datos, y seleccionamos las tres capas disponibles (viales, tramos y portal/PK). 
Marcamos también la opción de aplicar simbologías a las capas y pulsamos Ejecutar.
El plugin hará las correspondientes peticiones al servicio WFS y descargará las capas en formato GeoJSON en la carpeta indicada. El sistema de referencia de las capas es ETRS89 (EPGS:4258).
En la carpeta seleccionada para descarga de los datos se nos crea una nueva carpeta con el identificativo nombre del ayuntamiento y su código postal. Dentro de ella se alojan los tres archivos geojson correspondientes a las tres capas descargadas.
Podemos ver en la captura, a modo orientativo, los tamaños de archivos descargados para el municipio de Jerez.
Paralelamente los archivos se cargan también en nuestra vista de escritorio de QGIS, en capas individuales.
Nótese que la capa portal/pk aparece como inactiva debido a que nos encontramos a una escala a la que aún no es operativa como comentamos más arriba. Igualmente no se muestra el etiquetado de la capa vial por el mismo motivo.
Situados a la escala apropiada comprobamos como tanto la capa vial como la capa portal/pk se muestran visibles con sus etiquetados y simbologías predeterminados.

Los archivos geojson cuentan con su correspondiente tabla de atributos completa, formada por multitud de campos a partir de los cuales podremos catalogar, discriminar y clasificar los datos de la forma que nos interese. De igual forma estos vectores son perfectamente modificables para aplicarles la simbología y etiquetado oportunos.
Tabla de atributos de la capa Vial, con número total de elementos y los diferentes campos disponibles.
Como mencionan los autores del complemento, "aunque la información geográfica del CDAU es accesible desde distintos servicios OGC (WMS y WFS), e incluso puede ser descargada por municipio desde la misma web, en este caso el plugin aprovecha las posibilidades del servicio WFS para la descarga de las capas directamente desde el SIG. Disponer de estas capas en nuestro proyecto nos permitirá realizar labores de geocodificación de datos a direcciones postales, tramos o viales completos. Este tipo de geodatos es fundamental en cualquier administración pública, pero sin duda tiene un papel fundamental para empresas de logística (routing), gestión inmobiliaria o geomarketing… además de ser la base para cualquier proyecto SIG que necesite una capa de viales y direcciones postales de un municipio de Andalucía."
Es sin duda esta comodidad de acceso a los datos y ponerlos automáticamente a merced de todo el potencial de QGIS lo que nos llamó la atención. Nuestra enhorabuena y agradecimiento a estos inventos que mejoran sustancialmente las posibilidades de trabajo. Saludos.

lunes, 18 de septiembre de 2017

Mapas TMS en QGIS: OpenTopoMap.

Los mapas online son una forma de acceder a diversa cartografía muy cotidiana en nuestros días. A través de servicios alojados en servidores es posible visualizar y/o descargar cualquier mapa que alguien haya tenido a bien publicar. Los servicios de visualización WMS/WMTS o de descarga WFS son ya conocidos y hemos tratado sobre ellos en muchos artículos, además de ser la base para obtener mapas y datos de forma remota, de forma que es habitual que se encuentren integrados en los principales softwares para el manejo de información geográfica.
Los mapas TMS (Tile Map Service) que hoy nos ocupan son otra variante de estos servicios que permiten el acceso online a imágenes remotas. Por decirlo de forma rápida, un servidor que aloja teselas o mosaicos (tiles) de un mapa puede ser llamado por el usuario en forma de peticiones a través de las aplicaciones apropiadas para ser visualizado directamente en su dispositivo.
En este artículo vamos a usar unos de esos servidores (OpenTopoMap) y hacerle nuestra petición de imágenes a través de nuestra aplicación (QGIS). En las últimas versiones del programa (a partir de la 2.18) está tarea se ha facilitado enormemente pues se ha implementado de manera nativa la posibilidad de leer mapas TMS.

En la propia web de OpenTopoMap encontramos lo primero que necesitamos:
OpenTopoMap nos ofrece la dirección URL a través de la que podemos acceder a los mosaicos de  sus imágenes:

{a|b|c}.tile.opentopomap.org/{z}/{x}/{y}.png
  • Las tres letras (a b c) corresponden a los tres servidores disponibles para acceder a las teselas, de forma que al hacer nuestra petición debemos escoger uno de ellos.
  • La letra Z corresponde al zoom o escala al que vamos a hacer la petición, ya que todos estos mapas online normalmente contienen varios niveles en los que las imágenes son diferentes y van variando según el nivel de detalle que se requiera.
  • Y las letras X e Y se corresponden a la longitud y latitud de la tesela individual según la numeración que haya establecido el propio servidor.
Tras esta explicación muy básica podemos probar con la siguiente petición:
https://a.tile.opentopomap.org/14/8695/5583.png
Hemos elegido el servidor a, el nivel de zoom 14, y la tesela de coordenadas x=8695 e y=5583. Si introducimos esta dirección en nuestro navegador de internet obtenemos el mosaico:
El navegador nos devuelve una imagen en formato png, normalmente de 256x256 pixels de tamaño, de la zona correspondiente a las coordenadas x-y introducidas y con la escala correspondiente al nivel de zoom elegido.
Por tanto, un simple cambio añadiendo un número más a la cifra de la X nos devolverá la tesela contigua:

Baste esta breve y ruda explicación para tener un concepto básico del funcionamiento de los Tile Map Service y vamos ahora con la segunda parte del artículo: cargar mapas TMS en QGIS. El programa tiene el acceso a la herramienta en el panel del explorador (cuadrado verde en la imagen):
En la columna izquierda tenemos el panel de capas o el panel del explorador, dependiendo la pestaña activa (en rojo). Si no os aparece podéis hacer click derecho sobre la barra de botones superior y se os abrirá el selector de paneles para activarlo (en amarillo).
Evidentemente las peticiones individuales de mosaicos que hemos visto más arriba no tienen ninguna utilidad a la hora de querer visualizar amplias vistas de mapas, ni tendrían la agilidad necesaria para moverse ni trabajar. Por ello la dirección que se utiliza para configurar el servicio es la siguiente:
http://c.tile.opentopomap.org/{z}/{x}/{y}.png
Sin peticiones individuales, sino con la fórmula genérica que nos permita acceder de manera automática a todos los mosaicos del mapa. Recordad que tenemos tres servidores disponibles (a b c) que podéis ir probando en caso de que alguno de ellos no os diera buen resultado.
Hacemos click derecho sobre Tile Server (XYZ) y pulsamos New Connection... Introducimos la dirección en la nueva ventana y le damos un nombre al mapa en la siguiente. Aceptamos.
La conexión al mapa queda hecha y disponible en el árbol de conexiones de nuestro panel del explorador. Click derecho para opciones y con Añadir capa el mapa se carga en pantalla y se añade a nuestro panel de capas.

Nota: el mapa se nos ha mostrado un tanto errático y remolón refrescando la caché de imágenes cuando nos desplazamos o hacemos zoom, de forma que deja en blanco áreas que ha mostrado en una vista anterior y nos obliga a volver a mover el mapa para reconectar. Me ha pasado con los tres servidores por lo que deduzco que es cosa del propio mapa, ya que con otras cartografías no nos pasa, por lo que no parece problema de QGIS.

Aunque las "principales" cartografías ya están implementadas en diversos complementos de QGIS como QuickMapServices u OpenLayers, ahí os dejo unas cuantas direcciones de ejemplo para que podáis probar y añadirlas en el visor nativo de QGIS (testadas y funcionando). Saludos.
bergfex_osm: http://maps.bergfex.at/osm/standard/{z}/{x}/{y}.jpg

ESRI ArcGis standard
https://server.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer/tile/{z}/{y}/{x}

Google Terrain
https://mt1.google.com/vt/lyrs=p&x={x}&y={y}&z={z}

opnvkarte: http://tileserver.memomaps.de/tilegen/{z}/{x}/{y}.png

Strava cycling: http://globalheat.strava.com/tiles/cycling/color1/{z}/{x}/{y}.png  
sobre Google SAT: http://www.google.cn/maps/vt?lyrs=s@189&gl=cn&x={x}&y={y}&z={z}

martes, 12 de septiembre de 2017

Google Street View en QGIS: go2streetview.

Continuamos explorando aquellos complementos para QGIS que nos resultan sorprendentes y dan valor añadido a este magnífico software SIG. Hoy, al igual que vimos hace unos días, de nuevo traemos un plugin que une el planeta QGIS con el universo Google: go2streetview. Su propio nombre ya nos da la pista de que se trata de una utilidad para poder ver en el escritorio de QGIS las imágenes de Google Street View, tan impresionantes y conocidas por todos.
Instalando el complemento de la forma habitual, nos genera tanto icono en la barra de botones como entrada en el menú Web.
Es importante remarcar que para usar este complemento necesitamos una clave API de Google. No es este el lugar ni el momento para explicar cómo obtenerla, así que os remito a la documentación de Google y las webs de su repositorio y del propio complemento, donde tenéis instrucciones de los pasos para conseguirla. También podéis ver las limitaciones de uso en cuanto a peticiones de imágenes de una API key estándar.

Como ya sabéis que nos gusta desarrollar en detalle y lo mejor posible los artículos, no hemos reparado en gastos y pasamos a exponeros sobre el terreno todas las posibilidades que le hemos visto a este espectacular complemento. Cargamos en QGIS algunas capas de nuestro reciente mapa TopoGalicia que nos puedan ser de utilidad para nuestras prácticas y ayuden visualmente a la comprensión:
Hemos categorizado, etiquetado y aplicado una simbología de manera básica para que visualmente todo sea más intuitivo.
Ejecutamos go2streetview y se nos habilita la ventana lateral de visualización:
En la misma ventana unas instrucciones ya nos invitan al siguiente paso: click en mapa y arrastrar para dar la dirección de la vista.
Pinchamos en ese puente y orientamos la vista río adentro; en unos segundos la imagen Street View aparece en nuestra ventana de visualización:
La precisión tanto en la ubicación como en la orientación es excelente.
Como movimiento más básico podemos rotar y hacer zoom sobre la vista Street View (igual que en la aplicación original), de forma que el aspa azul del mapa se amolda a la nueva vista (girando) y al nuevo nivel de zoom (abriendo o cerrando el ángulo del icono). 
También podemos usar los marcadores de suelo de Street View, avanzando o retrocediendo por los viales,
y nuestro cursor azul se irá moviendo por el mapa completamente sincronizado.
Bonito, ¿verdad?. Simplemente con esta utilidad en pantalla y la información adecuada cargada tenemos una excelente herramienta de comprobación topológica, de corrección de errores o de búsqueda de imágenes para bases de datos. Las posibilidades se me antojan casi infinitas.
Ejemplo de esta utilidad del complemento, apoyando con imágenes reales nuestras búsquedas o digitalizaciones sobre el terreno.
Pero esto es solo el principio... go2streetview nos ofrece muchas más opciones que vamos a seguir explicando, accesibles desde el icono de la ventana del plugin. En la siguiente imagen agrupamos las opciones más visuales y sencillas y añadimos un breve comentario ayudados por un código de colores en las flechas:

  • Show streetview coverage: añade una capa que muestra la cobertura de Street View en forma de suaves líneas azules. En la esquina inferior derecha una etiqueta avisa de que está activa.
  • Map follows Streetview: activa el seguimiento de Street View en el mapa, de forma que la vista del mapa rota o se traslada siguiendo la imagen.
  • View Streetview links: muestra u oculta los corchetes del suelo en Street View.
  • View Streetview adress: muestra u oculta el cuadro con la dirección postal de Street View.
  • View Streetview image date: muestra u oculta la fecha de la imagen Google.
  • View Streetview zoom control: muestra u oculta los controles de zoom (también rueda de ratón).
  • View Streetview pan control: muestra u oculta el control de giro de vista (también arrastrar ratón).
  • Streetview click to go: activa o desactiva la función de moverse por Street View a grandes pasos.
Otras opciones del plugin sin necesidad de mucha explicación son Open in external browser (abre la vista Street View en el navegador de internet del equipo), Show web inspector for debugging (abre ventana mostrando un inspector del código fuente del complemento, bastante interesante para los que controlen mucho de esto) o About plugin (ventana con la Licencia y alguna info adicional como enlaces a la información de la API key y el espacio para introducir la nuestra).

Las tres opciones restantes (Take a panorama snapshot, Add info layer y Print keymap leaflet) las explicaremos en el siguiente vídeo, junto con una visión general de todo lo explicado. Creemos que merece la pena el esfuerzo de elaborarlo y que podáis ver de manera más clara y en acción las posibilidades de este magnifico complemento.

Esto es todo pues por hoy. Esperamos que os haya parecido digno de compartir, tan impresionante como a nosotros y podáis sacarle mucha utilidad en vuestros trabajos. Gracias a sus creadores y un saludo.
Notas:
- El complemento funciona también teóricamente con imágenes Bing, pero no lo hemos investigado a fondo al parecernos más complicado y nos hemos conformado con enlazarlo a la API de Google.
- En nuestras pruebas hemos tenido pequeños fallos de Python con el complemento, aunque en la realidad parecían no afectar demasiado a su funcionamiento más allá del aviso.
- También algo de lentitud en alguna de sus opciones, que se mostraban algo erráticas y aleatorias en su funcionamiento según el momento y sin aparente lógica. En cualquier caso todo ello muy disculpable en comparación con las estupendas funcionalidades que nos ofrece.

jueves, 7 de septiembre de 2017

Cartografía Catastral en QGIS.

Hace ya muchos meses hablamos en el blog del nuevo portal que el Catastro había inaugurado de acuerdo a las directivas europeas INSPIRE. Por aquel entonces mostramos la manera de descargar los diferentes datos que se ofrecen, así como algunos ejemplos de uso en un artículo cuya lectura os recomiendo para refrescar información y resituarnos.
Hoy vamos a mostraros la manera de acceder a dichos datos directamente desde QGIS, nuestro software GIS de escritorio favorito, a través de un complemento elaborado por los chicos de SIGdeletras. El complemento en cuestión lleva por nombre Spanish Inspire Catastral Downloader y procederemos a instalarlo de la manera habitual desde el gestor de QGIS.
Instalado el complemento se nos crea también el icono correspondiente en la barra de botones.
Como ya contamos en el artículo sobre el portal del Catastro que os he mencionado, son tres los conjuntos de datos disponibles para descarga: parcela catastral, direcciones y edificios. Ejecutamos el plugin:
Y obligatoriamente deberemos completar los datos de la provincia y municipio a descargar. También seleccionaremos una ruta a la carpeta de descarga de los datos, y aquellas capas que queramos conseguir. Por último podemos marcar la opción de que se carguen automáticamente en el lienzo de QGIS.
Gestor de descarga preparado para obtener los datos. Pulsamos Ejecutar.
Spanish Inspire Catastral Downloader comienza a hacer las peticiones de datos al servidor del Catastro, descargando aquellos datos seleccionados en formato GML dentro de una nueva carpeta con el nombre del municipio y código postal.
El plugin nos descarga las tres capas de datos disponibles agrupadas en zip pero también nos las
descomprime directamente en la raíz de la carpeta para un uso inmediato.
Tal y como le hemos ordenado podemos también elegir los datos que quedan cargados en el lienzo de QGIS, estructurados por capas y listos para su uso.
Tabla de atributos de la capa Edificios descargada del portal del Catastro.
En definitiva, un complemento que nos facilita enormemente el acceso a los datos catastrales, cargándolos directamente en nuestro programa de trabajo y ahorrando pasos innecesarios. Gracias de nuevo a sus creadores. Saludos.