nptscot / nptscot.github.io

Network Planning Tool for Scotland: front end.
https://www.npt.scot
GNU Affero General Public License v3.0
8 stars 6 forks source link

Finish CbD layer: update categories in infrastructure layer and add examples of each type of infrastructure #243

Closed Robinlovelace closed 3 weeks ago

Robinlovelace commented 2 months ago
Infrastructure Type/Name Description/Tool-tip Colour On Mapping CBD Compliant
Segregated Track (wide) Segregated Roadside Cycle Track (> min width) Thick Dark Green Yes
Off Road Cycleway Off Road/Detached Cycle Track/Path Thick Mid Green Yes
Segregated Track (narrow) Segregated Roadside Cycle Track (< min width/?) Thick Light Green Maybe/?
Shared Footway Roadside Shared Pedestrian/Cycle Path/Footway Thin Orange Maybe/?
Painted Cycle Lane On-Carriageway Cycle Lane
previously we have: ![image](https://github.com/user-attachments/assets/9c4cfb94-5ad3-4b71-9fe6-3665a2d7d079) https://github.com/nptscot/nptscot.github.io/blob/ac7d95052fac803d46e4d7e573c9e2e038ee5433/src/datasets.js#L235-L238 We should add examples of each.
mvl22 commented 2 months ago

I will find examples of each from the CycleStreets Photomap and send the links/photos here. We have a library of 139,871 cycling/transport infrastructure images:

https://www.cyclestreets.net/photos/categories/

mvl22 commented 2 months ago

I've found a good range of examples for each category, from the CycleStreets Photomap.

All of these images are by myself or Simon in order to avoid any copyright issues. We give permission to have them reproduced for the NPT project.

Definitions are from the Cycling by Design guidance, page 10.

Mixed traffic street [3.8, page 85]

cyclestreets86630-size640 https://www.cyclestreets.net/location/86630/

cyclestreets172272-size640 https://www.cyclestreets.net/location/172272/

cyclestreets14214-size640 https://www.cyclestreets.net/location/14214/

Detached or remote cycle track [3.5, page 66]

"Remote or detached cycle track (commonly known as a cycle path or shared path) – a route that is not adjacent to the road carriageway as set out in Chapter 3. Pedestrians and cycle users may use the same space or may be separated from each other within it."

cyclestreets86744-size640 https://www.cyclestreets.net/location/86744/

cyclestreets148986-size640 https://www.cyclestreets.net/location/148986/

cyclestreets191515-size640 https://www.cyclestreets.net/location/191515/

Cycle track at carriageway level [3.6, page 72]

"Cycle track at carriageway level – at the same level as motor traffic but separated by physical means."

cyclestreets92920-size640 https://www.cyclestreets.net/location/92920/

cyclestreets81274-size640 https://www.cyclestreets.net/location/81274/

cyclestreets175646-size640 https://www.cyclestreets.net/location/175646/

cyclestreets89733-size640 https://www.cyclestreets.net/location/89733/

cyclestreets89775-size640 https://www.cyclestreets.net/location/89775/

Stepped or footway level cycle track [3.6, page 75 & page 77]

"Stepped cycle track – adjacent to the road carriageway and separated vertically from both the road carriageway and the footway.

Cycle track at footway level – adjacent to the road carriageway and separated vertically from the road carriageway. Pedestrians and cycle users may use the same space or may be separated from each other within it (where space is shared, this is commonly known as a shared footway)."

cyclestreets92772-size640 https://www.cyclestreets.net/location/92772/

cyclestreets110770-size640 https://www.cyclestreets.net/location/110770/

cyclestreets196639-size640 https://www.cyclestreets.net/location/196639/

cyclestreets85724-size640 https://www.cyclestreets.net/location/85724/

cyclestreets57095-size640 https://www.cyclestreets.net/location/57095/

cyclestreets196620-size640 https://www.cyclestreets.net/location/196620/

cyclestreets59211-size640 https://www.cyclestreets.net/location/59211/

cyclestreets197213-size1800 https://www.cyclestreets.net/location/197213/

Light segregation [3.6]

"Light segregation can be achieved by features such as rubber kerbing, bollards and intermediate planters."

cyclestreets188865-size640 https://www.cyclestreets.net/location/188865/

cyclestreets81878-size640 https://www.cyclestreets.net/location/81878/

Cycle lane [3.7, page 80]

"Cycle lane – a lane within the cross section of the road carriageway for use by cycle users and separated from motor traffic by road markings. A cycle lane may be either: – Advisory – Permissible for motor traffic to overrun the road markings where this cannot be avoided. – Mandatory – Not permissible for motor traffic to cross the road marking, other than the exceptions noted in TSRGD."

cyclestreets81341-size640 https://www.cyclestreets.net/location/81341/

cyclestreets205558-size640 https://www.cyclestreets.net/location/205558/

cyclestreets194549-size640 https://www.cyclestreets.net/location/194549/

cyclestreets192579-size640 https://www.cyclestreets.net/location/192579/

cyclestreets68144-size640 https://www.cyclestreets.net/location/68144/

mvl22 commented 2 months ago

I've added images for each category.

I think the purpose of this action was to determine:

and really I think this relates to https://github.com/nptscot/internal/issues/47.

Can I suggest this ticket be moved out of the web repo as this is more about the R side.

Robinlovelace commented 2 months ago

Looks great but we currently have 4 categories.

Robinlovelace commented 2 months ago

I've added links to the 4 categories above. Will provide mapping to your categories Martin, this is helpful.

Robinlovelace commented 2 months ago

NPT and CBD Classification Table

NPT Classification CBD Classification
Separated cycle track Detached or remote cycle track
Roadside infrastructure Cycle track at carriageway level
Roadside infrastructure Stepped or footway level cycle track
Roadside infrastructure Light segregation
Cycle lane on carriageway Cycle lane
Mixed traffic Mixed traffic street

Note: we have a high bar for "detached": in the osmactive code that classifies OSM ways we set a minimum threshold distance and only above that (10 m if I recall correctly which would mean ~2 m separation for 10 m wide road and 4 m wide cycle track centrelines mapped properly) can it be called detached. That is to avoid cycleways squeezed right next to busy roads being included, like the Leeds-Bradford cycle superhighway, which should not be classified as the best type of infrastructure. Can provide photos but you've seen it already @mvl22 IRL. Make sense? Great conversation and really appreciate the concrete examples.

It's debateable whether the first 3 images in your "Detached" examples are actually detached. Do you know how far they are from the centrelines of the nearest parallel roads in your examples (actually we use cycleway link centroids to nearest vertex on major roads in osmactive which is good at flagging junctions as not detached).

Robinlovelace commented 2 months ago

We have discussed all this with @anguscalder, @joeytalbot, in some detail. It's a good conversation to revisit and very glad to have input and extra thought, with reference to photos.

mvl22 commented 2 months ago

Will provide mapping to your categories Martin, this is helpful.

To be clear, these are not my categories.

They are the six official categories, as shown in the screenshot you posted right at the top.

It's debateable whether the first 3 images in your "Detached" examples are actually detached.

Sorry, I understand the description better now. I've reallocated various photos.

Could you verify that the photos above all match the correct categories in the Cycling by Design guidance category, before I make a further point?

PS I've included some of the Leeds-Bradford Cycleway images.

Robinlovelace commented 1 month ago

Yes, the photos match the CBD guidance well. However, it's important to note in our web app that the 4 NPT categories,

https://github.com/nptscot/nptscot.github.io/blob/ac7d95052fac803d46e4d7e573c9e2e038ee5433/src/datasets.js#L235-L238

Are only loosely based on the CBD. I think it's a good call by @anguscalder call to collapse Cycle track at carriageway level, Stepped or footway level cycle track, and Light segregation into a single category, the reason being that there's no clear hierarchy, those categories can shift in a short distance, and because simplicity is good. So I think the docs should focus on the 4 categories above and simply state that they are based on the more detailed CBD classification with a link to that document. I don't mind including photos of the subtypes, as long as the emphasis is on the NPT classification and not the CBD classification.

Another way that NPT classification differs from CBD: the "Separated cycle track" includes any cycle infrastructure that is more than a threshold distance from a major road. Being Leeds-Bradford style dedicated cycleway next to a quiet road would make it classified as the "Separated cycle track" NPT category. Can link to the relevant code in osmactive. That is right and good I think, and has been agreed in conversations, although not adequately documented yet. This issue represents an opportunity to fix that.

mvl22 commented 1 month ago

OK, so having got a good match of the categories to photos, and a clear description of how these are categorised, we can see that these two cases below would both resolve to Roadside infrastructure.

As a campaigner of 20 years, I really cannot accept that the scoring of these two below should be remotely similar or lumped together. One is completely dire and barely-useable infrastructure that no local authority should be creating, the other is highest quality Dutch standard that everyone should be copying.

So my point really is, is there a good reason to use 4 categories rather than use the definitions of the 6 categories in the guidance, which seem to be reasonably well thought out, and would mean there is then strong linkage and consistency between the guidance and the recommendations that the tools give?

I know this is a pain to reopen and discuss, but it feels to me like there will end up being significant errors in analysis if infrastructure at completely opposite extreme ends of the quality spectrum are lumped together.

cyclestreets85724-size640 https://www.cyclestreets.net/location/85724/

cyclestreets81274-size640 https://www.cyclestreets.net/location/81274/

Robinlovelace commented 1 month ago

Agree: the classification system should not treat the lower one as "Roadside infrastructure".

The good news is that there are tags on the cycleway and road side that can signal that this is high quality and qualitatively different from the Leeds-Bradford cycle superhighway:

I think this issue belongs upstream in the osmactive repo, so have created an issue there:

Robinlovelace commented 1 month ago

For the non controversial ones, is there anything blocking examples being added? I think typical examples would be most useful, we can ask Sustrans Scotland for photos + ideas after we get the placeholders up is my sense.

Robinlovelace commented 1 month ago

https://github.com/nptscot/osmactive/issues/50

mvl22 commented 1 month ago

Agree: the classification system should not treat the lower one as "Roadside infrastructure".

According to your table above it should. It's certainly not the 10m type.

I think this is a clear example of why we should use the six categories in the guidance rather than arbitrarily collapse three very different ones into one. This is one of very many examples now around London and beyond.

Robinlovelace commented 1 month ago

I think this is a clear example of why we should use the six categories in the guidance rather than arbitrarily collapse three very different ones into one. This is one of very many examples now around London and beyond.

@mvl22 as discussed, keeping as is or simply following the imperfect CbD guidance (for no guidance or spec is perfect, all are compromises) are not the only 2 options available to us. Will think it over, look to chat with you and others, and seek to arrive at a good solution.

My latest thinking on this is that it is worth having off-road and alongside infrastructure as categories, as the client has requested. Taking a step back, the biggest issue I see in the conversation above, that you rightly pointed out, is that "roadside infrastructure" is a huge category.

So I think the question is more "how do we differentiate between good and bad roadside infrastructure"?

I have some ideas on that would like to get views from others on how best to differentiate between the types, assuming that the client wants to stick with the offroad and alongside categories, which I think is a safe default.

My guess is that the best solution will be to increase the number of categories from 4 to 5. Would you agree that the quality of infrastructure, e.g. as conveyed in information about width and distance from fast-moving heavy traffic, is more important than whether it's 'detached' (raising the question: by how much?), stepped, or at carriageway level? Also looking to get input from @dabreegster and @anguscalder.

It's important to raise things and suggest changes and I appreciate that but would ask that input is constructive and open-minded.

Robinlovelace commented 1 month ago

Heads-up @mvl22 I'm discussing this with Angus in person now. Decisions incoming soon.

Robinlovelace commented 1 month ago

Decisions:

mvl22 commented 1 month ago

Sounds like a great step forward - thanks for the update.

Robinlovelace commented 1 month ago

Latest classification for Scotland: https://github.com/nptscot/osmactive/pull/55#issuecomment-2410497013

Robinlovelace commented 1 month ago

image

Robinlovelace commented 4 weeks ago

@mvl22 can you update the CbD layer to point here and to support the new categories?

https://nptscot.blob.core.windows.net/pmtiles/cbd_layer_2024-10-01.pmtiles

Robinlovelace commented 4 weeks ago

Prototype layers: https://github.com/nptscot/osmactive/releases/tag/v0.1

See here for the updated categories and agreed colours:

Robinlovelace commented 4 weeks ago

"Segregated Track (wide)" = "#054d05", # Dark Green

Robinlovelace commented 4 weeks ago

Equivalent in .json format for web developer accessibility:

{
  "Segregated Track (wide)": "#054d05",
  "Off Road Cycleway": "#3a9120",
  "Segregated Track (narrow)": "#87d668",
  "Shared Footway": "#ffbf00",
  "Painted Cycle Lane": "#FF0000"
}
mvl22 commented 3 weeks ago

Great to have this dataset now.

PR #246 created.

PS For a future iteration, could you use 'Sentence case' rather than 'American Capitalised Case' for these labels - 'Painted Cycle Lane' etc. are not proper nouns. This will promote consistency with the rest of the interface.

Screenshot 2024-10-18 at 13 40 46

Robinlovelace commented 3 weeks ago

could you use 'Sentence case' rather than 'American Capitalised Case' for these labels - 'Painted Cycle Lane' etc. are not proper nouns

Not my decision, this comes from the client. Tend to agree but no strong feelings on it.

Robinlovelace commented 3 weeks ago

Looks great, good enough for me, will do quick review. Follow-up question: how easy would it be to make each type toglabble? That's for another issue if we do end up doing it though.

Robinlovelace commented 3 weeks ago

@mvl22 see updated description above, 1 down, 3 to go I think..

mvl22 commented 3 weeks ago

Follow-up question: how easy would it be to make each type toggleable?

That can be done using filter/setFilter. The nearest example can be seen here:

https://docs.mapbox.com/mapbox-gl-js/example/filter-markers/

Obviously it would need a little development work to turn this into a nice 'toggles: true' style flag in the data definition, which could then be used for any layer. Do start a new issue in due course if this turns out to be needed.

Robinlovelace commented 3 weeks ago

Thanks Martin an great to see the link to the docs. Will await feedback from Angus on whether it's needed or not. In the meantime, do you think the remaining subtasks in the updated original post in this thread are doable? I imagine tweaking line widths of the Shared Footways will be very quick, adding tooltips should be quick, adding exmamples of each time may take longer. Happy for you to take the initiative if you have ideas on how best to document/communicate the meaning of these updated categories. Will be great to be able to close this issue and move on in any case, building on great progress today.

Robinlovelace commented 3 weeks ago

National map is really interesting:

image

Source: https://nptscot.github.io/#/clos/#8/55.953/-3.138

mvl22 commented 3 weeks ago

Make shared footway lines a bit thinner?

With the updated categories and colours I don't think this aspect should be pursued. They are already less visually prioritised, and having different line thicknesses will only add confusion I think. A shared footway isn't necessarily any narrower in practice than a dedicated track, so I think we should avoid implying that through thicknesses.

As you can see, the orange does not stand out so we shouldn't need to change its thickness:

Screenshot 2024-10-18 at 14 19 44

Screenshot 2024-10-18 at 14 20 18

Robinlovelace commented 3 weeks ago

Fine by me for now

Robinlovelace commented 3 weeks ago

ETA on the other two? Descriptions in tool tips or other betting priority, I see images a nice to have that wet could revisit after more important issues fixed.

Robinlovelace commented 3 weeks ago

:tada: