Skip to content

Map browser avec PyMT

Depuis longtemps, certains que je ne nommerais pas (en fait si, tout ceux qui font du multitouch et un windows…) s’amusent à se balader sur googleearth et companie, pour montrer à quel point c’est fun de faire mumuse avec ses petits doigts. Bon, si on est sous linux, comment qu’on fait nous hein ? Pauvre petit linuxiens quoi…

J’ai commencé un travail en se basant sur PyMT + ModestMaps, qui a un binding python, et supporte 8 sources différentes (dont Blue Marble, Yahoo, Microsoft, OpenStreetMap…).
Après plus d’une semaine à ne pas comprendre pourquoi la librairie ne marchais pas avec les fonctions proposées (comme par exemple, demander un carré de longitude/latitude… et se retrouver avec un carré légèrement déplacé..), j’ai failli baisser les bras.

Puis non. J’ai zappé la partie “user land” de la librairie, et directement attaqué le “core” de la lib. Et c’est une presque réussite. J’ai rajouter 2/3 trucs dans ModestMaps, comme l’utilisation d’un cache intermédiaire, évitant les downloads à répétitions.

Avec quelques threads de download / cache + une mini interface très très basique, j’obtiens ca :

Blue Marble

2009-04-26-221938_2960x1050_scrot-0.png

Microsoft Hybrid (téléchargement en cours)

2009-04-26-222018_2960x1050_scrot-0.png

OpenStreetMap

2009-04-26-222007_2960x1050_scrot-0.png

Microsoft Hybrid + Zoom

2009-04-26-222125_2960x1050_scrot-0.jpg

Je publie ça une fois que j’aurais réglé :

  • les problèmes de zoom trop important (limite de précision d’un double ?)
  • les calculs des limites autour de l’écran (parfois, on voit le fond de la fenêtre)
  • ajouter des fonctions pour passer des pixels en latitude/longitude
  • cleaner le code, et fait la séparation avec un beau InteractiveWidget
  • faire une interface plus “jolie”

Wait & see !