gravitystorm / openstreetmap-carto

A general-purpose OpenStreetMap mapnik style, in CartoCSS
Other
1.53k stars 820 forks source link

Render tunnels above highway areas #529

Open matthijsmelissen opened 10 years ago

matthijsmelissen commented 10 years ago

Tunnels should be rendered above highway areas.

If not, tunnels under areas become invisible.

Examples: http://www.openstreetmap.org/#map=18/51.43095/6.77345 http://www.openstreetmap.org/#map=18/48.23580/16.41166

See also https://trac.openstreetmap.org/ticket/3966.

matthijsmelissen commented 10 years ago

This request is incompatible with the following two requirements:

Any suggestions on how to solve this?

Morphan commented 10 years ago

Why not use transparency? In the first example between the highway areas there is also a parking area which renders quite nicely with the tunnel underneath.

matthijsmelissen commented 10 years ago

Transparency tends to make the colours ugly, so we prefer to avoid it. But we might reconsider that, and indeed add transparency to some objects, if we don't find other solutions.

There is no transparency in the first example, by the way. The highway there is still rendered on top of the parking (but coloured lighter, because of the tunnel tag).

nighto commented 10 years ago

Perhaps a solution would be to find a more saturate color that, if there's nothing underneath it, is exactly the same color (in RGB) as the one that is used today.

matthijsmelissen commented 10 years ago

Not sure if I understand. Do you suggest making the tunnel transparent, or the area?

dieterdreist commented 10 years ago

Am 11/lug/2014 um 18:01 schrieb math1985 notifications@github.com:

Transparency tends to make the colours ugly, so we prefer to avoid it.

using outlines and/or hatches instead of a solid transparent fill could be an alternative that doesn't suffer from changing the colours

nighto commented 10 years ago

@math1985 the area (because otherwise the tunnel underneath it would still not be visible). Perhaps 80~90% of opacity (didn't test, just guessing).

matthijsmelissen commented 10 years ago

If we make the area transparent, then you also see the round endings of non-tunnel roads that end on the same area, which of course looks ugly. Sorry if I'm unclear, maybe I should generate a picture.

matkoniecz commented 8 years ago

I think that current rendering is OK. Highway areas are rather small. Even ones from https://en.wikipedia.org/wiki/List_of_city_squares_by_size are either not so big, have no roads under them or are not mapped as highway areas.

Rendering such roads above highway areas will be rather confusing - for example cases linked in the first post are currently intuitive, rendering road on top is not going to improve anything.

I think that in this case the best solution will be to do nothing and close it as wontfix - improving situation would require plenty of work and would unlikely to be a significant improvement.

Morphan commented 8 years ago

What I don't like about the rendering in the first example is that currently

a) the visibility of the tunnel changes several times: at the parking area that is part of Portsmouthplatz, and also at the northern end of the tunnel where a street divides the pedestrian areas of Portsmouthplatz and Königstraße.

b) the name of the tunnel (Mercatortunnel) is rendered without an accompanying structure for most part where the tunnel goes under the pedestrian areas. There should at least be the dotted outline of the tunnel visible.

So I still think that it would be a good idea to change the rendering. Since transparency is no option, why not use the same rendering that is used for the tunnel under the parking area for the rest of the tunnel, too? This would mean to render the tunnel above the highway area, but with the lighter colouring and the dotted outline. Maybe an ever lighter colouring than now, like the Gotthard-Strassentunnel.

matkoniecz commented 8 years ago

I think that current rendering is OK.

http://www.openstreetmap.org/#map=19/50.63204/3.06182 has example of case where this rendering leads to clearly poor results

selection_003

jojo4u commented 8 years ago

Another example: http://www.openstreetmap.org/?mlat=48.77885&mlon=9.17894#map=19/48.77885/9.17894&layers=N There counterintuitively the rails shine through the building "Musikpavilion" but not through the pedestrian area.

map 3

jeisenbe commented 5 years ago

It was mentioned in #3811 that oneway arrows render above highway areas (e.g. pedestrian squares), which is sometimes confusing:

Although the "Avenue du Maine" tunnel is hidden by the Place Raoul Dautry, arrows are still shown on top of the Place Raoul Dautry. https://www.openstreetmap.org/#map=18/48.84186/2.32202&layers=N

dieterdreist commented 5 years ago

sent from a phone

On 24. Aug 2019, at 16:13, jeisenbe notifications@github.com wrote:

Although the "Avenue du Maine" tunnel is hidden by the Place Raoul Dautry, arrows are still shown on top of the Place Raoul Dautry. https://www.openstreetmap.org/#map=18/48.84186/2.32202&layers=N

I agree that tunnels should render above areas (and also above other highways, including bridges). It should be codified in their rendering appearance that they are below (e.g. dashed style), rendering order and real life stacking do not have to be the same, on the contrary, hidden lines (behind other objects, underground etc) must be rendered on top in order to be visible

jeisenbe commented 5 years ago

Looking at the example of Place de la Republique mentioned above, I see that Opencyclemap manages to render pedestrian and subway tunnels over highway areas and casing but under linear road casing and fill (or something similar):

https://www.openstreetmap.org/#map=19/50.63204/3.06194&layers=C

Compare to the current Openstreetmap-carto rendering: https://www.openstreetmap.org/#map=19/50.63204/3.06194

So perhaps #3872 is not required to render tunnels above highway=pedestrian areas?

matthijsmelissen commented 5 years ago

So perhaps #3872 is not required to render tunnels above highway=pedestrian areas?

@jeisenbe Opencyclemap has already implemented #3872: https://www.openstreetmap.org/#map=19/49.49587/5.98429&layers=C

jeisenbe commented 4 years ago

@matthijsmelissen do we consider this declined now that #3872 is closed, or is there still a possible solution?