Le Mercredi 14 Septembre 2011 10:26:14 Ab_fab, vous avez écrit : > Merci Nicolas pour cette (encore) bonne idée, > > Le genre de carte que l'on ne trouve nulle part, qui rendrait probablement > service à pas mal de monde au quotidien ... > ... bref, de quoi faire parler d'un projet comme OSM ! > > Ton script agrège les communes adjacentes qui ont le même code postal, pour > ne montrer que la délimitation extérieure du CP ?
Voilà, tout à fait. Voilà en PJ mon script avec les deux couches mapnik et leur bête requête. Ce script utilise une petite bibliothèque python qui me facilite grandement l'utilisation de mapnik (ça se voit dans le script :-) ) : https://code.launchpad.net/~nicolas-dumoulin/+junk/mapnik-easymap Je peux tenter de générer toute la France … -- Nicolas Dumoulin http://wiki.openstreetmap.org/wiki/User:NicolasDumoulin
#!/usr/bin/python # -*- coding: utf-8 -*- import sys, os from easymap.easymap2 import * from generate_tiles2 import render_tiles if __name__ == "__main__": ll = (2.8,45.513,3.431,45.912) z = 10 imgx = 542 * z imgy = 360 * z tiles = False tiles = True db=DB() if tiles: m = Map(256,256, ll, bgColor='transparent') else: m = Map(imgx,imgy,bgColor='#D9DADB',lonlat=ll) m.addPGLayer('cpborder', "(select st_union(way) as way from planet_osm_polygon where \"addr:postcode\" is not null group by \"addr:postcode\") as roads", [line('red',2)]) m.addPGLayer('cptext', "(select way,\"addr:postcode\" as name from planet_osm_polygon where \"addr:postcode\" is not null) as roads", [text(13,'red','white',4)]) if tiles: mapfile='tiles_overlay.xml' mapnik2.save_map(m.getMap(),mapfile) render_tiles(ll, mapfile, 'tiles/',12,13) else: m.zoomToBBox() m.toPNG("cp.png")
_______________________________________________ Talk-fr mailing list Talk-fr@openstreetmap.org http://lists.openstreetmap.org/listinfo/talk-fr