Serveur d'overlays MapLibre pour gpx.studio, affichant les courbes de niveau et l'estompage du relief à partir des données ouvertes de l'IGN (Géoplateforme).
- Courbes de niveau (
/style.json) : rendu hybride — tuiles raster IGN (ELEVATION.CONTOUR.LINE) aux zooms 6–13, puis rendu vectoriel des tuilesISOHYPSEà partir du zoom 14 : courbes maîtresses épaissies et étiquettes d'altitude. - Estompage (
/hillshade.json) : couche IGNEstompage(ombrage du relief en noir translucide, à la manière d'OpenTopoMap), superposable à n'importe quel fond de carte.
Le serveur proxifie les tuiles IGN avec un cache disque local.
$ docker compose up -dou, sans cloner le dépôt :
$ docker run -d -p 4810:8080 -v contours-cache:/cache ndeloof/contoursPuis ouvrir http://localhost:4810/ : une carte de démonstration affiche les deux overlays au-dessus d'OpenStreetMap.
Options (à ajouter après le nom de l'image) : -cache-ttl (défaut 720h) et
-base-url URL pour imposer l'URL publique des tuiles dans les styles
(sinon dérivée de la requête, en honorant X-Forwarded-Proto /
X-Forwarded-Host derrière un reverse proxy).
- Ouvrir Calques → Paramètres des calques → Calques personnalisés ;
- ajouter un calque de type overlay avec l'URL
http://localhost:4810/style.json— c'est la présence de.jsondans l'URL qui indique à gpx.studio qu'il s'agit d'un style vectoriel ; - ajouter un second overlay avec
http://localhost:4810/hillshade.jsonpour l'estompage ; - cocher les deux overlays dans le panneau Calques pour les activer.
Les deux overlays étant indépendants, chacun peut être activé (et son opacité réglée) séparément.
Courbes de niveau seules, puis courbes + estompage (Aussois, Savoie) :
| Courbes de niveau | Courbes + estompage |
|---|---|
![]() |
![]() |
Les étiquettes d'altitude utilisent la police
Noto Sans Regular: elles s'affichent avec les fonds de carte fournissant ces glyphes (dont le fond par défaut de gpx.studio).
| Route | Description |
|---|---|
GET /style.json |
Style MapLibre de l'overlay courbes de niveau |
GET /hillshade.json |
Style MapLibre de l'overlay estompage |
GET /raster/{z}/{x}/{y}.png |
Tuiles raster courbes de niveau (zooms 6–18, proxy WMTS IGN) |
GET /vector/{z}/{x}/{y}.pbf |
Tuiles vectorielles ISOHYPSE (zooms 14–19, proxy TMS IGN) |
GET /hillshade/{z}/{x}/{y}.png |
Tuiles d'estompage (zooms 0–15, proxy WMTS IGN) |
GET / |
Page de démonstration |
Données © IGN, diffusées librement via la Géoplateforme (licence ouverte Etalab).

