Wikipédia:Atelier graphique/Didacticiels cartographiques/Didacticiel de création de carte vectorielle des surfaces aquatiques

Un article de Wikipédia, l'encyclopédie libre.

L'objet de ce didacticiel est de créer une carte vectorielle des surfaces aquatiques d'une zone considérée en utilisant les Shuttle Radar Topography Mission (SRTM) Water Body Data (SWBD) de la NASA. Ces fichiers, qui complètent les modèles numériques de terrain (MNT)[1], comportent le tracé vectoriel précis des côtes, les lacs et cours d'eau d'une certaine importance.

Carte SWBD finalisée

Cette carte pourra avoir plusieurs finalités :

  • Compléter une carte topographique créée grâce aux MNT de la SRTM, ce qui est leur destination première ;
  • Servir de base pour la création d'une carte géographique vectorielle simple ou plus élaborée avec relief ombré.


Remarque : Pour les cartes couvrant une zone plus large ne nécessitant pas de la précision des SWBD, on peut utiliser la GSHHS ou d'autres sources encore moins précises. Ces données couvrant tout le globe en un seul fichier, le processus d'intégration dans la carte SVG sera simplifié car il n'y aura pas besoin de nettoyer les chemins du cadre qui entoure chaque fichier SWBD. Vérifier cependant que les chemins sont continus et forment des polygones fermés.

Sommaire

[modifier] Les outils

  • GRASS GIS (version utilisée : winGRASS6.3.0RC6)  : logiciel SIG libre utilisé pour ouvrir les fichiers SWBD qui sont au format propriétaire shapefile d'ESRI, les re-projeter suivant une projection UTM puis les exporter au format SVG ;
  • Inkscape (version utilisée : 0.46) : éditeur vectoriel libre grâce auquel sera créée la carte finale des SWBD.

[modifier] Source des données

Icône de détail Pour d'autres ressources disponibles, consulter : Ressources cartographiques géoréférencées.
  • NASA SRTM Water Body Data (SWBD) (site ftp de téléchargement) : fichiers complémentaires aux MNT de la SRTM comportant le tracé des côtes précis, les lacs et cours d'eau d'une certaine importance.
Ce sont des fichiers versés dans le domaine public, compressés au format .zip, qui contiennent les données numérisées de la région considérée. La zone couverte par les SWBD s'étend de 56° de latitude Sud à 60° de latitude Nord. Chaque fichier représente un rectangle d'un degré d'arc de côté référencé suivant les coordonnées du coin inférieur gauche[2]. Il est nécessaire de les décompresser avant de les utiliser dans GRASS qui ne sait pas les ouvrir directement depuis leur format .zip.

[modifier] Préparation de la carte des SWBD dans GRASS

[modifier] Importation des SWBD dans GRASS

1. Télécharger les fichiers SWBD nécessaires et les décompresser dans le dossier C:\GRASS\GIS DataBase.


Entrer dans GRASS dans le projet en projection Lat/Lon
2. Lancer GRASS et entrer dans le projet qui utilise la projection Lat/Lon[3].
Si cela n'a pas déjà été fait pour éditer les modèles numériques de terrain (MNT), créer un projet suivant une projection Lat/Lon pour la carte dans GRASS. Voir les détails pour cette création dans le didacticiel pour carte topographique vectorielle.


Lancer le module d'importation "v.in.ogr"
3. Dans la fenêtre de gestion de GRASS, aller dans File -> Import vector map -> Multiple formats using OGR. Ceci ouvre une fenêtre pour le module v.in.ogr.


Sélectionner le premier fichier à importer
4. Sous l'onglet Options, cocher les cases des options Create 3D output et Override dataset projection. Dans le champ OGR datasource name:, cliquer sur le bouton représentant un dossier, naviguer dans l'arborescence et sélectionner le premier fichier SWBD avec l'extension .shp. Dans le champ Name for output vector map:, entrer le même nom que le fichier source.


Lancer l'importation
5. Cliquer sur le bouton Run pour débuter l'importation. L'opération est détaillée dans la fenêtre Output - GIS.m.


Importer les autres fichiers SWBD
6. Quand l'opération qui peut prendre plusieurs secondes est achevée, dans la fenêtre du module v.in.ogr, cliquer de nouveau sur le bouton représentant un dossier, sélectionner le deuxième fichier SWBD du type .shp, modifier le nom pour le fichier de sortie et cliquer sur le bouton Run. Répéter l'opération pour les autres fichiers. Fermer le module v.in.ogr et quitter GRASS.
Si vous le voulez, vous pouvez visualiser le résultat en créant des couches vectorielles et en assignant à chacune un des fichiers SWBD créés, mais ce n'est pas nécessaire.


[modifier] Re-projection des SWBD

Entrer dans GRASS dans le projet en projection UTM
7. Relancer GRASS et entrer dans le projet avec la projection UTM.
Si vous n'avez pas encore créé ce projet, consulter le didacticiel pour carte topographique vectorielle pour savoir comment procéder.


Lancer le module de re-projection "v.proj"
8. Aller dans Vector -> Develop map -> Reproject vector. Dans la fenêtre du module v.proj qui vient de s'ouvrir, dans le champ Name of input vector map:, entrer le nom du premier morceau de carte des SWBD qui a été importé précédemment. Dans Location containing input vector map:, entrer le nom du projet sous projection Lat/Lon que l'on vient de quitter. Dans Name for output vector map:, entrer le même nom que la carte source en ajoutant _UTM à la fin pour la distinguer de la première. Cliquer sur Run pour lancer la re-projection en UTM.


Re-projeter les autres fichiers SWBD
9. L'opération achevée, modifier le nom du fichier source et celui de sortie par celui du deuxième fichier SWBD puis cliquer sur Run. Répéter l'opération pour les autres morceaux de carte puis fermer le module v.proj.


[modifier] Exportation des SWBD au format SVG

Exporter le fichier au format SVG
10. Aller dans File -> Export vector map -> SVG. Dans le champ Name of input vector map:, cliquer sur le bouton et sélectionner le premier SWBD avec l'extension _UTM. Dans Name for SVG output file:, entrer le nom du fichier source sans oublier d'indiquer l'extension .svg qui n'est pas ajoutée automatiquement. Dans Output type:, sélectionner line : si vous laissez poly (polygones) qui est la sélection par défaut, GRASS n'exportera que les polygones avec un centroïde et pas une grande partie des lacs qui n'en possèdent pas. Cliquer sur le bouton Run pour lancer l'exportation. Le fichier est enregistré par défaut dans le répertoire C:\GRASS.
Remarque : Si vous ne trouvez pas le chemin d'accès à un module grâce au menu, vous pourrez toujours lancer celui-ci en entrant son nom (par exemple 'v.out.svg' ) dans la partie inférieure de la fenêtre 'Output - GIS.m' puis en cliquant sur le bouton 'Run (GUI)'.


11. Répéter l'opération avec les autres fichiers SWBD puis fermer le module et quitter GRASS.


[modifier] Création de la carte des SWBD dans Inkscape

[modifier] Montage des fichiers SVG

Ouvrir les deux premiers fichiers dans Inkscape
1. Ouvrir le premier fichier SWBD au format .svg dans Inkscape. Importer le deuxième fichier et l'aligner soigneusement par rapport au premier. Sauvegardez la carte dans votre dossier de travail sous le nom < SWBD_votre_carte.svg >.


Importer les autres fichiers et les aligner
2. Importer les autres morceaux de carte SWBD en les alignant par rapport aux précédents.


Dégrouper le premier fichier
3. Commencer à nettoyer les fichiers et combiner les chemins : sélectionner l'un des fichiers et le dégrouper. Supprimer le remplissage des aires qui avaient dans GRASS un centroïde et réduire l'épaisseur des contours à < 0,2 > pour faciliter la visualisation.


Sélectionner le chemin avec un cadre
4. Activer l'outil d'édition des chemins. Dans le cas d'une île comme dans notre exemple, sélectionner le chemin représentant la côte principale et qui possède un cadre formant la limite du fichier SWBD original.


Supprimer le cadre
5. Sélectionner une ligne de ce cadre et supprimer le segment entre les deux nœuds puis l'ensemble des nœuds qui forment ce cadre.


Répéter l'opération avec le deuxième fichier
6. Sélectionner le groupe de chemins adjacent et procéder de la même façon pour supprimer tous les segments et nœuds qui ne représentent pas un trait de côte ou les limites d'un lac. Sauvegarder.


Combiner les chemins
7. Sélectionner les chemins représentant la côte de ces deux premiers fichiers nettoyés et les combiner. Faire de même si des lacs se trouvent à la limite des fichiers SWBD originaux et sont coupés en deux.


Vérifier si le chemin n'est pas brisé
8. Sélectionner deux par deux les nœuds terminaux à la jonction des anciens chemins et les joindre afin que le chemin final ne soit pas discontinu. S'aider de l'outil pour dessiner des lignes à main levée (F6) pour savoir à quels endroits le chemin est brisé. Il ne devrait y avoir de nœud terminal qu'à la jonction avec les groupes de chemins qui n'ont pas encore été nettoyés. Sauvegarder.


Nettoyer les autres morceaux de carte
9. Répéter ces opérations avec chaque autre groupe de chemins (fichiers SWBD) pour n'avoir plus que des chemins continus. Cette opération peut prendre un temps assez long et nécessiter beaucoup de ressource machine, en particulier si la carte contient de nombreux chemins comme c'est le cas dans notre exemple des îles Malouines avec des côtes très découpées, mais c'est une étape importante pour éviter les erreurs lorsque l'on remplira les zones (îles, lacs) de couleur. Sauvegarder.


Remarque : Si votre ordinateur et / ou Inkscape ne sont pas en mesure de gérer tous les fichiers SWBD (qui peuvent compter plusieurs dizaines de milliers de nœuds) en une seule vue, vous pouvez ouvrir le premier fichier, le nettoyer puis simplifier le trait de côte comme indiqué au chapitre suivant (il est important de supprimer les cadres avant de simplifier les chemins). Sauvegardez puis importez le deuxième fichier. Nettoyez-le, simplifiez-le et combiner le chemin du trait de côte avec celui du premier fichier. Procéder de la même façon avec les fichiers SWBD suivants.

[modifier] Simplification des chemins

Régler le seuil de simplification
10. Ouvrir les préférences globales d'Inkscape. Dans la section Divers, indiquer comme seuil de simplification une valeur de < 0,0050 >[4]. Fermer la fenêtre de dialogue.


Simplifier le chemin principal
11. Sélectionner le chemin principal (dans notre exemple, les deux plus grandes îles), zoomer vers 200% ou davantage pour avoir un bon contrôle de la forme du chemin et appuyer sur < CTL + L > pour le simplifier une première fois. Répéter la simplification si nécessaire afin d'arriver à un nombre de nœuds raisonnable pour l'Internet sans déformer le tracé.


12. Créer un calque Côtes et y déplacer le(s) chemin(s) simplifié(s).


13. Créer un calque Lacs au-dessus du calque Côtes destiné à accueillir toutes les surfaces aquatiques de ce type. Le rendre invisible.


Déplacer les lacs dans leur calque
14. Dans le calque racine, sélectionner chaque polygone représentant un lac et une île sur un lac et le déplacer vers son calque. S'aider du trait de côte principal (dont vous aurez éventuellement modifié la couleur du contour pour faciliter sa visualisation) pour départager les îles sur la mer des lacs. Vérifier soigneusement de n'en avoir oublié aucun ou de ne pas avoir fait d'erreur.


Combiner les chemins représentant les îles
15. Quand tous les lacs et îles sur les lacs ont été déplacés dans le calque Lacs, sélectionner l'ensemble des polygones restant dans le calque racine qui représentent les îles en mer et les combiner en un seul chemin.


Simplifier le chemin
16. Simplifier ce chemin pour réduire le nombre de nœuds tout en préservant la forme de son tracé puis le déplacer dans le calque Côtes et le combiner au(x) tracé(s) qui s'y trouve(nt) déjà. Sauvegarder.


17. Activer le calque Lacs et le rendre visible.


Exclure les îles sur les lacs
18. S'il y a des îles sur les lacs, les sélectionner deux par deux et procéder à une exclusion (Chemin -> Exclusion) pour que ces îles soient des trous dans les lacs qui laisseront apparaître les calques placés en-dessous dans la carte finale.


Simplifier le chemin des lacs
19. Sélectionner l'ensemble des lacs, les combiner puis simplifier le chemin résultant. Sauvegarder.


[modifier] Finalisation de la carte

Spécifier la couleur de la convention pour les contours
20. Sélectionner l'ensemble des chemins contenus dans le document (CTL + ALT + A) et ouvrir la boîte de dialogue Remplissage et contour. Spécifier pour les contours la couleur bleue dédiée de la convention colorimétrique de la WP-fr (valeur hexadécimale : #0978AB). Désélectionner.


Spécifier la couleur de la convention pour le remplissage des lacs
21. Sélectionner les lacs et remplir ces polygones du bleu clair de la convention (#DAF0FD). Sauvegarder.


Cette carte des surfaces aquatiques est à présent prête à être intégrée dans la carte envisagée :

  • Corriger et compléter une carte du relief ou topographique créée à partir de modèles numériques de terrain ;
  • Servir de base pour la création d'une carte géographique qui sera complétée avec des informations additionnelles (frontières, villes, etc.).


Atelier graphique
Les didacticiels pour la cartographie numérique géoréférencée
Cartographie
Carte géographique vectorielle - Carte du relief bitmap - Carte topographique vectorielle
Carte vectorielle des surfaces aquatiques - Optimisation des ombres du relief - Intégration des données complémentaires
Ressources cartographiques géoréférencées - Conventions colorimétriques
Aide:Cartographie - Atelier graphique-Cartes

[modifier] Notes

  1. Un des défauts des fichiers SRTM est leur manque de précision au niveau des côtes, en particulier en raison des vagues qui faussent les données du radar embarqué. Les fichiers SWBD fournis par la NASA sont destinés à pallier ce défaut.
  2. Exemple : le fichier e001n48e.zip couvre la zone comprise entre les méridiens 001° E et 002° E et les parallèles 48° N et 49° N, la lettre finale « e » indiquant que la zone se situe en Eurasie.
  3. La projection Lat/Lon est celle utilisée par les SWBD. C'est donc dans ce projet qu'on importera d'abord ces fichiers.
  4. Chiffre variable en fonction du nombre de nœuds sur le chemin. Effectuer des tests avec différentes valeurs pour savoir laquelle est la plus adaptée.