lunes, 11 de febrero de 2019

Caso práctico QGIS: acciones.

Las acciones de QGIS nos permiten añadir muchas funcionalidades extra a nuestros mapas, permitiendo por ejemplo obtener información visual de un objeto o enlazarlo con diverso contenido web. Por resumirlo con claridad, una acción es algo que ocurre cuando pinchamos en un elemento.

Para un primer ejemplo vamos a utilizar imágenes, de forma que al clicar sobre los elementos de nuestro mapa se nos muestre la imagen que hayamos predefinido en sus propiedades. Para este caso práctico vamos a utilizar el archivo de una hoja BTN25 (entidades de población-polígonos). Comenzamos:
Archivo con entidades de población para este caso práctico cargado en QGIS.
1.- Crear el campo para las imágenes.
Lo primero que necesitamos es que la tabla de atributos de nuestro elemento contenga el campo necesario para asociar las imágenes. Seleccionamos nuestra capa de entidades de población y entramos en sus Propiedades (doble click o click derecho sobre ella y Propiedades), y dentro de ellas en la pestaña Campos.

Activamos la edición de la capa (1), pulsamos crear nuevo campo (2) y lo rellenamos con las características (3) que veis en la siguiente secuencia:
Aceptamos y nuestro nuevo campo de nombre IMAGEN queda añadido a la tabla de atributos de nuestra capa de entidades de población. 
El siguiente paso no sería necesario pues podemos añadir la ruta a la imagen directamente en el campo, pero seguimos los consejos de nuestro artículo guía de mappingGIS, ya que de esta forma es más elegante y nos permite mayor control de las opciones.
A continuación vamos a la pestaña Formulario de atributos y seleccionamos nuestro nuevo atributo IMAGEN:
En Tipo de control seleccionamos Adjunto y marcamos la casilla Usar un hiperenlace para la ruta de documentos (esto nos genera un link clicable en la ruta del archivo). Podemos activar Mostrar la ruta completa (en el link a la imagen) y Integrated Document Viewer en Tipo: Imagen si queremos tener un thumbnail de la imagen.
Aplicamos y aceptamos.
2.- Vincular la imagen al elemento. 
Sin salir del modo edición utilizamos la herramienta Identificar objetos espaciales para hacer click en aquel al que deseamos vincular la imagen. En nuestro ejemplo el pueblo de San Martín del Castañar.
Al estar en modo edición tenemos activo el botón para buscar la ruta a nuestra fotografía en el campo IMAGEN (círculo rojo).



Tras buscar la ruta al destino de la fotografía seleccionada, nuestra ventana de atributos nos muestra en el campo IMAGEN el texto con el nombre de la imagen (que además es un hiperlink que ya por sí mismo nos abre la imagen en  nuestro visor de imágenes por defecto) y una miniatura de la misma adaptable al tamaño de la ventana.

Aceptamos y repetimos el mismo proceso con todas las imágenes que necesitemos vincular con cada elemento vectorial.

Una vez terminado guardamos los cambios y salimos del modo edición.







3.- Creando la acción.
De nuevo abrimos las Propiedades de la capa para entrar en la pestaña Acciones. Procedemos según esta secuencia:
1.- Pulsamos el botón + para añadir una nueva acción. 2.- En la ventana completamos campos: en Tipo seleccionamos Abrir, en Descripción añadimos el texto descriptivo de la acción, y en la ventana de texto de la acción debemos insertar el texto [%IMAGEN%]. Esto puede hacerse manualmente o buscando el atributo IMAGEN en la pestaña de campos y pulsando el botón Insertar.
Cuando esté todo listo aceptamos y la acción creada aparece en la ventana de la lista de acciones.
Aplicamos y aceptamos.
4.- Ejecutando la acción.
Con nuestra capa de entidades de población activa clicamos el botón de acciones y seleccionamos la acción que acabamos de crear "Mostrar imagen".
Si hubiera más acciones disponibles aparecerían en la lista desplegable como veremos más adelante.
El cursor cambia a una cruz y hacemos click sobre el elemento en cuestión:
Nuestro visor de imágenes por defecto (en mi caso XnView) nos muestra la imagen enlazada al elemento.
Conseguido. Este es el proceso básico de añadir una acción explicado al detalle. En base a él podemos añadir muchos tipos de acciones, algunas válidas para todos los elementos de la capa y sin necesidad de crear campos específicos, como por ejemplo Buscar en la web por valor de un atributo.

En la imagen de la izquierda vemos la configuración de la acción, en la que aprovecharemos como elemento de búsqueda el atributo ETIQUETA de nuestra capa de entidades de población, ya que es el que contiene el nombre de los pueblos y por tanto el ideal para una búsqueda en Google.

Una vez añadida la acción nos aparecerá para elegirla en el desplegable del botón de acciones.








Usando la acción en tres entidades diferentes cada una nos abre una ventana del explorador con la búsqueda de Google.

Ejemplo de acción "Abrir archivo" con un PDF enlazado al polígono de San Martín del Castañar.
Acciones hay muchas y puede haber las que os dicte vuestra imaginación o los conocimientos de códigos para crearlas. En la ventana de acciones están disponibles unas cuantas predeterminadas con las que podemos empezar a hacer nuestros pinitos. Y a partir de ahí es cuestión de maña enriquecer nuestros proyectos con este montón de posibilidades paralelas que nos dan las acciones. Saludos.
Abriendo directamente la búsqueda en la web de Wikipedia por el atributo ETIQUETA del elemento (nombre el pueblo).

5 comentarios:

  1. Disculpas y gracias.


    Ud. publicó la entrada en febrero… Desde entonces tenía el acceso directo en el Escritorio para leer el artículo. Hoy, casi en San Fermín, he tenido la ocasión de leerlo; y lo volveré a leer con mucho más detenimiento porque es un tema que me interesa sobremanera, sobre todo para ponerlo en práctica si mis superiores lo ven correcto.

    Así que, por un lado, le pido disculpas por mi tardanza y, por otro, le agradezco que se tomara su tiempo para preparar el artículo. De verdad: gracias.

    Saludos,

    ResponderEliminar
  2. Gracias por explicarlo con tanto detalle

    Solo hacerte un comentario, si genero un webmap con una capa de puntos donde haya definido acciones, ¿estas acciones funcionaran en ese mapa?

    Un saludo

    ResponderEliminar
    Respuestas
    1. Bueno, no lo he probado pero creo que dependerá de la herramienta que uses para generar los archivos HTML web... los atributos de las acciones pueden servir para una clásica ventana pop-up de la web con info, pero todo dependerá de que la herramienta usada para generar el webmap lo escriba correctamente. Saludos.

      Eliminar
  3. Hola,
    ¿Se puede crear una sola acción que abra varias fotografías y se vean seguidas en el explorador de fotos predeterminado? Estaría genial para no tener que hacer una acción para cada foto que tengas georreferenciada.
    Muchas gracias.
    Un saludo

    ResponderEliminar
    Respuestas
    1. Imagino que con conocimientos suficientes de código se podrá... pero a mi me supera el asunto. Saludos!

      Eliminar