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.

P.D: El complemento ha sufrido una pequeña actualización (2023) por lo que dejamos también un vídeo corto de muestra.


lunes, 4 de septiembre de 2017

De QGIS a Google Earth y viceversa: GEarthView.

Comenzamos nuevo curso en septiembre retomando el uso de QGIS con una de las utilidades que nos ha resultado muy práctica e interesante. Se trata de GEarthView, un magnífico compañero cuando tenemos necesidad de combinar el trabajo en QGIS con la visión de los elementos sobre el terreno en el archiconocido Google Earth. El complemento muestra los elementos vectoriales de la vista del lienzo de QGIS sobre la superficie terrestre de Google Earth, incluida la información de los atributos (para la capa activa).
Al instalar el complemento desde el gestor se nos crea el icono correspondiente en la barra de botones de QGIS.
En la web repositorio del complemento tenéis información adicional e incluso unos enlaces a vídeos en YouTube mostrando su funcionamiento y posibilidades (y a los que no vendría mal un poco de edición). Obviamente para utilizar el complemento GEarthView necesitamos tener instalado previamente Google Earth en nuestro PC.
Vamos a practicar un poco con el complemento y os vamos mostrando algunas rutinas de su funcionamiento. Lo primero es cargar un par de archivos vectoriales en QGIS, en este caso una capa de ríos y otra de edificios.
Ambas capas abiertas en QGIS y capa edificios activa en el árbol de capas.
Una vez encuadrada la vista que nos interese, pulsamos en el icono del complemento sobre la opción GEarthView.
El complemento arrancará Google Earth (podemos tenerlo previamente abierto en nuestro PC para acelerar el proceso) y nos ubicará la vista del planeta sobre la superficie representada en QGIS.
A la izquierda destacado en amarillo todos los elementos añadidos por el plugin a los temporales de Google Earth. Se muestran ambas capas (ríos y edificios) y con su simbología correcta, pero al ser la capa edificios la activa, es sólo ésta la que se añade como vector físicamente a la lista y sobre la que podremos hacer consulta de atributos.
Este sencillo proceso ya es de enorme utilidad: la combinación paralela de los dos softwares nos ofrece una vista automática de cualquier modificación o evolución de nuestros vectores, teniendo siempre sobre el terreno real (y en tres dimensiones) una percepción espacial de gran realismo. Pero GEarthView es mucho más.


Como hemos visto, al activar el plugin desde QGIS se nos crean una serie de elementos en el árbol de lugares temporales de Google Earth. En la imagen detalle de la derecha los mostramos expandidos y claramente diferenciados:


- QGIS_link. El enlace de red que activa o desactiva la comunicación directa entre QGIS y Google Earth, y la de todas las funciones siguientes. Digamos que es el interruptor general del plugin.

- Functions. Engloba las tres funciones disponibles del plugin, no activables simultáneamente. Move QGIS hace que la vista de Google Earth se actualice y sincronice automáticamente en la vista QGIS. Show Point muestra en Google Earth un punto de referencia sobre el terreno. Y Add Point QGIS añade la ubicación de dicho punto como un punto nuevo en el escritorio de QGIS.

- QGisView. Activa o desactiva los elementos visibles en QGIS con su simbología en la vista de Google Earth.

- Capa física de vectores con todos sus elementos individualizados, en este caso A_Edificios_0007 al ser la capa que tenemos activa en la vista QGIS,


Creemos que explicar de manera amigable e intuitiva la utilidad de dichas funciones a base de pantallazos podría derivar en un artículo, amén de demasiado largo, probablemente ineficaz en mostrar con claridad las posibilidades. Hemos elaborado uno de nuestros vídeos esperando que el resultado sea algo más didáctico y entretenido.
Os dejamos con él:

En definitiva os hemos mostrado una manera directa y cómoda de trabajar con QGIS y Google Earth de forma paralela e interconectada. Realmente creemos que todo ello podría hacerse igualmente en QGIS digitalizando sobre las imágenes Google, pero GEarthView aporta algunas ventajas relevantes como la inmediatez en el visionado de las digitalizaciones, la posibilidad de comprobar sobre un terreno global y en 3D el resultado de nuestro trabajo o la capacidad de interactuar con todos los datos ya disponibles en un software, el de Google, de ya larga tradición, recorrido y calado entre la comunidad de usuarios de cartografía.
Como siempre de vuestras necesidades o imaginación depende ya el sacarle mayor o menor provecho a estas geniales herramientas que los usuarios ponen a disposición de todos los usuarios QGIS en forma de complementos, y que desde Cartografía Digital no dejamos de agradecer. Saludos.