Komяpa wrote:
Thanks for you answers! Because it is so common, I was tempted to use a
shortcut:
width: +4;
I was going to suggest the same thing. I think the notion of "define
this width relative to another width" is so common, it's worth having
notation for it.
This syntax should be thought more to be pushed into more-or-less
standard mapcss.
1) it becomes a lot harder to parse. +1 and 1 are considered the same
in most programming languages, so you can't just linearly transform
mapcss into (for example) JSON form, also can't even hold in a single
variable.
Yes, I'm aware of that, but you cannot hold a complex expression in a
single primitive variable either. It could also be used for casing-width:
+4 --> width + 4
-2 --> width - 2
10 --> 10
This notation is from JOSM mappaint style format, so maybe it's just
that I'm too much used to it...
2) what should be used for a base for adding and substracting widths?
It refers to the width value in the default layer. (So it would work
only for layers other that the default layer.)
3) Most of those use-cases are well-covered (IMHO) with casing thing.
We need special highlight for
* bridges
* tunnels
* access
* maxspeed
* parking-lanes
* unnamed highways
* fixme / note
* TIGER reviewed=no
* ... (other user defined stuff)
How can all that be done with casing?
As Komяpa has shown, "eval" can be used to express relative widths. Its
just a little clumsy for such a common task. However "+4" might be
easier to implement than a full blown eval.
But as I said, it would be just a shortcut and nothing that is needed at
all costs.
Sebastian
_______________________________________________
Mapcss mailing list
[email protected]
http://lists.openstreetmap.org/listinfo/mapcss