Le projet ROK4
Le projet ROK4 est un projet open-source (sous licence CeCILL-C) développé par les équipes du projet Géoportail (@Geoportail) de l’Institut National de l’Information Géographique et Forestière (@IGNFrance).
Contenu du projet
Il comprend des outils de prégénération (en Perl) et génération (en C++) de pyramides de données image et vecteur, et un serveur de diffusion (en C++) de ces données en WMS, WMTS, OGC API Tiles et TMS. Vous pouvez trouver plus de détails dans ces projets.
Des outils de gestion (écrits en Perl) permettent entre autre l'analyse et la suppression des pyramides.
Une refonte des outils écrits en Python est en cours, et remplacera au fur et à mesure ceux en Perl.
Les librairies génériques du projet, en Perl, en Python et en C++ sont dans des projets à part afin d'être plus facilement réutilisables.
Des styles et des tile matrix sets, utilisés au niveau des générations et de la diffusion sont dans des projets indépendents.
Des configurations Docker sont également disponibles pour permettre la compilation des applicatifs sous forme d'image docker, ainsi que l'utilisation des images pour tester le fonctionnement de ces applicatifs.
Des paquets debian sont également disponibles pour ubuntu 20.04 et parfois 22.04 pour une installation simple via apt avec gestion automatique des dépendances. En cas d'installation de cette manière, les fichiers seront répartis de la manière suivante :
- exécutables : directement dans le dossier système
/usr/bin/
- bibliothèques C++ : dans le dossier dédié
/usr/include/rok4
- libs dynamiques
.so
: directement dans le dossier système/usr/lib/x86_64-linux-gnu
- libs Perl : dans le dossier dédié
/usr/lib/perl5/ROK4
- styles : dans le dossier dédié
/usr/share/rok4/styles
- TMS : dans le dossier dédié
/usr/share/rok4/tilematrixsets
(Attention: cette liste n'est peut-être pas encore exhaustive.)
Les données
Les données dans la pyramide sont tuilées selon un quadrillage défini dans le TileMatrixSet.
La pyramide produite par les outils de pré-génération et génération est décrite à travers un fichier, le descripteur de pyramide, qui va préciser le TMS utilisé pour découper les données, les caractéristiques des données images ou vecteur, les différents niveaux de résolutions. Vous pouvez consultez les spécifications d'une pyramide et le schéma JSON du descripteur.
Pour que cette pyramide soit diffusée par le serveur, on va créer un descripteur de couche, qui va contenir à la fois des informations propres au serveur (nom, titre et résumé de la couche, styles...) mais aussi référencer les descripteurs des pyramides à diffuser.
Visualisation du quadrillage
Exemple du quadrillage Web Mercator, utilisé sur le site Géoportail (cliquer sur la carte pour obtenir les indices de la tuile, ainsi qu'un exemple de requête getTile).
Guides d'utilisation
Des tutoriels sont mis à disposition au fur et à mesure sur ce site, et leur liste est disponible sur la page Tutoriels d'utilisation de la suite Rok4.