On 11/03/2011 08:44 AM, Martin Ždila wrote:
> Hello
> 
> I'd like to create a MapCSS for hiking trails. In our country we use 4
> colours to mark hiking trails. Some ways may be parts of multiple
> trails. What I want is to draw parallel lines to such ways but not
> with fixed offset for each color.
> 
> I found that offset style must be an absolute value and so I need to
> specify offset for all color combinations like this:
> 
> relation[osmc:symbol^=red] > way::redLayer { color: red; offset: 5 }
> relation[osmc:symbol^=green] > way::greenLayer { color: green; offset: 5 }
> relation[osmc:symbol^=blue] > way::blueLayer { color: blue; offset: 5 }
> relation[osmc:symbol^=yellow] > way::yellowLayer { color: yellow; offset: 5 }
> 
> /* Following rules should override previous per layer: */
> /* Following uses unsupported syntax: */
> 
> relation[osmc:symbol^=red & osmc:symbol^=green ] > way::greenLayer {
> offset: 10 }
> relation[osmc:symbol^=red & osmc:symbol^=blue ] > way::greenBlue { offset: 10 
> }
> relation[osmc:symbol^=red & osmc:symbol^=yellow ] > way::greenYellow {
> offset: 10 }
> 
> ... and many other combinations
> 
> Is there a way to write it in some supported syntax? Or is there some
> different way to render marked trails as I described?

Hi Martin,

try this [1]. Eval is no fun at the moment, because there is so little
debugging output, but it should work.

Paul

[1]

relation[osmc:symbol^=red] > way {
    red: true;
}
relation[osmc:symbol^=blue] > way {
    blue: true;
}
relation[osmc:symbol^=green] > way {
    green: true;
}

way::red_layer {
    offset: 0;
}
way[prop("red","default")]::red_layer {
    color: red;
    width: 3;
    offset: 5;
}

way::blue_layer {
    offset: prop("offset","red_layer");
}
way[prop("blue","default")]::blue_layer {
    color: blue;
    width: 3;
    offset: prop("offset","red_layer") + 5;
}

way::green_layer {
    offset: prop("offset","blue_layer");
}
way[prop("green","default")]::green_layer {
    color: green;
    width: 3;
    offset: prop("offset","blue_layer") + 5;
}

_______________________________________________
josm-dev mailing list
josm-dev@openstreetmap.org
http://lists.openstreetmap.org/listinfo/josm-dev

Reply via email to