retour aux mémos     retour au modèle     back to SimMasto home page   retour à la page d'accueil

Réalisation d'un clipping


Objectif : Extraire une partie d'un shapefile à partir d'une forme de découpe choisie par l'utilisateur.
Entrée : Un fichier shapefile
Sortie : Un fichier shapefile représentant un extrait du fichier en entrée avec une forme définie
Outils: QGIS

 Attention: si vous devez procéder à un changement de Système de référence de coordonnées sur votre shapefile, assurez vous de la faire avant d'effectuer le clipping, sinon votre zone de travail risque d'être déformée

Pour réaliser une capture d'un ensemble de données géographiques, il existe différentes manières de procéder. On peut récupérer le SIG dans son intégralité et procéder à une sélection en la programmant dans le simulateur grâce aux API, ou effectuer une découpe depuis un logiciel de SIG.

Dans le cadre de cette chaîne de traitement, nous allons utiliser une méthode de clipping détaillée pour QGIS mais dont le principe est identique sur plusieurs logiciels de traitement de SIG.

Installation d'un plugin de QGIS

         Dans les Plugins de QGIS, il faut d'abord installer FTOOLS, cette action est très rapide grâce au gestionnaire de Plugins:

         Il faut commencer par activer le Plugin de gestion de Plugin: dans le menu plugin cliquez sur  « Gestionnaire de plugin ».

G        Une fois activé, un élément «  récupération des extensions python... » apparaît dans le menu plugin. Il propose alors un certain nombre de modules téléchargeables.

         Plusieurs modules peuvent être utiles, mais celui qui nous intéresse s'appelle « ftools for QGIS 1,0 ».sélectionnez le puis cliquez sur « installer/mettre  à jour l'extension ». L'installation du Plugin se fait automatiquement, il faut ensuite l'activer en passant par le gestionnaire d'extensions.

G        Si ftools est correctement installé et  activé, Un  menu « Tools » doit apparaître.

Pour procéder au clipping, nous avons besoin d'un SIG à découper (celui dont on veut récupérer une partie) et d'une forme géométrique superposable au SIG. Cette forme va servir de filtre de découpe (il peut s'agir d'un fichier de formes géométriques simples ou un autre fichier shapefile). Le shapefile résultant du clipping possédera les polygones et les attributs du SIG, mais sa taille et ses contours seront ceux de la formes géométriques.

 

Figure 1: schéma explicatif du principe du clipping

 

Il existe deux façons de procéder pour créer la forme de découpe. Vous pouvez la créer vous même, en la dessinant, ou vous pouvez l'importer depuis un fichier de forme. Les deux manière de faire sont détaillées ci dessous.

Création de la forme de découpe « à la main » depuis QGIS:

Au moment de la création d'une couche il est nécessaire de lui donner au moins un champ avec un type de valeur.

Une fois le Plugin FTOOLS installé et le SIG de base (fichier shp) chargé, on va créer une nouvelle couche vide:

         cliquez sur « ajouter nouvelle couche » de type polygone

          Sélectionnez la couche nouvellement créée dans l'explorateur à gauche.

          Passez en mode édition

          Dans le menu « édition » sélectionnez «capturer le polygone »

G        On va « dessiner » la forme de découpe que l'on va appliquer sur la couche « SIG » , il est possible de dessiner un polygone directement avec la souris.

G        Cette solution permet des formes de découpe très libres. mais il n'est pas évident de créer  rapidement un rectangle régulier.

         Pour dessiner le polygone, il suffit de cliquer une fois sur le SIG pour commencer la sélection, puis de faire un clic gauche par sommet en terminant la série par un clic droit.

G        QGIS vous propose alors de renseigner les attributs du polygone créé. Cette action est facultative et ne nous sert pas dans notre cas puisque seule la forme du polygone nous intéresse.

G        Attention: Avant de réaliser le clipping , assurez vous que toutes les modifications sur les couches vectorielles soient enregistrées, tant que vous n'avez pas quitté le mode d'édition, la couche contenant la forme de découpe sera considérée comme vide et le clipping ne marchera pas.

Importer un fichier de formes

L'autre solution (si vous devez faire un certain nombre de clipping ou si vous avez besoin de coordonnées précises) est d'importer une forme existante depuis un fichier.

Pour faciliter la création de fichier de forme servant à la découpe, nous avons réalisé une mini-application (le code source (disponible dans le dossier des fichiers sources, fichier createur_carre_KML) qui va créer un fichier KML représentant un rectangle depuis un couple de coordonnées (angles supérieur droit et inférieur gauche).

         Lancer l’application

         relever les coordonnées en pointant le curseur sur deux endroits du SIG et de les utiliser pour créer un rectangle.

         Il faut ensuite importer le fichier kml généré comme une couche vectorielle. (bouton ‘ajouter une couche vecteur’)

G        Attention à ce que les coordonnées de la forme de découpe correspondent aux coordonnées du SIG et qu'elles soient dans le même format.

Application de la forme de découpe

Une fois que la forme de découpe est créée, on va utiliser une option de FTOOLS qui s'occupe de faire le découpage proprement dit du fichier shapefile.

          Dans le menu Tools, sélectionnez  « Geoprocessing tools » , puis « Clip ».

         Dans le champs « input vector layer », vous devez sélectionner la couche que vous voulez découper

         Dans le champs « clip layer », vous devez choisir la couche qui contient la forme de découpe.

         Pour finir vous devez sélectionner ou créer un fichier shapefile qui contiendra le résultat du clipping.

G        Une fois le clipping réalisé, vous pouvez visualiser le résultat en choisissant d'afficher la couche shp créée. Vous pouvez la mettre en évidence en désactivant l'affichage des autres couches grâce au panneau de gauche.


Mémo 12 - Auteur Q.Baduel, MAJ  07.01.13 par jlefur

retour aux mémos     retour au modèle     back to SimMasto home page   retour à la page d'accueil