exercice 13 - utiliser les actions dans QGIS
Découvrir et utiliser des actions courantes dans QGIS
Objectif : mettre en œuvre quelques actions dans QGIS sur deux couches vectorielles
Question
Créer une nouvelle carte avec les couches COMMUNE et ROUTE de la BD TOPO.
Les actions suivantes doivent être mises en oeuvre :
sur les deux couches, ouvrir une application externe : PhotoFiltre (qui doit être disponible sur tous les postes de travail, sinon en trouver une autre ...) ;
sur la couche COMMUNES, ouvrir un document pré-existant dans une application externe : ces documents sont de type PDF, ils sont dénommés nom_de_la_commune.pdf et disponibles dans le répertoire COMMUNES_WIKI de votre répertoire de travail _COUCHES_FOAD : vérifier l'ouverture effective du fichier PDF concernant la commune en cliquant à l'intérieur de chacune d'entre elles ;
sur la couche COMMUNES, ouvrir une page web à partir du nom de la commune et envoyant sur l'article de wikipedia (site http://fr.wikipedia.fr) concernant cette commune (aller vérifier au préalable sur le site comment est composée l'URL renvoyant vers l'article d'une commune).
sur la couche ROUTE, afficher la valeur d'un champ d'une couche active pour le champ NATURE ;
sur la couche ROUTE, afficher les coordonnées X et Y d'un point : afficher les coordonnées du point se trouvant à l'intersection de la route D323 et les limites des communes de La Flèche et de Clermont-Créans (faire une copie d'écran de la fenêtre résultat)
Indice
Pour rajouter une action :
sélectionner la couche concernée dans le gestionnaire de couche ;
ouvrir la fenêtre des propriétés de la couche et sélectionner l'onglet "Actions".
Il est possible de :
créer une action à partir de zéro dans la partie inférieure de la fenêtre ;
ou de "Créer les actions par défaut" en cliquant sur le bouton situé à droite sous la partie supérieure.
Il est conseillé d'utiliser cette seconde solution qui permet de disposer ainsi de plusieurs modèles d'action.
Solution
Rajouter une action
Solution : Créer la nouvelle carte (nouveau projet) en ouvrant les deux couches suivantes de la BD TOPO :
ROUTE.SHP (répertoire A_RESEAU_ROUTIER)
COMMUNE.SHP (répertoire H_ADMINISTRATIF)
Pour rajouter une action :
sélectionner la couche concernée dans le gestionnaire de couche ;
ouvrir la fenêtre des propriétés de la couche et sélectionner l'onglet "Actions".
Il est possible de :
créer une action à partir de zéro dans la partie inférieure de la fenêtre ;
ou de "Ajouter les actions par défaut" en cliquant sur le bouton situé à droite sous la partie supérieure.
Il est conseillé d'utiliser cette seconde solution qui permet de disposer ainsi de plusieurs modèles d'action.
Pour déclencher l'action, lorsqu'elle a été créée :
sélectionner la couche dans le gestionnaire de couches ;
utiliser le bouton "Exécuter les actions de l'entité".
Il est également possible de passer par la commande "Identifier les entités " (bouton "i") et sa fenêtre "Identifier les résultats" : section Actions.
Attention :
Ne pas oublier de valider l'action lorsque l'on vient de la créer ou de la modifier : Ajouter l'action à la liste et surtout Mettre à jour l'action. Cliquer sur OK ou Apply en bas de la fenêtre n'est pas suffisant : il faut s'assurer que l'intitulé de l'action en partie supérieure a bien été pris en compte.
Ouvrir l'application externe PhotoFiltre (sur les deux couches COMMUNE et ROUTE)
Syntaxe de l'action à ajouter :
Type | Nom | Action et exemple |
Générique | Ouvrir l'application PhotoFiltre | "C:/Program Files/PhotoFiltre/PhotoFiltre.exe" |
Il est possible et recommandé d'utiliser l'explorateur de fichier (bouton ... situé à droite de la zone d'édition de l'action) pour aller chercher le fichier PhotoFiltre.exe sur son disque dur ;
ne pas oublier de rajouter des guillemets avant et après la description de l'action ;
pour déclencher l'action, ne pas oublier de cliquer sur une entité de la couche (sélectionner l'action dans la liste des actions n'est pas suffisant).
il faut effectuer cette action sur les deux couches (copier-coller ...)
Ouvrir le fichier PDF de la commune (sur la couche COMMUNE)
Syntaxe de l'action à ajouter :
Type | Nom | Action et exemple |
Ouvrir | Ouvrir le fichier PDF de la commune | "Mes Documents/Data_foad_qgis_perf/COMMUNES_WIKI/[% "NOM" %].PDF" |
En principe, tous les postes de travail sont paramétrés pour ouvrir les fichiers PDF avec l'application Acrobat Reader.
Vérifier l'ouverture effective du fichier PDF concernant la commune en cliquant à l'intérieur de chacune d'entre elles.
Pour trouver le nom exact du chemin d'accès au répertoire "Data_foad_qgis_perf", utiliser le bouton Parcourir les actions, situé à droite de la zone de saisie de l'action.
Ouvrir la page de la commune sur Wikipedia (sur la couche COMMUNE)
Syntaxe de l'action à ajouter :
Type | Nom | Action et exemple |
Ouvrir | Ouvrir la page de la commune sur Wikipedia | http://fr.wikipedia.org/wiki/[% "NOM" %] |
Sur le site de Wikipedia, on vérifie que la page de la commune est accessible à une adresse de type : http://fr.wikipedia.org/wiki/Ligron
Aussi peut-on lancer l'action avec :
http://fr.wikipedia.org/wiki/
suivi du nom du champ sélectionné dans la liste déroulante située sous la description de l'action ;
et en cliquant sur "Insérer un champ".
Afficher la valeur du champ NATURE (sur la couche ROUTE)
Syntaxe de l'action à ajouter :
Type | Nom | Action et exemple |
Python | Afficher la valeur du champ NATURE | QtWidgets.QMessageBox.information(None, "Identification", "[% NATURE %]") |
Afficher les coordonnées X et Y du point cliqué (sur la couche ROUTE)
Syntaxe de l'action à ajouter :
Type | Nom | Action et exemple |
Python | Afficher les coordonnées X et Y du point cliqué | QtGui.QMessageBox.information(None, "Coordonnees du clic", "coordonnees : ([% @click_x %],[% @clicky %])") |