12.1. Lesson: Configuration de GRASS
L’utilisation de GRASS dans QGIS vous oblige à penser l’interface d’une manière légèrement différente. Rappelez-vous que vous ne travaillez pas directement dans QGIS, mais que vous travaillez dans GRASS via QGIS. Par conséquent, assurez-vous que vous avez installé QGIS Desktop avec le support de Grass.
Pour ouvrir une session QGIS avec GRASS disponible sur Windows, vous devez cliquer sur l’icône « Bureau QGIS avec GRASS ».
Le but de cette leçon : commencer un projet GRASS dans QGIS.
12.1.1. Follow Along: Start a New GRASS Session
Pour lancer GRASS à partir de QGIS, vous devez l’activer comme pour tout autre extension :
Tout d’abord, ouvrir un nouveau projet QGIS.
Dans le Gestionnaire d’extension, activez GRASS dans la liste :
La barre d’outils GRASS et le panneau GRASS apparaîtront :
Le panneau GRASS n’est pas actif car, avant de pouvoir utiliser GRASS, vous devez créer un « MapSet ». GRASS fonctionne toujours dans un environnement de base de données, ce qui signifie que vous devez importer toutes les données que vous voulez utiliser dans une base de données GRASS.
La base de données GRASS a une structure simple, même si à première vue elle semble très compliquée. La chose la plus importante que vous devez savoir est que le niveau supérieur de la base de données est la « localisation ». Chaque « Localisation » peut contenir différents « Mapset » : dans tous les « Mapset », vous trouverez le « Mapset PERMANENT » car il est créé par défaut par GRASS. Chaque « Mapset » contient les données (raster, vecteur, etc) d’une structure particulière, mais ne vous inquiétez pas, GRASS s’en chargera pour vous.
Rappelez-vous simplement : Location
contient Mapset
qui contient les données. Pour plus d’informations, visitez le site web de GRASS.
12.1.2. Follow Along: Démarrer un nouveau projet GRASS
Cliquez sur le menu
:Il vous sera demandé de choisir l’emplacement de la base de données GRASS.
Définissez le dossier qui sera utilisé par GRASS pour y placer sa base de donnée :
Cliquez sur Suivant
GRASS doit créer une « Localisation », qui décrit l’étendue maximale de la zone géographique dans laquelle vous travaillerez, aussi appelée « Région ».
Note
la Région est extrêmement importante pour GRASS car elle décrit la zone dans laquelle toutes les couches seront prises en compte pour GRASS. Tout ce qui est à l’extérieur ne sera pas pris en compte. Ne vous inquiétez pas, vous pouvez toujours modifier l’étendue de la Région GRASS après la création du Secteur
Appelez le nouveau lieu « Afrique du Sud » :
Cliquez sur Suivant
Nous allons travailler avec « TPS 84 », alors cherchez et sélectionnez ce CRS :
Cliquez sur Suivant
Maintenant, sélectionnez la région Afrique du Sud depuis la liste déroulante et cliquez sur Définir :
Cliquez sur Suivant
Créez un jeu de donnée, qui est le fichier sur lequel vous allez travailler.
Une fois que vous avez terminé, vous verrez un dialogue vous demandant un résumé de toutes les informations saisies.
Cliquez sur Terminer.
Cliquez sur OK dans la fenêtre de succès.
Vous verrez que le panneau GRASS deviendra actif et que vous pourrez commencer à utiliser tous les outils GRASS.
12.1.3. Follow Along: Chargement des données vecteur dans GRASS
Vous avez maintenant une carte vierge et avant de pouvoir commencer à utiliser tous les outils GRASS, vous devez charger les données dans la base de données GRASS, plus précisément dans le « MapSet ». Vous ne pouvez pas utiliser les outils GRASS avec des couches qui ne sont pas chargées dans un « MapSet » GRASS.
Il existe de nombreuses façons différentes de charger des données dans la base de données GRASS. Commençons par la première.
Follow Along: Load data using the QGIS Browser
Dans la section Le panneau de recherche nous avons vu que la façon la plus simple et la plus rapide de charger les données dans le QGIS est le panneau Browser.
Les données GRASS sont reconnues par le navigateur QGIS comme des données GRASS réelles et vous pouvez le remarquer car vous verrez l’icône GRASS à côté du jeu de cartes GRASS. De plus, vous verrez l’icône à côté du Mapset qui est ouvert.
Note
Vous verrez une réplique de l’emplacement GRASS comme un dossier normal : Les données « MapSet » de GRASS sont celles qui se trouvent dans le dossier
Vous pouvez facilement glisser et déposer des couches d’un dossier vers le GRASS Mapset.
Essayons d’importer la couche roads
dans le jeu de cartes grass_mapset
de la localisation SouthAfrica
.
Allez dans le navigateur, et faites simplement glisser la couche roads
du fichier training_data.gpkg
GeoPackage dans le jeu de cartes grass_mapset
.
C’est tout ! Si vous développez le Mapset, vous verrez la couche roads
importée. Vous pouvez maintenant charger dans QGIS la couche importée comme toutes les autres couches.
Astuce
Vous pouvez également charger des couches du panneau Légende des couches vers le jeu de cartes dans le panneau Navigateur. Cela accélérera incroyablement votre flux de travail !
Follow Along: Load data using the GRASS Panel
Nous allons maintenant utiliser la méthode long pour charger la couche rivers.shp
dans le même Mapset.
Chargez les données dans le QGIS comme d’habitude. Utilisez l’ensemble de données
rivers.shp
(qui se trouve dans le dossierexercise_data/shapefile/
)Dès qu’il est chargé, cliquez sur la case Filtre du
panneau GRASS
et trouvez l’outil d’importation de vecteurs en entrant le termev.in.ogr.qgis
:Avertissement
Il existe deux outils similaires : « v.in.ogr.qgis » et « v.in.ogr.qgis.loc ». Nous recherchons le premier.
Le
v
signifie vecteur,in
signifie une fonction pour importer des données dans la base de données GRASS,ogr
est la bibliothèque logicielle utilisée pour lire les données vectorielles, etqgis
signifie que l’outil va chercher un vecteur parmi les vecteurs déjà chargés dans QGIS.Une fois que vous avez trouvé cet outil, cliquez dessus pour faire apparaître l’outil lui-même. Choisissez la couche rivers dans la case Charger couche et tapez et nommez le
g_rivers
pour éviter toute confusion :Note
Notez les options supplémentaires d’import fournies dans Options avancées. Cela inclut la possibilité d’ajouter une clause WHERE pour la requête SQL utilisée lors de l’import de donnée.
Cliquez sur Exécuter pour commencer l’import.
Une fois fait, cliquez sur le bouton Voir le résultat pour voir la nouvelle couche GRASS importée dans la carte.
Fermez d’abord l’outil d’import (cliquez sur le bouton Fermer juste à droite de Voir le résultat), puis fermez la fenêtre Outils GRASS.
Supprimez la couche originale rivers.
Vous ne disposez désormais plus que de la couche GRASS affichée dans la carte QGIS.
12.1.4. Follow Along: Chargement des données Raster dans GRASS
Vous pouvez importer une couche raster de la même manière que nous avons importé des couches vectorielles.
Nous allons importer dans le jeu de cartes GRASS la couche srtm_41_19_4326.tif
.
Note
la couche raster est déjà dans le bon CRS, « TPS 84 ». Si vous avez des couches dans des CRS différents, vous devez les reprojeter dans le même CRS du jeu de cartes GRASS
Charger la couche
srtm_41_19_4326.tif
dans QGISOuvrez à nouveau les Outils GRASS.
Cliquez sur l’onglet Liste des modules.
Recherchez « r.in.gdal.qgis » et double-cliquez sur l’outil pour ouvrir la boîte de dialogue de l’outil.
Configurez-le de sorte que la couche d’entrée soit
srtm_41_19_4326.tif
et la sortie soitg_dem
.Cliquez sur Exécuter.
Une fois l’opération réussie, cliquez sur Voir le résultat.
Vous pouvez Fermer l’onglet actuel puis cliquez dans la boîte de dialogue suivante sur Fermer.
Vous pouvez maintenant supprimer la couche
srtm_41_19_4326.tif
originale.
12.1.5. Try Yourself Add Layers to Mapset
Essayez d’importer dans le jeu de cartes GRASS les couches vecteur water.shp
et places.shp
du dossier exercise_data/shapefile/
. Comme nous l’avons fait pour rivers
, renommez la couche importée en g_water
et g_places
pour éviter toute confusion
Réponse
Vous pouvez ajouter des couches (raster et vecteur) dans le Mapset de GRASS via glisser-déposer à partir de l’explorateur (voir Follow Along: Load data using the QGIS Browser) ou en utilisant les commandes v.in.gdal.qgis
pour les couches vectorielles et r.in.gdal.qgis
pour les rasters.
12.1.6. Open an existing GRASS Mapset
Si vous avez un jeu de cartes GRASS existant, vous pouvez facilement le rouvrir dans une autre session de QGIS.
Vous avez plusieurs méthodes pour ouvrir une carte GRASS, nous allons en explorer quelques-unes.
Fermons le Mapset en cliquant sur le bouton Close Mapset de la fenêtre GRASS Tools.
Follow Along: Using the GRASS plugin
Cliquez sur le menu
à côté du menu que nous avons vu dans la section précédente.Naviguez vers le dossier de la base de données GRASS : soyez prudent ! Vous devez choisir le dossier parent, et non celui de GRASS Mapset. En effet, GRASS lira toutes les « Locations » de la base de données et tous les « Mapset » de chaque « Localisation » :
Choisissez le « Lieu » (guilabel:SouthAfrica) et le « Mapset » (guilabel:”grass_mapset”) que nous avons créés auparavant.
C’est tout ! Le panneau GRASS devient actif, ce qui signifie que le mapset a été correctement ouvert.
Follow Along: Using the QGIS Browser
L’ouverture d’un « mapset » à l’aide du navigateur QGIS est encore plus rapide et plus facile :
Fermez le Mapset (s’il est ouvert) en cliquant sur le bouton Close Mapset de la fenêtre GRASS Tools.
Dans le navigateur QGIS, naviguez jusqu’au dossier de la base de données GRASS.
Cliquez avec le bouton droit de la souris sur le mapset (rappelez-vous que le jeu de cartes comporte l’icône GRASS à côté). Vous verrez quelques options.
Cliquez sur Open mapset :
Le Mapset est maintenant ouvert et prêt à être utilisé !
Astuce
Un clic droit sur un jeu de cartes GRASS vous offre de nombreux paramètres différents. Essayez de les explorer et de voir toutes les options utiles.
12.1.7. In Conclusion
La méthode de travail de GRASS pour la gestion des données est quelque peu différente de celle de QGIS car GRASS les charge dans une base de donnée à structure spatiale. Toutefois, en utilisant QGIS comme interface, vous pouvez rendre plus facile la création d’un jeu de donnée GRASS grâce aux couches QGIS comme sources de données pour GRASS.
12.1.8. What’s Next?
Maintenant que les données sont importées dans GRASS, nous pouvons nous intéresser aux opérations d’analyses plus évoluées que nous permet GRASS.