Projet:Communes de France/Cartographie/1.Orthophoto

Une page de Wikipédia, l'encyclopédie libre.

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 | modifier le code]

Ortho-photo aérienne d'Ambloy.

Carte[modifier | modifier le code]

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

Utilisation[modifier | modifier le code]

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 départementales[modifier | modifier le code]

Départements non frontaliers[modifier | modifier le code]

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 | modifier le code]

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 | modifier le code]

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 | modifier le code]

Introduction[modifier | modifier le code]

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 | modifier le code]

  • 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 | modifier le code]

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 | modifier le code]

Ajout de la couche[modifier | modifier le code]

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 | modifier le code]

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 | modifier le code]

Même manip avec le .shp des communes.

Position de la couche[modifier | modifier le code]

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 | modifier le code]

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 | modifier le code]

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 | modifier le code]

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 | modifier le code]

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 | modifier le code]

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 | modifier le code]

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 | modifier le code]

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 | modifier le code]

Départements frontaliers[modifier | modifier le code]

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 | modifier le code]

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 | modifier le code]

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 | modifier le code]

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 | modifier le code]

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 | modifier le code]

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 | modifier le code]

  • 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 | modifier le code]

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 | modifier le code]

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 | modifier le code]

Qu'est-ce qu'un atlas[modifier | modifier le code]

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 | modifier le code]

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 | modifier le code]

  • 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

Sortie[modifier | modifier le code]

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 | modifier le code]

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 | modifier le code]

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 | modifier le code]

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 | modifier le code]

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 | modifier le code]

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 | modifier le code]

Chargement à l'unité[modifier | modifier le code]

Chargement en masse[modifier | modifier le code]

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.