Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Render tunnels above highway areas #529

Open
matthijsmelissen opened this issue May 17, 2014 · 17 comments
Open

Render tunnels above highway areas #529

matthijsmelissen opened this issue May 17, 2014 · 17 comments
Assignees
Labels

Comments

@matthijsmelissen
Copy link
Collaborator

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
Copy link
Collaborator Author

This request is incompatible with the following two requirements:

  • The fill of areas must be rendered on top of the casing of roads (of the same layer), in order to hide the casing of roads ending on the area (which have round line-cap).
  • The casing of roads must be rendered on top of tunnels.

Any suggestions on how to solve this?

@Morphan
Copy link

Morphan commented Jul 11, 2014

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
Copy link
Collaborator Author

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
Copy link
Contributor

nighto commented Jul 11, 2014

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
Copy link
Collaborator Author

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

@dieterdreist
Copy link

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
Copy link
Contributor

nighto commented Jul 19, 2014

@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
Copy link
Collaborator Author

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
Copy link
Contributor

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
Copy link

Morphan commented Mar 26, 2016

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
Copy link
Contributor

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

@matkoniecz matkoniecz self-assigned this Jun 21, 2016
@jojo4u
Copy link

jojo4u commented Jun 21, 2016

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
Copy link
Collaborator

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
Copy link

dieterdreist commented Aug 25, 2019 via email

matthijsmelissen pushed a commit to matthijsmelissen/openstreetmap-carto that referenced this issue Sep 6, 2019
This PR moves highway areas below all linear road types (resolves gravitystorm#3281).

In particular, this change has the following effects:

* Render highway areas below tunnels (resolves gravitystorm#529). This prevents the current
  situation where tunnels are invisible if there happens to be a highway area
  above them.
* Render highway areas below line/area barriers, ferry routes, tourism
  boundaries, cliffs, landuse-overlay, and turning circles. I think these
  changes are mainly neutral or positive.
* Render highway areas below line/area barriers. This is probably the most
  controversial aspect (but necessary for the other changes). See screenshot
  below.

* This PR is a necessary condition for merging the roads-casing and roads-fill
  layers (part of gravitystorm#2046), which would greatly simplify our code.
* This PR is a necessary condition for rendering buildings above highway area
  (gravitystorm#688).

* Promoting linear highways over areas makes life easier for other data
  consumers, that already tend to have poor support for highway areas. For
  example:
  * Transport and wikipedia do not render road areas
  * Humanitarian, bicycle, mapbox, streets, OSM bright renders linear roads on
  top of areas, like in this proposal
@jeisenbe
Copy link
Collaborator

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
Copy link
Collaborator Author

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
Copy link
Collaborator

jeisenbe commented Nov 8, 2019

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants