GithubHelp home page GithubHelp logo

Comments (13)

poutnikl avatar poutnikl commented on June 5, 2024

There is the variable
assign hascycleway = not and ( or cycleway= cycleway=no|none ) and ( or cycleway:left= cycleway:left=no ) ( or cycleway:right= cycleway:right=no )

So various values for cycleway[:[left|right]] other then "no" or "" are implicitly considered.

Note that my profiles are not primarily aimed for the city traffic, even if well usable. You may want to consider checking a quite new profile in development, dedicated to the city/street traffic, considering many complex city specific conditions. I am going to implement some of his features later as well.

Jacob's streetbike profile at repository utack_brouter_data

from brouter-profiles.

utack avatar utack commented on June 5, 2024

thanks for mentioning it @poutnikl
Something to note about this:
My profile assumes cycleway:right and cycleway:left are oneway, this is against the OSM wiki, but how it is mostly (as in almost always) used in Germany
What should be additionally included in my profile is oneway street cycleways (opposite_lane and opposite_track)
Your profile is working just as well, when people tag strictly according to OSM wiki

from brouter-profiles.

poutnikl avatar poutnikl commented on June 5, 2024

Then the profiles can complement each other, @utack :-) One or the other will work well.
What about implementing Germany switch for people in regions following the wiki ?

from brouter-profiles.

utack avatar utack commented on June 5, 2024

I was wrong, the wiki recommends

It should then be assumed that cycle traffic is allowed to flow in the customary direction for traffic on that side of the road

The exception is cycleway:left/right:oneway=no, which is currently not possible to check for in BRouter, see here
Example:
https://www.openstreetmap.org/way/175725446
Once the new data format is included, we should be able to check for this as well
On my personal "todo" list is to re-structure the cycleway logic similar to the oneway logic, by looking at traffic flow directions. It should bring more logic to the checks

from brouter-profiles.

poutnikl avatar poutnikl commented on June 5, 2024

for @dnbstyle , just for completeness, as you probably know, cycleway=* tag is a feature tag of the main highway=* road. It is not an independent way in OSM context, in contrary to highway=cycleway, even if physically it can be. The routing does not follow cycleway=, but the major highway. Neither the routing geometrically distinguishes the main road and the side cycleway, aside of cycleway:left=* or cycleway:right=*.

The biker is supposed to visually recognize the present cycleway and use it, if desired or required.
The profiles grant the better priorities to roads that have a side cycleway.

from brouter-profiles.

 avatar commented on June 5, 2024

Thank you for your kind help! I didn't know that this is not a distinct separate tag. Then I will check the streetbike profile too and tweak either to fit my needs. :)

from brouter-profiles.

andrew-james-heard avatar andrew-james-heard commented on June 5, 2024

from brouter-profiles.

utack avatar utack commented on June 5, 2024

@andrew-james-heard it is a little different from "fastbike" (if you are speaking about the BRouter default fastbike)

Two things I wanted to do better

  • Treat all ways equally. One example: If we encounter a highway=unclassified and surface=cobblestone, we look at the surface=cobblestone, while the "fastbike" profile just assigns fixed costfactor 1.1

  • Proper evaluation for oneways and proper determination if there is a cycleway in the direction we are driving

One thing that are just preference for my driving style:

  • There is still traffic cost. I am not a race-biking person, while surface is important for my bike with no suspension and thin wheels, I still prefer a mostly-pleasant way with something like compacted fine gravel over a really busy highway with asphalt, or the bike-way with slightly uneven "paving stones" over the street next to it
  • That also means we can go very short ways that are really nasty, like "surface=grass", if it means we can avoid a lot of busy highway with it

And things it does worse:

  • The profile is pretty "fixed" purpose, while the fastbike profile has countless switches to configure for your own wishes
  • It does not generate turn instructions

Hope this helps

from brouter-profiles.

andrew-james-heard avatar andrew-james-heard commented on June 5, 2024

from brouter-profiles.

utack avatar utack commented on June 5, 2024

Let me know if it does some nonsense in your area please

from brouter-profiles.

poutnikl avatar poutnikl commented on June 5, 2024

@andrew-james-heard : Have you tried fastbike-lowtraffic-tertiaries - a Fastbike-lowtraffic derivative ? (Trekking-tertiaries is different profile and is based on my template ).

Josef Zajdlik on Locus forum likes it very much for a road bike. It reportedly offered exactly the same routes he would choose for multiple testing routes he personally knows. He would even replace Fastbike by this.

from brouter-profiles.

utack avatar utack commented on June 5, 2024

@andrew-james-heard i have yet to do left hand traffic support for the cycle way detection, in case you need that

from brouter-profiles.

andrew-james-heard avatar andrew-james-heard commented on June 5, 2024

from brouter-profiles.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.