[OSM-talk-fr] Projet d'import WMS du cadastre avec les rasters

Fabien Marchewka void at mirabellug.org
Mer 1 Juil 12:46:56 UTC 2009


Bonjour,

J'ai pas mal cherché sur le wiki et dans les sources du plugin cadastre
mais je n'ai rien trouvé de concluant.
De plus on ne trouve plus cadastre_client.py qui aurait pu me donner des
pistes.
Je voudrais tout simplement obtenir une image de bonne résolution d'une
planche cadastrale sans passer par ma méthode de fusionner 2 PDF dans
GIMP. Tout d'abord parce que la résolution n'est pas terrible (on pourrait
améliorer en prenant plus de PDF) et également parce que ce collage
entraine des imprécisions.
J'ai donc regardé la tête des requêtes WMS. Ça ressemble à ça :
http://www.cadastre.gouv.fr/scpc/wms?version=1.1&request=GetMap&layers=CDIF:PMC@G0044000CL01&format=image/png&bbox=3511.9022838068186,207.05520704163973,7940.521723496901,2950.6788059772107&width=1000&height=618&exception=application/vnd.ogc.se_inimage&styles=
En fait les coordonnées sont en pixels (et oui !) donc en fait la valeur
derrière la virgule est complètement inutile a mon avis c'est juste un
calcul non arrondi pour que le ratio ne change pas (ce que le WMS peut
faire du coup la projection est fausse).

Ce qu'il se passe :
le premier clic sur une planche ouvre le popup et va donner une première
requête WMS de ce type :
http://www.cadastre.gouv.fr/scpc/wms?version=1.1&request=GetMap&layers=CDIF:PMC@G0044000CL01&format=image/png&bbox=-1,0,12370,8770&width=158&height=112&exception=application/vnd.ogc.se_inimage&styles=

On obtient donc la taille de l'image (ici 12370 sur 8870).

Ensuite on sait que l'on peut demander une image plus grande (dans mon cas
au moins 1000x618px mais il semblerais que dans le plugin JOSM ce soit que
600x600).

Ce que je ne sais pas faire c'est le programme qui va bien derrière tout
ça avec la gestion du cookie et tout.

un truc du genre :
for x=0 to max_x/1000 { // a voir si on peut mettre un paramètre de
résolution
  for y=0 to max_y/618 {
    img = recupere_pngcadastre(x, y, (x+1)*1000, (y+1)*1000)
    enregistre(img-x-y.png)
  }
}
call imagemagick avec les options qui vont bien !

le programme s'invoquerais avec un petit :
grab-cadastre <nom de la ville> <ref de la planche> [-i chemin vers le
binaire imagemagick]

Seul soucis mes conaissances sont trop limités en java (pour la
portabilité) pour le faire. Par contre je veux bien aider quand même.










Plus d'informations sur la liste de diffusion Talk-fr