“map styles: Default OSM vs Google Maps” included a comparison of OSM Default map and Google maps. Now I present a similar comparison at the same location. But now with a third version - current version of new potential road style.

From left: (1) with changes developed as part of road redesign (2) currently used rendering on the OSM website (3) Google maps

Maybe it would be a good idea to make landuse=residential darker on low zoom levels to better mark built-up areas, but overall I consider this change as a significant improvement.

Changes based on feedback:

Thanks to daganzdaanda for the idea of displaying highway=tertiary as a white line, wider than highway=residential/unclassified. As tertiary roads are no longer using yellow it made possible to display secondaries using this colour, what in turn allowed to move hue of primary toward yellow.

It was not as simple as it sounds. For example, one of obvious consequences is that yellow roads are now rendered also on lower zoom levels. It is problem because the yellow roads are hard to keep visible both on landuse=farmland and unmapped land. For example using light yellow worked great on farmland but completely failed on unmapped land where it was really hard to notice.

Making highway=primary yellower allowed to render trunk in orange and keep road classes possible to differentiate.

So: highway=trunk and highway=motorway are now rendered differently.

See for example highway=trunk near Košice and D1 motorway.

and now with the new style. Game “spot highway=trunk” is now less challenging and it should be distinguishable from a motorway.

And view at the preview location from the readme

Using a grained fill pattern to indicate unpaved roads is an interesting idea that will be tested. I will also test the idea of using dashed casing for unpaved roads with tunnels marked solely by a colour change of fill and casing. There was also the idea of displaying tunnels as without fill what is also worth testing - but it is likely that displaying unpaved roads as one with dashed casing and fill would be too close. Also, size of ref shields should be reconsidered - it seems possible to make them small without losing readability.

railways

There are also changes to how railway are displayed. Some improvements of rendering railway=tram will be used after next update of map style on OSM servers. But there also problems with rendering railway=rail - both major and minor (marked by service=spur/siding/yard) rails are rendered really close. At lower zoom levels rendering of railway=rail is really close to rendering of minor roads.

I am experimenting with changes to rendering of railways. Some changes are ready for presentation and effects are visible on presented examples.

Accepted changes

I am trying to find as many improvements as possible that may be proposed, discussed, improved and accepted as an isolated change. It makes discussion easier and bugs are less likely.

Turning circles on highway=track are no longer too big, code was improved. In addition highway=proposed is no longer rendered (for discussion and reasoning behind decision see https://github.com/gravitystorm/openstreetmap-carto/issues/1654).

Currently proposed changes

There are also active pull requests, some of mine are done as part of road redesign. For example there in pull request proposing better display of minor tram tracks It is open question whatever railway=tram with service=spur/siding/yard should be rendered on z14 and z15 - feedback is welcomed (more locations with rendered before/after are listed on GitHub).

Examples of current work

Stopping too early rendering of highway=residential allows to achieve improvements like demonstrated in the first picture demonstrating changed rendering in London. But ceasing to render highway=residential on zoom levels 12 makes noise created by small buildings noticeable. These buildings are too small to be rendered in a useful way but big enough to create noticeable changes.

The simplest solution would be to start rendering buildings from z13, one zoom levels later. But some of the largest buildings may be usefully rendered on z12. Also, as usually there are additional complications (for example - moving only rendering of buildings to higher zoom level is not enough - it is necessary to move also rendering of amenity=place_of_worship).

On the left - current style. On the right - new style, including removal of highway=residential on this zoom level

And three examples of buildings may be handled:

stop rendering of all buildings (even the largest ones)

stop rendering of small buildings (threshold is arbitrary what is quite noticeable. In many places it is clear that some buildings are rendered and some not despite nearly the same size)

render only big buildings on z12 (my favourite - but it still arbitrary threshold and some big ones will not be rendered. But as rendered buildings are quite rare it is not so noticeable)