Afficher des tuiles (TiTiler)¶
Cette page vous montre comment passer d'un raster posé sur S3 à une couche affichable dans n'importe quel client carto, sans étape de préparation. C'est ce que fait TiTiler : il génère les tuiles à la volée, à partir des fichiers COG stockés dans S3. Vous déposez un COG, il est affichable dans la foulée - il n'y a pas de pyramide à calculer, pas de cache à remplir, et donc rien à refaire quand le fichier est mis à jour.
Documentation de l'API
L'ensemble des endpoints et de leurs paramètres est explorable directement sur https://titiler.urbiverde.com/api.html.
Prérequis : un COG¶
Tout repose sur le format du fichier. Un Cloud Optimized GeoTIFF est organisé pour être lu par morceaux, ce qui permet à TiTiler de ne récupérer que la portion utile à chaque tuile. Avec un GeoTIFF ordinaire, il doit au contraire relire l'intégralité du fichier pour chaque tuile : l'affichage fonctionne encore sur un petit raster, mais devient rapidement inutilisable à mesure que le volume augmente.
Si votre fichier n'est pas encore au bon format, la conversion et sa vérification tiennent en deux commandes :
# Convertir
gdal_translate entree.tif sortie_cog.tif -of COG -co COMPRESS=DEFLATE
# Vérifier
rio cogeo validate sortie_cog.tif
Comment TiTiler atteint vos données¶
TiTiler lit vos fichiers directement sur S3, avec son propre compte de service. Vous
lui donnez le chemin de l'objet au format s3://, et aucun en-tête d'authentification
n'est nécessaire côté client :
https://titiler.urbiverde.com/cog/tiles/WebMercatorQuad/{z}/{x}/{y}.png?url=s3://<votre-bucket>/produits/sortie_cog.tif
Si TiTiler ne parvient pas à lire votre bucket, demandez l'accès à l'IF Operator.
Afficher une couche¶
Le fonctionnement est toujours le même : vous indiquez à TiTiler où se trouve le COG, via
le paramètre url, et il vous répond en tuiles.
https://titiler.urbiverde.com/cog/tiles/WebMercatorQuad/{z}/{x}/{y}.png?url=s3://<votre-bucket>/produits/sortie_cog.tif
Depuis un item STAC¶
Les produits sortis d'une chaîne de traitement sont publiés au catalogue sous forme
d'items STAC : un fichier JSON qui décrit le produit et référence ses fichiers, appelés
assets. Plutôt que de viser un .tif précis, vous pouvez donner l'item à TiTiler et lui
désigner l'asset à afficher - c'est la voie naturelle pour tout ce que produit la
plateforme.
L'endpoint devient /stac/ au lieu de /cog/, et un paramètre assets s'ajoute :
https://titiler.urbiverde.com/stac/tiles/WebMercatorQuad/{z}/{x}/{y}?url=<url-de-l-item-json>&assets=ndvi/ndvi_20260624.tif&rescale=-1,1&colormap_name=rdylgn&resampling=nearest&tilesize=512
L'intérêt est que l'item reste le point d'entrée stable : ses métadonnées décrivent l'emprise et la date, et si l'organisation des fichiers évolue, c'est l'item qui en rend compte, pas votre application.
| Endpoint | Ce que vous passez dans url |
Quand l'utiliser |
|---|---|---|
/cog/ |
Le COG lui-même | Un fichier isolé, déposé à la main |
/stac/ |
L'item STAC, plus assets= |
Un produit publié au catalogue |
Métadonnées et emprise¶
Avant de centrer une carte ou de choisir des bornes d'affichage, il est souvent utile de savoir ce que contient le fichier : emprise, nombre de bandes, type de données. Cet endpoint vous le dit sans que vous ayez à télécharger quoi que ce soit.
Document TileJSON¶
La plupart des clients carto savent lire un TileJSON, qui décrit d'un coup l'URL des tuiles, l'emprise et les niveaux de zoom disponibles. C'est l'URL à leur donner quand vous voulez leur éviter une configuration manuelle :
https://titiler.urbiverde.com/cog/WebMercatorQuad/tilejson.json?url=s3://<votre-bucket>/produits/sortie_cog.tif
Dans une carte Leaflet¶
Côté application web, la couche s'ajoute comme n'importe quelle couche de tuiles. Pensez simplement à encoder l'URL du COG, puisqu'elle voyage à l'intérieur d'une autre URL :