La donnée vecteur est répartie en listes d’entités vecteurs, qu’on appelle parfois couches et qui sont purement abstraites, à ne pas confondre avec les couches cartographiques qui sont des rendus de style.
Chaque entitée est constituée d’un vecteur ainsi que des attributs. Les type d’attributs sont définis pour toute la couche. Il s’agit tout simplement d’un tableau, avec des colonnes définies. Sur QGIS, on y accède d’un clic droit sur la couche puis Ouvrir la table d’attributs .
ajouter des attributs aux objets de la carte(comme pour le BIM)
mettre les géométries dans une colonne du tableau
Une couche vecteur spécifique est forcément de type point, ligne ou polygone mais aussi multi-point, multi-lignr, multi-polygone, qui permet à chaque vecteur d’être composé multiple géométries. Il s’agit là d’un choix sémantique : on préfèrera par exemple regrouper des polygones en une entitée unique (identifiant et attributs uniques) dans l’intérêt de la gestion. Ainsi les communes françaises sont de type multi-polygone pour permettre les enclaves car l’identité de la donnée est communale, fût-elle morcellée sur le territoire.
Pour reconstituer notre boulevard, nous téléchargeons la donnée ROUTE 500 disponible en libre téléchargement sur le site professionnel des l’IGN.
Catalogues de donnéesdu site professionnels.ign.fr .
QGIS permet de numériser des entités vectorielles sur la carte. Il s’agit alors d’édition des données et non plus du projet : le travail n’est pas enregistré dans le projet (comme c’est le cas pour l’ajout de couches, le style, la projection...) mais dans le fichier de données.
Cela s’appelle le Mode édition , que l’on doit activer sur une couche vectorielle dès lors qu’on souhaite modifier ses données. C’est valable pour la numérisation d’entités, la suppression, l’ajout de colonnes, etc.
Pour créer une couche, on clique sur le menu Couche- → Créer une couche . On a alors le choix entre Shapefile et Spatialite , dont les particularités sont décrite plus bas.
En préalable, il faut avoir choisi un boulevard pour l’étude. Voir : Sujet .
Nous allons créer une couche de type Polygone dans un nouveau fichier SQLite
La couche est vide. Pour lui ajouter des entités, nous devons Basculer en mode édition
en cliquant sur l’icone
, qui fait partie de la barre d’outil Numérisation
(Vue-
→
Barres d’outils-
→
Numérisation
).
Commençons par un essai :
Attention : rien n’est enregistré tant qu’on enregistre pas explicitement via le menu du mode édition
. Par ailleurs, il est plus sûr de clôre le mode édition dès qu’on n’a plus à modifier les données, en cliquant sur la même îcone
. QGIS demandera alors s’il faut enregistrer ou annuler les modifications. Mais la règle est d’enregistrer régulièrement, après chaque action, typiquement toutes les 5 minutes.
Après familiarisation avec le l’outil de numérisation, nous pouvons dessiner les îlots sur le plan Tardieu.
Le format Shapefile est le premier standard de facto pour stocker des données vecteurs dans des fichiers, créé par ESRI en 1998. Il reste aujourd’hui l’un des formats les plus répandus. Sur QGIS, certains plugins travaille directement à partir du Shapefile ou en produisant une Shapefile.
Le Shapefile est en fait constitué de plusieurs fichiers, gardant le même nom avec des extensions différentes. Pour Le Shapefile TRONCON_ROUTE , on a :
MapInfo est un logiciel concurrent. Son format est lui aussi devenu standard de facto . Dans le même principe, une couche TRONCON_ROUTE se répartit en 2 fichiers :
TRONCON_ROUTE.mif : vecteurs
TRONCON_ROUTE.mid : attributs
Les multiples fichiers sont solidaires pour la même couche : l’un ne peut pas être exploité sans les autres. Ceci pour des raisons historiques : pour des raisons de performances d’accès, il était peu pratique de traiter avec une archive. C’était plus simple en éclant par fichier. Encore aujourd’hui, ce design permet d’ouvrir en lecture de très lourds shapefile, en ne chargeant que le nécessaire au fil de la navigation dans la vue cartographique de QGIS, grâce à l’index du Shapefile.
De ce fait, pour transferer une donnée Shapefile ou MapInfo, on l’archive généralement au format ZIP.
La donnée ROUTE téléchargée précédemment est au format Shapefile. Nous allons ouvrir la donnée TRONCON_ROUTE dans QGIS pour travailler avec.
Pour améliorer la lisibilité des lignes :
Prononcé SQL-Lite
, SQLite n’est à l’origine pas spécifique à la géo. C’est une base de données relationnelle dans un seul fichier. Il est fonctionnellement similaire au format de base de données Microsoft Access.
Le fichier .sqlite contient des tables. Tout comme dans MySQL ou PostgreSQL, chaque table contient des lignes (les entités) et des colonnes (les attributs).
Ce format est prometteur, du fait de sa simplicité logique (équivaut à un répertoire de Shapefiles) et sa capacité de rassembler un jeu de données complet.
Précédement pour de la numérisation, nous avons créé le fichier td/vecteur/travail.sqlite . Si c’était un shapefile, nous aurions 4 à 6 fichiers solidaires pour cette simple couche, car le format Shapefile est ainsi, ce qui oblige à zipper pour transférer par mail. Le format SQLite est plus simple : tout est dedans.
De surcroit, le fichier SQLite peut contenir de nombreuses couches car c’est une véritable base de données, comme un fichier Microsoft Access. Cela permet d’exécuter des requêtes SQL pour effectuer des traitements avancés sans interface graphique.
Pour nous, c’est un puissant outil de stockage. On pourrait intégrer à notre base travail.sqlite toutes les autres données vectorielles du projet, simplifiant d’autant l’arborescence des fichiers.
Une base de données PostGIS est en fait la célèbre Base de donnée relationnelle PostgreSQL dans laquelle on a importé les fonctions PostGIS qui permettent de manipuler des géométries 2D et 3D. Ce sont des logiciels libres.
La base PostgreSQL est client/serveur
, contrairement à SQLite qui est local
. Le client/serveur est ce qu’on appelle le cloud
. Cela signifie que :
PostGIS est à PostgreSQL ce que Spatialite est à SQLite : le premier est une cartouche géographique du second. PostgreSQL et SQLite sont des bases de données génériques. PostGIS et Spatialite sont des fonctions spécifiques à la géo qui reposent sur PostgreSQL et SQLite, respectivement.
PostGIS est très utilisé dans le secteur de l’information géographique, et l’est de plus en plus. Son intérêt est évident pour qui veut mutualiser ou centraliser des données pour une équipe, donner un accès temps réel
aux partenaire, etc.
Il est également utilisé en local (pour soi-même, sur son propre ordinateur), mais Spatialite est souvent suffisant pour ce cas.
Le standard WFS définit un mode de requêtage s’appuyant sur HTTP : il organise la consommation de couches vectorielles. Contrairement à un fichier qui serait téléchargé intégralement, la donnée est potentiellement infinie et le WFS permet de récupérer à la demande les entités filtrées par région ou par attribut.
C’est du streaming de couche , conceptuellement comparable au streaming de vidéos : on récupère la donnée par morceaux, au fil de leur consultation.
Pour identifier des tronçons de route :
Pour visualiser la couche en tant que tableau , cliquer avec le bouton droit sur son nom puis Ouvrir la table d’attribut (sinon depuis le menu Couche )
La méthode la plus commune pour interroger des données tabulaires est le langage SQL, très puissant pour effectuer des jointures entre plusieurs tables, des agrégation de données, calculs avancés...
Un SIG comme QGIS apporte des interfaces graphiques pour plus d’intuitivité qui font néanmoins appel à des sous-ensembles de la syntaxe SQL, notamment les expression booléennes (ayant pour résultat VRAI ou FAUX .
Par exemple :
Ces expressions sont appliquées à chaque entitée pour être évaluées à VRAI ou FAUX. On les exploite dans différents contextes :
Nous aborderons plus loin les opérations-types de l’analyse : filtre, attributs calculés, jointures, agrégation. Ces opérations sont applicables aussi bien pour analyser
que pour afficher
. Dans un cas, le produit de l’opération devient une donnée en soi. Dans l’autre, il s’agit de paramétrage pour l’affichage : le traitement se fait à la volée
.
Filtrer consiste à restreindre les entités. On a en sortie une donnée de structure identique à la donnée d’entrée qui est l’ensemble des entités en entrée qui valident la condition du filtre.
Filtrer ne change pas la cardinalité des données : une route reste une route, un point un point, etc. Les entités ne sont pas dédoublées.
Le filtre est défini par une expression algébrique booléenne, c’est-à-dire ayant pour valeur VRAI ou FAUX , pour l’entité respective pour laquelle elle est évaluée. Si la valeur est VRAI alors l’entité est inclue dans la donnée en sortie. Si c’est FAUX , elle en est exclue.
Exemple d’expression de filtre pour une données routes : nb_voie >= 2 (VRAI si le nombre de voies est supérieur ou égal à 2)
Définir un filtre sur une couche vectorielle de QGIS ne touche qu’au projet et pas aux données. Il altère la manière dont le projet voit la donnée. C’est une abstraction d’accès.
Ainsi un fichier de données peut être présent via de multiples couches, qui accèdent chacune un sous-ensemble de la donnée via son filtre respectif.
vocation régionale
Fournisseurdésigne ici le pilote (logiciel) par lequel QGIS accède au fichier.
régionaleexacte (à la majuscule près), cliquer sur le bouton
Tout(à droite sous l’encadré Valeurs ) puis double-cliquer sur la valeur Liaison régionale apparue dans la liste.
La carte ne montre alors que les entités validant la condition. La table attributaire est restreinte également aux entités validant la condition. En fait, le filtre s’applique en amont de QGIS du côté du pilote d’accès à la donnée
Après l’opération, désactiver le filtre en supprimant le texte de l’expression (vider et cliquer sur OK ), pour la sélection de notre boulevard.
à vocation régionale
La nouvelle couche troncon_route (SQLite) est automatiquement ajoutée au projet et nous pouvons désactiver TRONCON_ROUTE pour mieux la voir.
Au niveau métier, le tompon représente la propagation d’un phénomène dans un rayon donné, ou les zones de X mètres autours d’une surface donnée. C’est transformer le concept de distance (à quelque chose ) en surface.
Le tampon est la surface regroupant tout point situé à une distance inférieure donnée d’une géométrie initiale.
La zone tampon pour un point est un disque qui a pour rayon la distance du tampon : dans un rayon de 10 km autours de [...]
QGIS ne permet pas les courbes, seulement des segments droits pour les lignes et polygones. Un cercle est donc approché par un hexagone à N points. Lors de l’application d’un tampon, on peut préciser ce N .
Pour notre proposition d’aménagement, nous devons choisir une largeur. La cohérence dépend du boulevard choisi. On peut choisir la largeur du boulevard actuel qui a été construit, ou proposer une autre largeur. Comme exemple, pour le boulevard Voltaire on propose 30 mètres de largeur.
La distance du tampon est la moitié de la largeur (le tampon s’établie de part et d’autre de la ligne).
Le fichier td/projet-1.qgs doit représenter le projet QGIS dans son état à ce stade. Au délà de cette consigne, il est conseillé d’archiver la totalité du répertoire afin de pouvoir, en cas de problème, revenir à cet état.
De plus, les multiples opérations et libres essais ont potentiellement laissé le projet dans un état désordonné.