L’intérêt de tuiler un jeu de données raster, c’est-à-dire de préparer des imagettes multi-échelles qui seront exploitées nativement dans une application de webmapping n’est plus à démontrer. Dans le cadre du Google Summer of Code 2008, Klokan Petr Pridal vient d’ajouter un nouveau module de ce type aux outils GDAL : gdal2tiles.

Son intérêt principal est de pouvoir exploiter directement une image existante (ECW, TIFF, MrSid, JPEG, JPEG2000 et PNG) sans passer par le relai d’un serveur WMS par exemple comme TileCache. Une arborescence est alors créée répondant aux principes du TMS (Tile Mapping Service). Publiée dans un répertoire web, elle est alors directement exploitable par les client TMS tels qu’OpenLayers.

Mais ce n’est pas tout. Klokan a également inclus des options spécifiques à la création de tuiles pour GoogleMaps (en projection sphérique Mercator donc) ou GoogleEarth (en WGS 84). Qui plus est, l’application génère automatiquement, pour peu qu’on lui demande, des fichiers html pour une mise en ligne immédiate. Simple mais efficace, même dans GoogleEarth qui exploite les SuperOverlays déjà disponible avec TileCache !

Mais ce n’est pas tout ! Klokan a également pensé à ceux d’entre nous qui ne sont jamais arrivés à faire une simple conversion ogr2ogr de Shapefile en MapInfo… Il prépare MapTiler, une interface  graphique pilotant gdal2tiles pour générer ses tuiles en faisant clic clic clic ! Si c’est pas gentil ça !

Pour les autres, voici les quelques options glanées dans la documentation :

gdal2tiles.py [-title "Title"] [-publishurl http://yourserver/dir/]
              [-nogooglemaps] [-noopenlayers] [-nokml]
              [-googlemapskey KEY] [-forcekml] [-v]
               input_file [output_dir]
-title : le titre pour les metadata xml, les pages web et le KML
-publishurl : URL de publication du répertoire contenant les tuiles
-nogooglemaps : pas de génération de page GoogleMaps
-noopenlayers : pas de génération de page OpenLayers
-nokml : pas de génération de KML
-googlemapskey : votre clé GM pour l'utilisation de la page html GoogleMaps
-forcekml : forcer la génération du KML
-v : mode verbeux.
input_file : fichier à traiter
output_dir : répertoire de création des tuiles

Il faut bien noter que gdal2tiles.py est un module Python, et que GDAL doit donc avoir été compilé avec l’option –enable-python.

Source : gdal-dev mailing list

Quelques tuiles pour l'hiver
Étiqueté avec :            

6 pesnées sur “Quelques tuiles pour l'hiver

  • 19 août 2008 à 11:52
    Permalien

    Merci pour l’info. Le projet de Klokan ne faisait-il pas plutôt partie du Google Summer of Code 2007 ? J’avais essayé gdal2tiles à l’époque mais les dalles produites ne se superposaient pas avec les fonds de Google. Y’a-t-il du nouveau?

    Sinon je serai preneur d’un petit article sur les SuperOverlays de Tilecache pour Google Erath. Je suis curieux de ton retour ton expérience car de mon côté je suis très déçu (bcp de pb de non-persistance des tuiles lors des changements d’angles dans GE…)

    Répondre
  • 19 août 2008 à 12:03
    Permalien

    @Yves : en effet, softlibre a toujours une longueur d’avance !
    @Ludovic : je pense qu’il s’agit d’un projet reconduit, car gdal2tiles existait déjà dans une version basique depuis l’an dernier, mais la version en cours correspond bien à un projet 2008.
    Pour ce qui est d’un papier sur les SuperOverlays, ça devrait pouvoir se faire. Ce que tu indiques sur les changements d’angle est en effet pertinent. Klokan a réfléchi au problème : « I did as well analyse for rotated KML SuperOverlay and wrote a solution for this problem. This code is not yet used in gdal2tiles. ». La version actuelle n’est donc qu’une mise ne bouche !

    Répondre
  • 21 août 2008 à 10:38
    Permalien

    Après quelques tests, je regrette qu’une seule chose. La transparence n’est pas bien gérée pour un affichage dans GE. En effet, le paramètre maxLodPix est par défaut à -1 ce qui a pour effet lors de zooms importants d’empiler les images aux différentes résolutions. Meme si la transparence existe dans le fichier kml d’index, la superposition des images finit par rendre la carte complètement opaque à grande échelle.
    j’ai fait un test en modifiant le code (maxLodPix=512). La transparence est préservée, mais il y a un effet de bord : quand seule la dernière résolution est affichée, si on zoom un peu plus, la carte disparait.
    Sinon, c’est super pratique pour générer le cache et le transférer sur un serveur.

    Répondre
  • 21 août 2008 à 10:56
    Permalien

    Merci pour ce retour Lionel. D’après le mail de Klokan sur la liste gdal-dev, il a en effet quelques améliorations à apporter. Une des questions posées alors à la communauté était :
    « – Does anybody know how to correctly set the KML SuperOverlay
    maxlodpixels and fadeextents so transparency and opacity runs well and
    tiles are not disappearing in Google Earth? »

    Donc je pense que c’est dans ses préoccupations immédiates ! Si tu as quelques pistes, n’hésite pas à lui transmettre des infos !

    Merci

    Répondre
  • Ping : gdal2tiles, howto : La famille Bonnal dans un coin de territoire

Laisser un commentaire

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

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.