Projet:Communes de France/Cartographie/1.Orthophoto

Le présent article s'inscrit dans le cadre d'un tutoriel de QGIS, un logiciel SIG (système d'information géographique) libre multiplate-forme publié sous licence GPL, dédié à la réalisation de cartes pour les articles des divisions françaises dans Wikipédia, et en particulier les articles des communes de France.

Il vise à établir des cartes d'orthophotos aériennes des différentes communes de France Les séries de cartes seront produites par département (350 en moyenne, mais jusqu’à 800 pour l’Aisne et quelques dizaines pour d’autres).

Résultat attendu

modifier
Ortho-photo aérienne d'Ambloy.

La carte ci-contre doit pouvoir être éditée pour toutes les communes de France.

Utilisation

modifier

Ce type de carte peut être affiché dans la section Urbanisme de l'article d'une commune. Exemple avec Ambloy, commune de Loir-et-Cher.

Données

modifier

Données départementales

modifier

Départements non frontaliers

modifier

On commencera par des départements non frontaliers. les données à télécharger sont les suivantes (on ne télécharge que les données en shapefile, à savoir .shp) :

Départements frontaliers

modifier

Pour les départements frontaliers, on va avoir besoin du découpage des pays frontaliers. On pourrait s’en passer, mais c’est quand même mieux de pouvoir coloriser le pays voisin (et mettre éventuellement automatiquement son nom), surtout si on est proche de la mer et que l’on veut aussi coloriser celle-ci (sinon on aura l'impression que la Méditerranée recouvre également l'Espagne, pour les Pyrénées orientales !).

Les données qui nous intéressent sont ici

Télécharger countries 2020, échelle 1 : 1 million en .shp (shape)

Organisation des données et cartes

modifier

Un SIG est en fait un outil assembleur de données cartographiques. Il est donc très sensible à l’emplacement des données. Si on déplace telles ou telles données, la carte ne va plus marcher. Il est donc essentiel dans un premier temps de définir une arborescence logique sur son ordi de laquelle il ne faudra pas sortir.

Un répertoire pour les données, un autre pour les cartes. Et des sous-répertoires adaptés (contours administratifs/ cours d’eau / orthopho etc) Et des sous-sous-répertoire (orthophoto par dep, etc).

Construction de la carte

modifier

Introduction

modifier

Dans un premier temps on va partir d’une page blanche et y aller pas à pas. Ensuite on réutilisera des modèles et des feuilles de style d’un type de carte à un autre, et cela ira beaucoup plus vite.

Page blanche

modifier
  • Projet / nouveau : on a la fameuse page blanche du début.
  • Enregistrer le projet, si possible avec un nom explicite, par exemple 12.orthophoto

Le SCR du projet

modifier

Une première difficulté est de comprendre les différents systèmes de projection (voir ici). Mais la connaissance des principes et de tous les système de projection n'est en soi pas nécessaire pour commencer. Il suffit simplement de savoir que

  • Selon la carte que l’on veut éditer, est associé un système de projection donné (celui de la France métropolitaine n’est bien entendu pas le même que celui des Antilles, de la Guyane ou de la Polynésie).
  • le projet et donc toutes les couches de données doivent être projetées selon le même système, à savoir, pour la France métropolitaine, le RGF93.

Pour les futures cartes on n’aura plus besoin de ce soucier de ceci puisqu’on partira de modèles existants.

Dans un premier temps ils est important de régler le système de projection
Préférences / options / SCR / sélectionner la ligne "utiliser le SCR par défaut et dans la fenêtre choisir : IGNF:RGF93EQGPFR

Si on n' a pas fixé le RGF93 par défaut au préalable ... les cartes apparaissent ... déformées! C'est normal le système de projection de la donnée que l'on a téléchargée (les départements) est EPSG:4326 - WGS84, car le même lot de données englobe une surface très importante (puisque la Guyane et les Antilles en font partie). Il vaut mieux alors abandonner les données, paramétrer le SCR puis recharger les données.

Couche 1 : départements

modifier

Ajout de la couche

modifier

On peut maintenant charger les contours départementaux.
Couche / ajouter une couche / ajouter une couche vecteur / choisir le fichier .shp à l’emplacement voulu dans la fenêtre de recherche puis ajouter

Mise en forme de la couche

modifier

Fond On notera que les départements apparaissent avec une couleur donnée. Chaque carte est en effet constituée d'un assemblage de polygones définis par un contour et un fond. Contour et fonds peuvent être transparents ou colorisés. Pour le travail qui nous intéresse, on va choisir un fond transparent. Pour cela :

Dans la fenêtre "couches" (en bas à gauche), double-cliquer sur la couche "départements-20180101" (il n'y en a qu'une, c'est simple), une fenêtre apparait.

Dans la colonne de gauche de la fenêtre, cliquer sur le pinceau, à savoir le cadre de symbologie, puis

  • cliquer sur remplissage simple
  • cliquer sur la flèche de droite de la fenêtre "couleur de remplissage" puis cocher remplissage transparent, puis OK.

Et on devrait avoir tous les départements blancs (en fait transparents sur un fond blanc).

Masque grisé
Nous souhaitons mettre un masque grisé devant toutes les départements qui ne sont pas dans le département sur lequel on travaille (l'Aveyron dans cet exemple).

Pour cela :

  • double-cliquer sur la couche départements - apparait alors le cadre des propriétés de la couche ;
  • cliquer sur le 2ème picto de la colonne de gauche (une clé à molette) qui ouvre le cadre dénommé « source »
  • cliquer en bas à droite sur « constructeur de requête »
  • entrer la formule suivante : "code_insee" < > '12' (en utilisant les opérateurs proposés, et en respectant bien la nature des guillements)
  • pour tester la formule, cliquer sur le bouton "Tester", la fenêtre du résultat de la requête devrait indiquer : La clause where a retourné 101 lignes, cliquer sur OK pour faire disparaitre la fenêtre de résultat
  • puis cliquer sur OK, puis OK à nouveau

Nous avons exclu le département du 12. Les autres départements peuvent être maintenant grisés. Pour cela :

  • cliquer sur le picto "pinceau" en-dessous de la clé à molette, cela ouvre le cadre symbologie ;
  • cliquer sur remplissage simple ;
  • cliquer sur couleur de remplissage et sélectionner un gris, en renseignant les lignes suivantes R V B avec les valeurs suivantes et opacité de 50 %.
#b0b0b0
R:176 V:176 B:176

Nous avons désormais un gris transparent à 50 % sur tous les départements qui ne sont pas l'Aveyron.

Couche 2 : communes

modifier

Même manip avec le .shp des communes.

Position de la couche

modifier

La nouvelle couche vient se positionner au-dessus de la première et ... vient donc masquer la précédente (puisque tous les fonds sont colorisés). D'où l'importance de l'organisation des couches : celles du dessus seront vues avant celles d'en-dessous. On souhaite que les contours des départements viennent en surimpression de celui des communes. Il convient donc que la couche départements soit au-dessus de celle des communes. Pour cela :

  • Cliquer sur la couche départements et glisser vers le haut (en maintenant cliqué) pour positionner la couche départements au-dessus de celle des communes (à savoir en 1ère position).

Données attributaires

modifier

Un lot de données comprend toujours des données vectorielles (ou raster) et des données associées, dites « données attributaires », qui permettent de caractériser les différents polygones ou polylignes.

Comment connaître les données attributaires d'une couche ? Positionner la souris sur la couche voulue (ici celle des départements), puis clic droit, puis ouvrir la table d'attributs. On voit que pour cette couche des départements, il y a 5 données attributaires, le nom en haut de chaque colonne étant le nom d'un champ :

  • code insee
  • nom
  • nuts3 - codage dans la nomenclature européenne
  • wikipedia - nom dans Wikipédia
  • surf_km2 - surface de la commune (de l'Insee, à savoir cadastrale et donc différente de la surface géodésique ou géomatique)

Deux champ nous intéressent pour la suite : code insee et nom qui seront utilisés plus tard pour construire le nom du fichier de sortie.

Mise en forme de la couche communes

modifier

Fonds transparent

  • double-cliquer sur la couche communes - apparait alors le cadre des propriétés de la couche ;
  • cliquer sur le picto "pinceau" en-dessous de la clé à molette, cela ouvre le cadre symbologie ;
  • cliquer sur remplissage simple ;
  • cliquer sur couleur de remplissage puis cocher remplissage transparent, puis OK.

Étiquettes : Nom des communes

Pour rappel, une étiquette est un composant d'interface graphique (widget) qui affiche du texte. Nous souhaitons afficher les noms des différentes communes (hormis peut-être celle qui est éditée).

On va un peu anticiper sur la notion d'atlas puisque cet affichage que l'on souhaite est dynamique, dépendant de la carte éditée par l'atlas. Pour cela, dans le menu déroulant du haut du cadre "Étiquettes" (picto ABC), choisir la commande "Étiquetage basé sur des règles" et inscrire

  • dans le champ "Règle" : @atlas_featureid = $id
  • dans le champ texte : nom

Couches 3 : photos aériennes

modifier

Le fond de carte de photos aériennes est découpé en tuiles (ou dalles) qu'il convient de charger sur le SIG. Les données sont fournies par département. La mosaïque de tuiles dépasse légèrement les limites de chaque département afin que toutes les communes soient incluses.

  • Couche / ajouter une couche / ajouter une couche raster / choisir dans la fenêtre de recherche le premier fichier de la liste avec l'extension JPEG 2000 image/ ajouter

Puis recommencer autant de foi qu'il y a de tuiles (soit la totalité des fichiers avec ladite-extension). On peut voir s'empiler les tuiles du sud au nord, puis colonne par colonne d'ouest en est.

Il n'y a aucune mise en forme de ces données à faire.

Couches 4 : cours d'eau

modifier

L'ajout des cours d'eau n'est en soi pas nécessaire. Les orthophotos aéreinnes peuvent se suffire à lles-mêmes. Mais l'ajout des cours d'eau permet d'ajouter une information amélioration la localisation des différentes parties de la commune.

Chargement des couches cours d'eau

modifier

Il n'y a qu'un seul lot de données de cours d'eau (BDCarthage), mais pour bien différencier visuellement les cours d'eau selon la longueur, on utilisera la même donnée dans plusieurs couches différentes avec une mise en forme différente.

  • charger une couche de cours d'eau en la positionnant au-dessus des couches raster des photos aériennes :
    Couche / ajouter une couche / ajouter une couche vecteur / choisir dans la fenêtre de recherche le fichier COURS D'EAU.shp / ajouter
  • mettre en forme cette couche : double-clic : aller sur le cadre pinceau (=symbologie). Double-cliquer sur Couleur et choisir une couleur bleue : R 19, V 137, B 228, puis OK et OK.
  • dupliquer la couche 5 fois (clic droit puis dupliquer la couche) ;
  • renommer les couches (clic droit puis renommer la couche) avec les noms suivants COURS_D'EAU_1-2, COURS_D'EAU_3, COURS_D'EAU_4, COURS_D'EAU_5, COURS_D'EAU_6, COURS_D'EAU_7

Caractéristiques des données attributaires

modifier

Si on ouvre la table d'attributs de la couche, on voit que les paramètres (champs) sont les suivants : CODE_HYDRO, CLASSE, TOPONYME, CANDIDAT. Celui qui nous intéresse est CLASSE. Il caractérise en effet les cours d'eau selon une hiérarchie décroissante comme suit (On entend par « embouchure logique » une interruption du réseau formé par les cours d’eau naturels : mer, puits,…) :

  • 1 : tout cours d’eau d’une longueur supérieure à 100 km ou tout cours d’eau se jetant dans une embouchure logique et d’une longueur supérieure à 25 km
  • 2 : tout cours d’eau d’une longueur comprise entre 50 et 100 km ou tout cours d’eau se jetant dans une embouchure logique et d’une longueur supérieure à 10 km
  • 3 : tout cours d’eau d’une longueur comprise entre 25 et 50 km
  • 4 : tout cours d’eau d’une longueur comprise entre 10 et 25 km
  • 5 : tout cours d’eau d’une longueur comprise entre 5 et 10 km
  • 6 : tous les autres cours d’eau hormis ceux issus de la densification du réseau
  • 7 : tous les cours d’eau issu de la densification du réseau.

Mise en forme des couches de cours d'eau

modifier

La mise en forme des couches de cours d'eau consiste à :

  • mettre une formule dans le requêteur pour différencier les différentes couches selon le paramètre CLASSE ;
  • définir la largeur et la couleur des lignes de cours d'eau ;
  • définir les étiquettes.

Couleur des cours d'eau

La couleur recommandée pour les cours d'eau dans les cartes thématiques est la suivante (voisine du bleu pétrole) :

#0978AB
R:9 V:120 B:171

Néanmoins, compte tenu que le fond est la photo aérienne, relativement sombre, il est souhaitable d'avoir une couleur plus tonique (voisine du bleu électrique). Nous retiendrons :

#1389e4
R:19 V:137 B:228

Récapitulatif des caractéristiques à saisir

Nom de la couche Formule à saisir
(dans l'éditeur de requête)
Trait (polyligne) Étiquettes
Largeur Couleur Taille Style Police Couleurs
COURS_D'EAU_1-2  "CLASSE" = '1' OR "CLASSE" = '2' 1.2000 R:19 V:137 B:228 15 normal mS Shell Djg 2 id traits (ou + clair, à voir selon fonds de carte)
COURS_D'EAU_3 CLASSE = '3' 1.0000 R:19 V:137 B:228 13
COURS_D'EAU_4 CLASSE = '4' 0.8000 R:19 V:137 B:228 12
COURS_D'EAU_5 CLASSE = '5' 0.6000 R:19 V:137 B:228 11
COURS_D'EAU_6 CLASSE = '6' 0.4000 R:19 V:137 B:228 10
COURS_D'EAU_7 CLASSE = '7' 0.2500 R:19 V:137 B:228 9

La carte est construite (au niveau national pour cours d'eau et limites administratives, au niveau départemental pour les photos) et peut désormais être éditée.

Couche 7 (optionnelle) : pays limitrophes

modifier

Départements frontaliers

modifier

Pour les départements frontaliers, il conviendra d'ajouter une couche relative aux pays frontaliers. A ce stade le contributeur doit savoir faire cette manip. La couleur du fond des pays frontaliers à mettre en place est la suivante :

#E0E0E0
R:224 V:224 B:224


La couleur de l'étiquette du nom du pays frontalier sera la suivante :

#646464
R:100 V:100 B:100

Départements littoraux

modifier

Pour les départements en bordure du littoral, il peut être envisagé de coloriser la mer. Toutefois les orthophotos comportent également des parties de mer avec donc une couleur. Ajouter une couleur qui ne peut être identique à cette dernière peut toutefois ne pas être d'un bon effet. La couleur à mettre en place est la suivante :

#C6ECFF
R:198 V:236 B:255

Édition de la carte pour une commune

modifier
Présentation de l'écran principal de QGIs, les paramètres de la carte étant tous définis.

Éditer signifie mettre en forme une page à partir des données de la carte. A terme l'édition se fera automatiquement pour toutes les communes. Mais il faut commencer par une carte d'une commune pour calibrer tous les paramètres.

Projet / nouvelle mise en page puis donner un nom "ortho" par exemple, puis il va s'agir de paramétrer les différents onglets du composeur d'impression : Mise en page / Propriétés de l'objet / Guides / Atlas

Modèle de mise en page

modifier

Là encore, la démarche pourrait être faite en pas à pas pour comprendre la procédure, puis appliquer des modèles pour d'autres thématiques pour que ça aille plus vite. Mais cela risque d'être long. Dès cette phase nous allons employer un modèle, afin d'avoir une mise en page pré-formatée.

  • Télécharger le modèle en cliquant sur ce lien

Puis stocker le fichier dans un répertoire "Modèles". Ce modèle permet d'ajouter dans le composeur d'impression : une légende (les cours d'eau), une échelle et le nord.

Mise en page à partir du modèle téléchargeable

modifier

La mise en page se fait comme suit :

  • Projet / Nouvelle mise en page
  • dans la fenêtre qui s'ouvre, donner un nom "orthophoto" par exemple ;

Le composeur d'impression affiche alors une page vierge au format A4 paysage. On pourrait modifier ces caractéristiques, mais pour l'instant on y touchera pas. puis

  • Mise en page
  • Ajouter des objets depuis un modèle
  • sélectionner le modèle ci-dessus (orthophoto)
  • Ouvrir

Puis charger la carte : ajouter carte (7ème picto à partir du haut en colonne de gauche)

Si tout s'est bien passé, la mise en page ... est terminée!

Modifications de la mise en page

modifier

Différents pictos figurent dans la colonne de gauche du composeur d'impression, permettant de modifier tel ou tel paramètre. Exemples :

Déplacement de la carte dans le cadre

modifier
  • 4ème picto à partir du haut (faisant apparaitre différentes flèches) : permet de déplacer la carte à l'intérieur du cadre :

Cliquer sur le picto, puis cliquer sur la carte dans le cadre et faire glisser à droite ou gauche, puis relacher. La carte est déplacée.

On obtient la même chose avec les commandes : Editer / Déplacer le contenu

Modification du cadre

modifier

On part d'un format A4 paysage, on peut vouloir une autre mise en page. Pour cela :

  • 3ème picto à partir du haut (faisant apparaitre une flèche blanche) : cliquer sur le picto. Cela fait apparaitre des points blancs autour du cadre (des « poignées »). En cliquant-déplacant ces poignées, on peut faire varier la taille du acdre.

On obtient la même chose avec les commandes : Editer / Sélectionner/Déplacer un objet

On comprend aisément que cette commande est périlleuse, puisqu'on perd la mise en page initiale.

Export de l'image

modifier

Dès ce stade, on peut créer la première carte comme suit :

  • Mise en page
  • Exporter au format image (rappel, pour le cas d'espèce on exportera en .png)
  • Donner un nom.

Édition automatique d'un lot de cartes de communes avec la fonction atlas

modifier

Qu'est-ce qu'un atlas

modifier

Le but de la fonction Atlas de QGis est d’automatiser la production d’une série de cartes, à partir d'une mise en page donnée (celle que l'on vient de définir par exemple) et d'une couche maîtresse (ou couche de couverture) (les communes dans notre cas).

Paramétrer l'atlas

modifier
Visuel du composeur d'impression.

Dans le composeur d'impression (où est affiché la mise en page que l'on vient de définir), figurent à droite 4 onglets : Mise en page - Propriétés de l'objet - Guides - Atlas.

Cliquer sur Atlas puis cocher "générer un atlas".

Configuration

modifier
  • sélectionner la couche de couverture : commune-20200101 (à savoir la couche des communes au 1er janvier 2020 - il est clair que si c'est une autre date, le nom du fichier sera différent!)
  • nom de la page : sélectionner le champ "nom"
  • cocher Filtrer avec et dans le fenêtre écrire : "insee" LIKE '12%' (on choisit toutes les communes dont le code Insee commence par 12, à savoir les communes de l'Aveyron)
  • cocher "Ordonner par" et sélectionner insee

Il est essentiel de bien formater le nom de sortie pour bien s'y retrouver ensuite puisqu'on peut avoir en sortie plusieurs centaines voire milliers de cartes! Le nom du fichier de sortie sera donc structuré systématiquement comme suit : code Insee-nom de la commune-Nature de la carte.

A cette fin, décocher la case export d'un seul fichier (si possible), puis, dans Expression du fichier de sortie, saisir l'expression suivante : "insee" || '-' || "nom" || '-Orthophoto'
Format d'export : laisser .png (même quand on exportera en .svg).

Paramétrer la couche de couverture

modifier
Cadre de symbologie de la couche communes et sous-cadre de mise en forme.

Il convient de maintenant lier les éléments de la couche de couverture à l'atlas. Pour cela,

Double-clic sur la couche communes > sélection picto pinceau (symbologie) > dans le menu déroulant du haut (qui comprend : aucun symbole / symbole unique / catégorisé / gradué / ensemble de règles / polygones inversés / 2,5 D) choisir ensemble de règles

On va définir deux règles pour d'une part lier la couche à l'atlas, et d'autre part mettre un masque gris sur tout le territoire qui n'est pas celui de la commune affichée dans l'atlas :

1ère règle
Double-clic sur la ligne dans le cadre et entrer les caractéristiques suivantes :

  • dans la fenêtre en face du mot filtre, inscrire : @atlas_featureid = $id
  • dans le bloc symbole : remplissage > remplissage simple et choisir
  • couleur de remplissage : transparent
  • style de trait : continu
  • couleur de trait : noire
  • largeur de trait : 0.26

2ème règle
Pour faire apparaitre une deuxième ligne, cliquer sur le picto + en bas du cadre

  • dans la fenêtre en face du mot filtre, inscrire : ELSE
  • dans le bloc symbole : remplissage > remplissage simple et choisir
  • couleur de remplissage (opacité 50 %)
#d4d4d4
R:212 V:212 B:212
  • style de trait : ligne en pointillé
  • couleur de trait : noire
  • largeur de trait : 0.6

Contrôler l'édition par l'atlas

modifier

Jusqu'à présent la composition est fixe et identique à toutes les cartes, en particulier en ce qui concerne l'échelle. Toutes les cartes sont à la même échelle. Or il y a des communes petites et de très grandes communes. On souhaite que l'échelle soit dynamique, à savoir que le territoire de la commune se cale automatiquement dans le cadre et adapte donc l'échelle qui devient dès lors dynamique.

Pour cela

  • sélectionner la carte en cliquant dessus (les poignées doivent apparaître) ;
  • cliquer sur l'onglet "Propriétés de l'objet" ;
  • dérouler vers le bas les items puis cocher "contrôlé par l'atlas".

C'est terminé. Bon, on voit bien qu'il y a tout un tas d'autres paramètres, mais on verra plus tard (enfin, peut-être!)

L'atlas est prêt.

Aperçu de l'atlas

modifier

Avant de lancer l'édition, il est essentiel de s'assurer du rendu en prévisualisant les cartes produites.

Cliquer sur le picto en forme de mappemonde (juste en-dessous du mot paramètres de la ligne de commandes supérieure). Cela génère l'atlas et en faisant défiler les noms des communes on peut voir le résultat.

Exporter une commune de l'atlas

modifier

Avant d'exporter tout l'atlas, il est souhaitable d'exporter une commune. Pour cela, dans le composeur d'impression :
Mise en page / Exporter au format image. puis choisir l'emplacement où on éditera l'atlas.

Exporter tout l'atlas

modifier

Attention, avant de lancer l'export complet, il faut être sûr de soi, car il est quelquefois difficile d'arrêter la production (ou tout au moins il peut y avoir un délai entre la commande et l'arrêt). Bon, ce n'est pas en soi non plus un pb car si on réédite l'atlas, les nouvelles images vont venir écraser les anciennes. Mais c'est du temps de perdu.

Si on est sûr du coup :

  • Atlas
  • Exporter l'atlas en tant qu'images (car s'agissant d'images rasters, on va privilégier ce format) ;
  • sélectionner le répertoire dans lequel on veut éditer
  • choisir la résolution d'exportation : 600dpi (ppp) dans notre cas, car on veut la plus grande définition, soit une page de dimensions 7015px x 4960px -(ce qui est pas mal!). Bon, cela prend plus de temps qu'en 300 dpi bien entendu (qui est la résolution d'exportation habituelle).

... et c'est parti!

Chargement sur Commons

modifier

Chargement à l'unité

modifier

Chargement en masse

modifier

Avec quelques centaines de cartes à téléverser sur Commons, on risque d'avoir des difficultés si on intervient à la main, voire même avec les outils mis à disposition par Wikimédia Commons. Un automate est nécessaire. J'ai opté pour Pattypan. Mais ce sera vu plus tard.