Premier essai pour les courts de tennis:
https://twitter.com/cq94/status/314809964759756801/photo/1

Le tronche de la requĂȘte...

(select way, sport,
ST_Distance(st_pointn(ST_ExteriorRing(way),1),st_pointn(ST_ExteriorRing(way),2))
as d12, 
ST_Distance(st_pointn(ST_ExteriorRing(way),3),st_pointn(ST_ExteriorRing(way),2))
as 
d23,ST_Distance(st_pointn(ST_ExteriorRing(way),1),st_pointn(ST_ExteriorRing(way),3))
as d13, 
degrees(st_azimuth(st_pointn(ST_ExteriorRing(way),1),st_pointn(ST_ExteriorRing(way),2)))
as a12, 
degrees(st_azimuth(st_pointn(ST_ExteriorRing(way),2),st_pointn(ST_ExteriorRing(way),3)))
as a23 from planet_osm_polygon where sport is not null) as sports

et le style cartocss...

#sports [zoom>16] {
        [sport='tennis'][d12>36][d12<60][d23>15][d23<30][d13>37][d13<68] { /*
12-longueur - 23-largeur */
                point-file: url('symbols/fr/sports-tennis.svg');
                [zoom=16] { point-transform: "rotate([a23]) scale(0.075)"; }
                [zoom=17] { point-transform: "rotate([a23]) scale(0.15)"; }
                [zoom=18] { point-transform: "rotate([a23]) scale(0.3)"; }
                [zoom=19] { point-transform: "rotate([a23]) scale(0.6)"; }
                [zoom=19] { point-transform: "rotate([a23]) scale(1.2)"; }
                point-allow-overlap: true;
        }
        [sport='tennis'][d23>36][d23<60][d12>15][d12<30][d13>37][d13<68] { /*
12-largeur - 23-longueur */
                point-file: url('symbols/fr/sports-tennis.svg');
                [zoom=16] { point-transform: "rotate([a12]) scale(0.075)"; }
                [zoom=17] { point-transform: "rotate([a12]) scale(0.15)"; }
                [zoom=18] { point-transform: "rotate([a12]) scale(0.3)"; }
                [zoom=19] { point-transform: "rotate([a12]) scale(0.6)"; }
                [zoom=19] { point-transform: "rotate([a12]) scale(1.2)"; }
                point-allow-overlap: true;
        }
}

_______________________________________________
Talk-fr mailing list
Talk-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-fr

Répondre à