Bandeau haut

Outils pour utilisateurs

Outils du site


fonctions:automatisation:raster

Tutoriel QGIS Mise en place d’une action

I – Création d’une grille

1- Charger le plugin « Image Boundary » (Qui s’affichera sur la barre d’outils une fois installé)

Sélectionner le type de format ici .tif pour nos SCAN 25 (ou tout autre formats ECW, JP2) et cliquer sur .

-Sélectionner le répertoire ou sont stockées les dalles : les noms des dalles s’afficheront.

-Par défaut laisser la case EXTENT cochée et cliquer ensuite sur le bouton Process images.

-Enfin, cliquer sur le bouton Create Vector Grid Layer.

-Le processus se met en route et créer une grille raster qu’il faudra enregistrer au format SHP.


2- Ouvrir la table attributaire : pour observer son contenu

Les champs Image (contenant le nom des dalles) et Path (contenant le chemin des dalles) sont ceux qu’il faudra utiliser pour le SCRIPT qui permettra l’ouverture des images.

II – Ajouter une action

Aller dans Propriété (clic droit propriété de la couche). Cliquer sur l’onglet ACTION. C’est ici qu’il faut rajouter le script en python.

1- Pour l’ouverture de la Dalle :

  • Dans Action ajouter le SCRIPT suivant :

import os

      chemin=os.path.dirname(unicode( qgis.utils.iface.activeLayer().dataProvider().dataSourceUri() ) )
      fic= chemin +"\\IMAGES\\"+ "[% "IMAGE" %]"
      layer = qgis.utils.iface.activeLayer()
      qgis.utils.iface.addRasterLayer(fic,"[% "IMAGE" %]")
      qgis.utils.iface.setActiveLayer(layer)
   
   
*       Dans la case Nom donner un nom à cette action ici « ouvrir dalle »
*       Dans Type d’action sélectionner Python
*       Cliquer sur le bouton Ajouter l’action à la liste
*       Sauvegarder le style en cliquant sur le bouton Enregistrer le style --> fichier
        de style de couche qgis.
*       Aller dans le répertoire de votre choix et donner un nom à ce style
        (Généralement le même que la couche à laquelle elle se rapporte (.qml).
*       Puis cliquer sur Ok.

2- Pour la fermeture de la dalle :

  • Dans Action ajouter le SCRIPT suivant :

nomCouche = str(“[% “Image” %]”)

  instRegistry = QgsMapLayerRegistry.instance()
  couche = instRegistry.mapLayersByName(nomCouche)
  if len(couche) > 0:
  instRegistry.removeMapLayer(couche[0].id())
  
* Dans la case Nom, donner un nom « fermeture dalle »
* Dans Type d’action sélectionner Python
* Cliquer sur le bouton Ajouter l’action à la liste
* Sauvegarder le style en cliquant sur le bouton Enregistrer le style --> fichier
  de style de couche qgis.
* Aller dans le répertoire de votre choix et donner un nom à ce style
 (Généralement le même que la couche à laquelle elle se rapporte (.qml).
* Puis cliquer sur Ok.

3- Les boutons deviennent alors actifs sur la grille.

- Aller sur la barre d’outils, cliquer sur le bouton

- Faire un clic droit sur une case de la grille puis Ouvrir Dalle.

Keltoum Tali 04/11/2015 23:19

fonctions/automatisation/raster.txt · Dernière modification : //04/11/2015 23:25// de keltoum

Bandeau bas