1. Vector tiles – la technologie des cartes Web de demain?

    Les Vector tiles («tuiles ou tesselles vectorielles») contiennent des données géographiques optimisées en vue d’une représentation graphique par extraits, au sein de plages de zoom bien définies. On peut les comparer aux tuiles ou tesselles tramées (raster) bien connues des applications de cartes Web, mais elles comprennent des données brutes prétraitées avec des géométries et des attributs de vecteurs.

    Les Vector tiles bidimensionnelles doivent leur notoriété à Mapbox qui les a fait connaître en 2014 en publiant la spécification «Mapbox Vector Tiles». Cette société utilise la projection de Mercator Web et une mosaïque régulière basée sur des tesselles de 256x256 pixels. Les Vector tiles ne sont toutefois pas limitées à une projection cartographique particulière et peuvent être définies pour un grand nombre de dimensions et de modèles de mosaïques.

    Les Vector tiles sont transmises et échangées comme les tesselles tramées. La transmission s’effectue sous une forme compressée (zippée) via une interface – ex. : https://example.com/17/65535/43602.pbf resp. *.mvt – ou par le biais d’un fichier unique compressé (notamment au format mbtiles). Au sein du client, les Vector tiles – auxquelles des instructions de représentation sont jointes – sont converties en une représentation cartographique. Cette conversion («rendering») est de préférence réalisée à l’aide d’un coprocesseur GPU, ce qui rend la représentation particulièrement fluide.

    Aujourd’hui, les clients les plus divers peuvent représenter des Vector tiles, de l’appli pour mobile au SIG de bureau en passant par les SIG Web. Les représentations cartographiques (styles en anglais) dépendent du client puisque c’est lui qui décide en cette matière. Mapbox a publié un «Styling Language» pour son logiciel client et a ainsi conçu des styles de cartes très variés (cf. Mapbox article ). A l’instar de Mapbox, chaque fournisseur dispose de ses propres styles de cartes, chacun de ces derniers se fondant sur un «Styling Language» spécifique au client et sur des données de mosaïque bien précises. Les tesselles vectorielles sont prédéfinies par presque tous les fournisseurs – dont Google, Apple, Mapbox, Mapzen et Esri – qui considèrent qu’elles font partie intégrante de leur interface ; OpenMapTiles permet même de les télécharger. Mapbox et ArcGIS Pro proposent des éditeurs spécifiques pour adapter les styles de cartes ; c’est l’éditeur de style normal qui sert à cela dans le cas de QGIS.

    image

    Figure 1 : principe de génération de Vector tiles. Source : Gaffuri (2012).

    On peut générer les Vector tiles soi-même si l’on dispose d’un logiciel approprié (cf. page web Awesome Vector Tiles ). Lors de la génération, les géodonnées originales sont filtrées en fonction du niveau de zoom avant de subir une simplification géométrique. Il en résulte un jeu de données optimisé, de plus en plus détaillé d’un niveau de zoom au suivant. Les objets sont enfin subdivisés en tesselles (tiling) et codés (Protocol Buffers, PBF) ; cf. figure 1. Il est intéressant de noter ici que des objets tels que des écritures, des routes et des surfaces peuvent dépasser les limites des tesselles dans la mosaïque des données. Le logiciel client peut alors décider si ces objets doivent être détourés ou non (clipping).

    Les données vectorielles sont tellement détaillées qu’elles n’ont bien souvent pas besoin d’être générées jusqu’au niveau maximal. Si l’on continue à zoomer, les données vectorielles sont tout simplement agrandies («over-zooming»). Cette limitation à un niveau maximal prédéfini facilite notamment la tâche des fournisseurs de Vector tiles, principalement lorsque des zones géographiques d’une certaine ampleur doivent être prétraitées.

    Les Vector tiles présentent plusieurs avantages dans l’optique de la visualisation de cartes :

    • Efficaces pour la transmission : les paquets de données sont petits par rapport à des données vectorielles non mosaïquées, car seules les tesselles incluses dans l’extrait défini sont transmises – pour autant qu’une transmission soit effectivement requise (comme indiqué, certains fournisseurs ne transmettent plus de nouvelles données à partir d’un certain niveau de zoom, le niveau 14 par exemple).
    • Compactes : en comparaison de tesselles tramées (par exemple OGC WMTS) aussi, on observe un gain de vitesse, les tesselles vectorielles contenant généralement moins d’octets (< 5 Ko).
    • Efficaces pour le serveur : un serveur Web est suffisant pour la distribution des données vectorielles – comme pour les tesselles tramées – et les données peuvent simplement être enregistrées dans la mémoire cache. Aucun serveur SIG particulier (ce qui est par exemple le cas d’OGC WMS) n’est requis pour découper un extrait de carte.
    • Interactives et informatives: en dépit de la compacité des tesselles vectorielles, le client accepte des requêtes pouvant porter sur les attributs des objets de la carte (cf. figure 2) et il est par exemple possible de modifier la langue associée à ces objets.
    • Flexibles et adaptables : le client peut procéder à une rotation de la carte, les écritures pouvant rester horizontales. Et il est devenu plus simple – si l’on dispose du savoir-faire requis - de sélectionner la représentation de la carte ou de l’organiser soi-même.

    Les Vector tiles ne sont toutefois pas exemptes d’inconvénients ou de limitations : ainsi, on enregistre presque toujours des pertes par rapport aux données originales (en raison notamment du filtrage et de la généralisation, d’arrondis de coordonnées / du codage, du détourage de lignes et de polygones). Elles sont donc plus difficiles à analyser et ne conviennent pas pour une édition suivie d’un retour au jeu de données original.

    image

    Figure 2 : représentation cartographique incluant une «fenêtre» présentant le contenu (JSON) d’une tesselle vectorielle. Source : Mapzen.

    De toute évidence, la technologie des Vector tiles est encore en pleine évolution (métadonnées, 3D, etc.), ce qui explique aussi l’absence de standardisation/normalisation de la part d’OGC/ISO pour l’heure (cf. OGC). Les avantages des Vector tiles sont toutefois séduisants et les applications comme carte d’arrière-plan sont toutes trouvées dans le domaine des SIG Web (voire aussi cette article an anglais). Leur utilisation comme format d’échange ou pour des applications mobiles hors ligne semble également riche de promesses. Jusqu’où les Vector tiles iront-elles? C’est l’avenir qui nous le dira.

    Souhaitez-vous savoir plus sur ces technologies? Nous offrons des formations avancées (voir le programme), des conseils et certains services. Contact: Prof. Stefan Keller.

    Cet article a été publié pour la première fois sous le titre “SOGI FG4: GIS Technology News” dans l’ OSIG Bulletin d'information n ° 4, 2017. Merci à Markus Schenardi et à la section OSIG Technology SIG.