Skip to content
This repository has been archived by the owner on Jul 24, 2021. It is now read-only.

Layer transitions on highways (and other ways?) cause visible "seams" #745

Closed
openstreetmap-trac opened this issue Jul 23, 2021 · 5 comments

Comments

@openstreetmap-trac
Copy link

Reporter: dermotm[at]gmail.com
[Submitted to the original trac issue database at 8.50pm, Saturday, 15th March 2008]

The behaviour is particularly noticeable on bridges. The seams were not present on earlier versions of osmarender. Although a minor bug, this behaviour is already prompting at least one mapper to adopt workarounds involving non-standard use of the layer attribute, with annoying results.

@openstreetmap-trac
Copy link
Author

Author: Vid the Kid
[Added to the original trac issue at 2.01am, Thursday, 4th February 2010]

I think I know how to fix this, though I'm not comfortable writing a patch myself. I was looking at the code for the smart-linecaps feature, and I noticed that, when a connecting path on a lower level is detected, the linecaps for the end-segment are set to "butt". Since this occurs on both the casing and fill, and because of how antialiasation works in nearly all SVG renderers, this causes some of the casing to show through in the "crack" between fill segments. There are two solutions:

  1. When a connecting path on a lower layer is detected, set the casing linecaps to "butt" but set the highway fill linecaps to "round".

or,

  1. Render map tiles without antialiasing. Seam-free antialiasing can be achieved by rendering (without SVG antialiasing) at 4x final size, then resampling resulting raster image down to final size. (This will result in improvements to appearance for any situation where two edges are incident or nearly incident, such as thin casings or adjacent landuse areas.)

@openstreetmap-trac
Copy link
Author

Author: Vid the Kid
[Added to the original trac issue at 2.03am, Thursday, 4th February 2010]

Oh, I just thought of a simplified version of solution 1:

On the "middle" portion of a path that uses smart-linecaps, set the linecaps to "round" instead of "butt". Assuming the middle casing doesn't render over the end-segment fills, that should work great.

@openstreetmap-trac
Copy link
Author

Author: spaetz
[Added to the original trac issue at 12.44pm, Wednesday, 30th June 2010]

Can you point to an area where that happens? I am still not clear what the exact symptom is.

@openstreetmap-trac
Copy link
Author

Author: mackerski
[Added to the original trac issue at 12.53pm, Wednesday, 30th June 2010]

Replying to [comment:4 spaetz]:

Can you point to an area where that happens? I am still not clear what the exact symptom is.

http://www.openstreetmap.org/?lat=53.31683&lon=-6.37397&zoom=17&layers=0B00FTF

Look at either end of the "Bowstring Bridge" You'll see a faint line drawn across the roadway.

@openstreetmap-trac
Copy link
Author

Author: iandees
[Added to the original trac issue at 9.09pm, Monday, 9th September 2013]

Cleaning aging tickets.

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

No branches or pull requests

1 participant