{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreihcm4e7jq4aenxtjrocvkngtwakmwwpmcroyqh5bo4mg7zvw4ga7i",
"uri": "at://did:plc:4tuge3k3comfj4nfvqnwkemn/app.bsky.feed.post/3mlztdzf74tg2"
},
"coverImage": {
"$type": "blob",
"ref": {
"$link": "bafkreiboculqlvdnnynajanhj7fswn5bqabf2bxzuuc6xz2l4k4ymhifja"
},
"mimeType": "image/png",
"size": 104938
},
"path": "/user/SomeoneElse/diary/408678",
"publishedAt": "2026-05-16T17:17:43.000Z",
"site": "https://www.openstreetmap.org",
"tags": [
"map.atownsend.org.uk",
"general right of land access",
"Scottish Outdoor Access Code",
"rights of way",
"map schema",
"vector",
"raster",
"disused rail",
"restricted byways",
"bridleways",
"https://map.atownsend.org.uk/maps/map/map.html#16/-24.9952/135.1561",
"slightly different dash array",
"location",
"here",
"vector debugger",
"raster legend",
"designation"
],
"textContent": "Over the last few weeks I’ve improved the way that paths and tracks are shown on map.atownsend.org.uk in both the raster and vector versions. The aims were:\n\n 1. Improve clarity, so that their visibility in e.g. nondescript woodland was better\n 2. Improve consistency, so that the display of them on vector and raster looked similar to each other, and the “visual weight” of each class broadly matched when looked at together on a map.\n 3. Reduce confusion so that two different things were not shown in similar ways.\n 4. Show “good quality” paths and tracks (e.g. paved and compacted gravel surfaces) differently to other ones to help answer the “will it be muddy” question.\n\n\n\nFirst, a bit of background: England and Wales don’t have a general right of land access like “allemansrätten” in Sweden or the Scottish Outdoor Access Code in Scotland. It does have a series of rights of way, which are recorded in OSM with the `designation` tag. Knowing this is key to knowing where you can and can’t go, and what you can and can’t do there. Maps of England and Wales often show these different access rights in different colours. OpenStreetMap’s tag names `footway` and `bridleway` were also influenced by the names of these legal access rights.\n\nThe map schema that I use defines classes its “transportation” layer as follows:\n\n * Public roads (`motorway` through `unclassified` and `residential`) that broadly match OSM’s tagging\n * Other rights of way (“unclassified county roads”** through `footway`). The `designation` tag in OSM used to determine what goes where.\n * Other ways where there may be access, but no right of way (`service`, paths and tracks with no `designation`)\n * Other oddities also not generally part of any routing graph like `gallop`, `leisuretrack`, `raceway`, `construction`.\n\n\n\nSecondly, there are a limited number of ways that you can use to help users tell between similar things (such as linear paths) on a map:\n\n * colour\n * width of line\n * dashes and dots in the line\n\n\n\nConsistency was improved just by going through each of the visual elements in the vector and raster styles and handle them all in a common vector or raster way. The technologies are very different - Mapnik (raster) and MapLibre (vector) do have different approaches, so there are still style differences between maps, but I’ve done what I can without a ground-up rewrite of the raster maps based on the vector approach (for which life is just too short). A glance at Cannock Chase in vector and raster shows a big improvement on what went before.\n\nIn order to address the first aim (clarity) and the third (reduce confusion) I made all the path representations that I use slightly wider, and made them all out of slightly longer dashes and used dashes rather than dots. The latter was important to avoid clashing with disused rail on raster.\n\nPreviously I’d shown restricted byways the same colour as bridleways but with a different dash pattern. I changed this to a new colour [half-way](https://map.atownsend.org.uk/maps/map/map.html#16/-24.9952/135.1561 between “bridleway blue” and “BOAT / UCR brown”. This improves consistency and frees up “different dash patterns” to be used for better-surfaced paths and tracks.\n\nFinally, in order to be able to show “good quality” paths and tracks differently to “normal” (potentially muddy) ones I used a slightly different dash array, consistently across each path and track type:\n\n“Normal” paths and tracks have dashes all the same length (but wider paths and tracks have longer dashes than narrower ones). “Good Quality” ones have alternating normal and longer-length dashes. At the location of the picture at the top of this post (here in OSM) you can see a restricted byway running north-south and a bridleway running east-west. The southern part of the restricted (wide) byway and the western part of the (narrow) bridleway are both better quality (both `surface=compacted` in OSM). You can use the vector debugger to investigate further.\n\nYou’ll also notice from the raster legend that some paths, footways and bridleways can also be shown as “less visible” - this is used for informal paths and for those where the `trail_visibility` tag is set to a lower value. Completely invisible paths with no `designation` (along with some of the highest `sac_scale` ones) are in the schema as “bad” paths, and only shown on map.atownsend.org.uk via a separate raster overlay (“no vis paths”):\n\n(see here in OSM)\n\n** I probably need to write something somewhere about the different designation values used on highways in England and Wales, but there’s not really room here.",
"title": "Will it be muddy? Showing good quality paths differently"
}