Débuter avec MapLibre et MapTiler

Le monde du WebMapping évolue, et, clairement, il n’y a pas que Leaflet dans la vie. Aujourd’hui, on va donc parler de tuiles vectorielles, de MapLibre et de MapTiler.
En avant pour un petit tuto !

La carte

Objectif

Depuis quelques années, il est possible d’utiliser des tuiles vectorielles pour les fonds de carte. Ce type de tuile permet notamment aux développeurs de personnaliser le style des cartes. Il est aussi possible d’auto-héberger les fichiers de styles, généralement au format JSON.

Pour les débutants, le mieux est de commencer avec des fournisseurs en ligne, comme MapTiler.

L’objectif ici sera simplement d’afficher une carte, avec un fond de carte utilisant des tuiles vectorielles. La gestion des données viendra un peu plus tard.

MapLibre sert à afficher la carte. MapTiler fournit ici les ressources cartographiques.

Le code

Code pour le CDN

<script src="https://unpkg.com/maplibre-gl@^5.24.0/dist/maplibre-gl.js"></script>
<link href="https://unpkg.com/maplibre-gl@^5.24.0/dist/maplibre-gl.css" rel="stylesheet" />

Le code HTML

<div id="map"></div>

Le code CSS

#map {
	display: block;
	width: 500px;
	height: 500px;
	border: solid 1px black;
}

Le code JavaScript

    var map = new maplibregl.Map({
	container: 'map', // container id
	style: 'https://api.maptiler.com/maps/streets-v4/style.json?key=####', //style MapTiler
	center: [2.895556, 42.698611], // starting position [lng, lat]
	zoom: 10 // starting zoom
    });

Explication

Le code est assez trivial. Les habitués de Leaflet n’auront aucun mal à le comprendre.

D’abord, il fait créer une variable qui permettra d’instancier l’objet MapLibre.
Le container correspond à la div qui accueille la carte. Son identifiant est utilisé ici.
Le style permet de gérer le fond de carte. Ici j’utilise un fond fourni par MapTiler. Pour cela, il faut créer un compte sur le site de MapTiler et récupérer une clé API. La clé doit être passée à la fin de l’URL (les ####).
Le center correspond aux coordonnées du centre de la carte. Il faudra évidemment les choisir en fonction de vos besoins. On verra dans d’autres tutoriels comment automatiser cette tâche.
Le zoom définit, comme son nom l’indique, le niveau de zoom au chargement de la carte. Les valeurs vont de 0 (le monde entier) à 22 (quelques pâtés de maisons).

Vous avez à présent le code nécessaire pour une première carte toute simple. Il ne reste plus qu’à la décorer et à la rendre interactive.
La suite dans un prochain tutoriel.

Liens

Commentaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *