X

QGIS : Calcul de surface

Vous voulez connaître la surface d’un objet géographique? Ou vous souhaitez automatiser l’ajout de l’aire d’un polygone dans la table attributaire? Le calcul de surface dans QGIS fait appel à la fonction area associée à la géométrie de l’objet géographique sélectionné. L’unité de la surface calculée par area dépend de la projection géographique utilisée dans QGIS. Si vous utilisez un Système de Coordonnées de Référence (SCR) projeté comme la projection Transverse universelle de Mercator (en anglais Universal Transverse Mercator ou UTM), l’unité de l’aire est le mètre carré. Par contre, le SCR World Geodetic System 1984 (WGS 84) dont l’ID est le EPSG:4326, donne des valeurs en degré carré. Aussi, ce tutoriel SIG montre comment transformer la projection géographique des géométries « à la volée » pour le calcul des surfaces.

Comment calculer l’aire d’un polygone dans QGIS?

Le vecteur doit disposer d’un champ attributaire de type numérique afin d’ajouter les valeurs des aires calculées. Deux solutions sont possibles :

  1. Vous pouvez créer une couche SIG de type polygone dans QGIS. L’ajout du champ attributaire destiné à la surface se réalise lors de la création.
  2. Vous disposez déjà d’un vecteur. Si ce dernier n’a pas de champ attributaire pour la surface alors vous l’ajoutez à l’aide de la calculatrice de champ.

Dans cet exemple, on créé un shapefile de type polygone avec la projection WGS 84. La table attributaire du vecteur comporte un identifiant et un champ nommé surface. Ce champ attributaire est de type nombre décimal avec une précision de 6 décimaux.

Figure 1 : Création d’un shapefile de type polygone dans QGIS.

Puis, on ajoute des objets géographiques au vecteur à partir du mode édition.

Figure 2 : Géométries polygonales et leurs attributs dans QGIS.

Le calcul des valeurs attributaires du champ surface s’effectue à l’aide de la calculatrice de champ QGIS .

Comment fonctionne la calculatrice de champ QGIS pour calculer la surface d’un polygone?

La calculatrice de champ permet de:

  1. Créer un nouveau champ comme lors de la création du vecteur;
  2. Ou, mettre à jour un champ existant. Cette solution est conforme à notre exemple pour mettre à jour le champ attributaire surface. Vous pouvez modifier seulement les entités géographiques sélectionnées.

La calculatrice de champ QGIS met à disposition une liste de fonctions comme les fonctions de chaînes de caractères, les champs et valeurs, les dates et heures, les fonctions liées à géométrie, etc. Le calcul de la surface de la géométrie est la fonction $area comme le montre la figure 3 ci-après. Dans notre exemple, le vecteur est en projection WGS 84 et donc les valeurs de la surface sont en degrés carrés. Alors, comment calculer la surface des polygones en hectare dans QGIS?

Figure 3 : Calcul de la surface des polygones avec la calculatrice de champ QGIS.

Si vous ne souhaitez pas enregistrer le vecteur dans une nouveau SCR projeté comme le Lambert 93 (EPSG:2154), il est possible de transformer la projection des géométries dans la calculatrice des champs. Pour cela, on utilise la fonction de géométrie transform qui reprojette la géométrie ($geometry) du SCR d’origine vers le SCR cible. Puis, la fonction area est associée à la géométrie transformée. Enfin, on divise la surface du polygone par 10000 pour passer des mètres carrés en hectare. L’expression du calcul de surface en hectare avec la transformation de la projection des géométries est mise en évidence ci-après:

 area(transform( $geometry ,'EPSG:4326','EPSG:2154')) / 10000
Figure 4 : Expression du calcul de surface en hectare avec la transformation de la projection des géométries.

Comment calculer une longueur sur QGIS ? Pour un vecteur de type Ligne, vous réalisez la même manipulation avec la fonction de géométrie $length dans la calculatrice de champ.

QGIS : Somme des surfaces

Vous souhaitez connaître la surface totale des géométries du vecteur. Alors, comment additionner des surfaces sur QGIS ? Plusieurs solutions sont disponibles dans le logiciel SIG.

1. La création d’un nouveau champ se base sur la fonction d’agrégats sum associée au champ attributaire surface (figure 5). Les valeurs du nouveau champ de type décimal sont logiquement identiques pour toutes les entités géographiques sélectionnées.

Figure 5 : Somme des surfaces des polygones dans QGIS.

2. L’outil Statistiques de QGIS calcule des indicateurs basiques liés aux valeurs attributaires du vecteur considéré.

Figure 6 : Somme des surfaces des géométries par l’outil Statistiques de QGIS.

Calcul automatique de la surface d’un objet géographique dans QGIS

Cette section vise à mettre en place le calcul automatique de la surface d’un objet géographique dans la table attributaire du vecteur. Pour cela, on suit le même procédé décrit pour ajouter automatiquement les coordonnées géographiques dans QGIS.

Dans les propriétés de couche, on sélectionne l’onglet Formulaire d’attributs (figure 7). Puis, la génération automatique est utilisée pour contrôler le champ attributaire surface. La valeur par défaut correspond à l’expression du calcul de surface des géométries -vue précédemment- selon la projection du vecteur. On applique la valeur par défaut pour la mise à jour.

Figure 7 : Calcul automatique de la surface d’un objet géographique dans QGIS.

Désormais, chaque nouvelle entité ou modification d’entité génère automatiquement le calcul des surfaces des polygones. Ainsi, vous testez la génération automatique des valeurs attributaires par :

  1. L’ajout d’une nouvelle entité géométrique à partir du mode édition : Éditer > Ajouter une entité polygonale;
  2. La modification d’une géométrie existante en séparant l’entité par exemple: Éditer > Éditer les géométries > Séparer les entités. L’intersection du trait dessiné avec l’entité vectorielle définit les nouveaux objets géographiques.

En conclusion, ce tutoriel SIG nous a montré comment calculer la surface des polygones d’un vecteur dans QGIS. La projection géographique affectée aux objets géographiques définit l’unité de l’aire calculée comme une surface en mètre carré. Enfin, l’ajout automatique des aires calculées dans la table attributaire du vecteur fait appel à la modification du formulaire d’attributs.

Florian Delahaye: Passionné de Géomatique
Related Post