1.5 Création et édition de couches vectorielles

1.5.1 Création de couche vide

Bouton Nouvelle couche shapefile Une couche vide au format shapefile se crée via le bouton Nouvelle couche Shapefile de la barre d’outils Gestion des sources de données.

La fenêtre qui s’affiche permet de nommer la future couche shapefile, choisir le type de couche (Point, Multipoint, Ligne ou Polygone), le SCR et les différents champs de la table d’attributs. Par défaut, QGIS crée le champ ID de type entier.

Attention

Les noms des champs de la table d’attributs d’un Shapefile sont limités à 10 caractères et il ne faut pas qu’ils comportent d’espace ou de caractère de ponctuation. Il est donc utile de rentrer un commentaire et un alias pour chaque champ.

1.5.2 Numérisation

Deux barres d’outils permettent d’accéder aux fonctions d’édition des couches vectorielles : Numérisation et Numérisation avancée. Selon le type de couche, certaines fonctions s’activent et se désactivent.

Barres d'outils Numérisation et Numérisation avancée

Basculer en mode édition Pour éditer une couche il faut passer en mode Édition en sélectionnant la couche dans le panneau Couches puis par un clic-droit sur Basculer en mode édition ou en cliquant sur le bouton du même nom dans la barre d’outils Numérisation. L’icône de la couche (à gauche de son nom) se transforme alors en petit crayon.

Enregistrer les modifications Les modifications effectuées sur la couche ne sont sauvegardées que lorsque l’on clique sur le bouton Enregistrer les modifications ou que l’on ferme le mode Édition en cliquant sur Basculer en mode édition. Il faut donc penser à enregistrer régulièrement.

Ajouter un point Le bouton Ajouter une entité permet d’ajouter des entités de type point. Ajouter une ligne Ajouter un polygone ajoutent respectivement des lignes et des polygones : chaque clic-gauche permet d’ajouter un sommet et un clic-droit termine la saisie (ce dernier clic ne crée pas de sommet). Une fenêtre s’ouvre pour rentrer les attributs correspondants à l’entité nouvellement saisie.

Lors de la numérisation, pour se déplacer sur la carte, il est possible de maintenir la barre espace ou la molette de la souris appuyée puis de déplacer la souris pour faire glisser la carte. Les flèches du clavier permettent également un déplacement de la carte.

Supprimer les entités sélectionnées La suppression de l'entité sélectionnée se fait en cliquant sur le bouton Supprimer les entités sélectionnées de la barre d’outils Numérisation ou depuis la table d’attributs.

Outil de noeud Pour ajouter, déplacer ou supprimer un nœud sur une ligne ou un polygone, il faut tout d’abord cliquer sur le bouton Outil de nœud.

Astuce

Remodeler les entités Le bouton Remodeler les entités permet de redessiner une partie d’une ligne ou d’un polygone sans avoir à ajouter ou supprimer puis déplacer les nœuds un par un. Il n’est pas nécessaire de sélectionner (pour l’édition) l’entité à redessiner.

Pour agrandir un polygone il faut tracer la nouvelle limite en commençant par un point situé n’importe où à l’intérieur du polygone puis en dessinant la limite par clics gauche successifs. Pour terminer l’ajout il faut finir par faire un clic-droit n’importe où à l’intérieur du polygone.

On peut de la même manière soustraire une zone à un polygone en commençant à l’extérieur de celui-ci et en terminant par un clic-droit à l’extérieur.

Les fichiers générés dans les exercices suivants seront à enregistrer dans le sous-répertoire data/mon_travail/1_5_numerisation.

Exercice 8. Vous allez vectoriser le trait de côte de la région montpelliéraine et une partie du réseau hydrographique du XIXème siècle d'après la carte d’État-major.

Créez un nouveau projet dans data/mon_travail dénommé 1_5_numerisation_herault_hydro.qgz.

Ouvrez le raster SCEM40K_0760_6280_L93_E100.jp2 inclus dans le répertoire data/IGN_ESR/SCAN_ETATMAJOR.

Quel est le système de coordonnées de ce raster produit par l'IGN ? Que remarquez-vous ? Corrigez le SRC du raster (cf. partie 1.3.2.5) et du projet (cf. partie 1.3.2.2).

Créez un nouveau shapefile Hydro_etatmajor.shp dans le répertoire data/mon_travail/1_5_numerisation, de type Ligne, avec comme SCR EPSG:2154. Pour les attributs, conservez le champ "ID" (de type entier, créé par défaut) et ajoutez les attributs suivants :

  • Nom = "libelle", Type = texte, Longueur = 30,
  • Nom = "length", Type = nombre décimal, Longueur = 10, Précision = 2.

A chaque ligne numérisée, saisissez le "libelle" (trait de côte, rivière ou canal).

Appliquez une symbologie de type catégorisé basée sur l'attribut "libelle".

Enregistrez le projet.

Voir la solution

1.5.3 Paramètres d'accrochage

L’accrochage permet de positionner de nouveaux sommets exactement sur des sommets existants.

On accède à ces options via le menu Projet/Options d’accrochage. Ces options "écrasent" celles qui se définissent via le menu Préférences/Options....

Fenêtre Options d'accrochage

L’accrochage peut se faire sur l’ensemble des couches, sur une couche différente ou sur la couche en train d’être numérisée. En mode Avancé, la fenêtre d’Options d’accrochage permet de sélectionner les couches sur lesquelles s’accrocher, en cochant la ou les cases situées à gauche de leur nom.

Pour l’accrochage sur les couches de lignes ou de polygones, on peut choisir entre s’accrocher uniquement sur les sommets, sur les segments ou sur les deux.

La Tolérance d’accrochage permet de régler la distance à laquelle l’application cherche les sommets ou Segments voisins. Cette distance est à ajuster au cas par cas mais une valeur de 10 pixels semble souvent être un bon compromis.

La création d’un polygone contigu à un polygone déjà existant est facilitée par l’option Éviter le chevauchement, option accessible en mode Configuration avancée. Il suffit de numériser les nouveaux contours et de recouvrir volontairement le polygone existant. Au moment de la création du nouveau polygone, QGIS le découpe automatiquement de manière à ce que la frontière commune se superpose exactement à celle définie par le polygone déjà existant.

Eviter les intersections

Une autre manière de numériser des polygones contigus tout en joignant parfaitement leurs bords est de passer par la barre d'outils Accrochage et de cliquer sur Activer l’accrochage et Activer le tracé. Pour plus d'informations sur cet outil voir la documentation de QGIS.

Exercice 9. Vous allez vectoriser l'occupation du sol de Montpellier d'après une carte de Niquet de 1724 scannée et géoréférencée.

Créez un nouveau projet dans data/mon_travail dénommé 1_5_numerisation_montpellier.qgz.

Ouvrez la couche raster 1724_montpel_cv_niquet_georef.tif incluse dans le répertoire data/Occitanie/Montpellier_Niquet.

Mettez en transparence les pixels noirs entourant le raster, avec Clic droit sur la couche + Propriétés/Transparence avec Valeur nulle supplémentaire = 0.

Créez un nouveau shapefile Occsol_montpel_1724.shp de type Polygone, dans le répertoire data/mon_travail/1_5_numerisation, avec comme SCR EPSG:2154 et les attributs suivants :

  • Nom = "libelle", Type = texte, Longueur = 40,
  • Nom = "surf_ha", Type = nombre décimal, Longueur = 10, Précision = 4.

Dans la couche Occsol_montpel_1724.shp, numérisez une dizaine de polygones d'après la carte scannée 1724_montpel_cv_niquet_georef.tif. A chaque polygone numérisé, saisissez le "libelle" (bâti, culture, vigne, friche). Vous pouvez définir une symbologie de type Catégorisé comme ci-dessous, avec une opacité de 60 %, pour visualiser en couleur le type d'occupation du sol de chaque polygone.

Enregistrez le projet.

Voir la solution

Voici un exemple de polygones numérisés.

Numérisation de polygones

Astuce

Pour accéder rapidement aux effets visuels comme la transparence d'une couche, ouvrir le panneau Style de couche à partir du menu Vue/Panneaux.

Attention

Des erreurs topologiques peuvent nuire au bon déroulement d'analyses spatiales. Pour corriger ces erreurs, deux outils sont à disposition dans le menu Vecteur/Outils de géométrie/Vérifier la validité et le menu Traitement/Boite à outils/Géométrie vectorielle/Réparer les géométries, ainsi que l'extension Vérificateur de topologie.

Voir la doc QGIS pour plus d'informations sur les outils Topologie et sur l'extension Vérificateur de topologie.

1.5.4 Edition de la table attributaire

Tout comme pour la géométrie des entités d’une couche, l’édition de la table d’attributs nécessite que cette couche passe en mode Édition.

Calculatrice de champs Les calculs de champ se font via la table d’attributs en cliquant sur le bouton Ouvrir la calculatrice de champs.

Fenêtre Calculatrice de champs

La calculatrice permet à la fois de faire des calculs sur des champs existants et de créer de nouveaux champs. En cochant la case "Ne mettre à jour que les n entités sélectionnées" on peut choisir de n’effectuer les calculs que sur une sélection d’entités.

Des fonctions, des opérateurs et la liste des champs de la couche sont proposés. La liste complète des fonctions et opérateurs utilisables est disponible dans la doc QGIS.

Parmi ces opérateurs, $area permet de calculer l’aire des entités d’une couche de polygones et $length la longueur des entités d’une couche de lignes.

Attention

Pour les opérateurs concernant la géométrie comme $area et $length, les calculs respectent l'ellipsoïde du projet QGIS et non pas la représentation plane de la couche. Les unités de mesure sont quant à elles celles du SCR de la couche. Attention donc à ce que le SCR de la couche soit de type projeté (donc métrique) !

Nouveau champ L’ajout de champs dans la table d’attributs se fait soit depuis la table d’attributs, soit depuis la fenêtre Propriétés de la couche, onglet Champs. Il faut d’abord activer le mode Édition puis cliquer sur le bouton Nouveau champ.

Toute modification de la table doit être bien réfléchie car changer un type ou supprimer un champ peut entraîner la perte d’informations.

Astuce

Pour modifier un champ existant, il faut utiliser la fonction Refactoriser les champs disponible dans la Boîte à outils de traitements (menu Traitement/Boîte à outils/Table vecteur). L’outil n’écrase pas la couche mais en crée une nouvelle.

Exercice 10. Vous allez éditer la table attributaire de la couche Occsol_montpel_1724.shp en calculant :

  • la surface en hectares des polygones créés précédemment en éditant le champ "surf_ha", à l'aide d'une expression utilisant la fonction $area,
  • l'identifiant de chaque polygone dans le champ "id", à l'aide de la fonction $id.

Enregistrez le projet.

Voir la solution

1.5.5 À RETENIR

  • L'édition (géométrique et attributaire) de couche vectorielle nécessite de Basculer en mode édition.

  • Les barres d’outils Numérisation et Numérisation avancée sont nécessaires pour l'édition géométrique d'entités (ajout, suppression, modification).

  • Les paramètres d'Accrochage permettent la création d'entités vectorielles adjacentes, tout en respectant des relations topologiques (pas de chevauchement...) et éviter ainsi des erreurs lors d'analyse spatiale.

  • Dans la table attributaire, l’édition d'une valeur peut être faite en saisissant directement la nouvelle valeur dans la cellule. Pour la totalité de la couche ou seulement pour des entités sélectionnées, la Calculatrice de champ permet de faire des calculs, à partir de valeurs attributaires existantes ou de fonctions définies, sur un champ existant ou un nouveau champ.