[mkgmap-dev] [PATCH v3] Rework of inc/access
From WanMil wmgcnfg at web.de on Fri Apr 18 10:31:05 BST 2014
Hi Gerd, yep thanks! There was a c&p error for hgv. Attached is the fixed patch v3. WanMil > Hi WanMil, > > okay, if you don't want to add two ways, please make sure that > access=private also sets mkgmap:truck=no > > Gerd > > > Date: Fri, 18 Apr 2014 11:20:02 +0200 > > From: wmgcnfg at web.de > > To: mkgmap-dev at lists.mkgmap.org.uk > > Subject: Re: [mkgmap-dev] [PATCH v1] Rework of inc/access > > > > Hi Gerd, > > > > > Hi WanMil, > > > > > > besides the error reported by Stéphane here are my 50 cents after a > first > > > compare > > > with the unpatched default style: > > > > > > I am not sure, but I think tags like > > > vehicle=private, motor_vehicle=private etc. > > > should not set > > > mkgmap:emergency=no > > > > > > My interpretation regarding routing is that > > > it is equivalent with xxx=destination, > > > so it should set the no-throughroute bit. > > > > > > Reason: > > > If one wants to visit someone living at a private way, we can > assume that > > > he is allowed to go there. On the other hand, a route restriction > > > like a no_left_turn might be ignored if the road in the img file > > > doesn't allow any vehicle. > > > > > > The problem : We have only one no-troughroute bit for each road > segment, so > > > a way with highway=*, access=private, bicycle=yes, foot=yes > > > has to be added as two roads, one with acces for all vehicles > except bike > > > and no-throughroute=true, > > > the other with full access for bikes and pedestrian. > > > This can't be done in the finalize rules, right? > > > > From my point of view duplication of ways should be done only if there > > is a very hard reason for it. > > I don't see the case here. Private ways are private and should not be > > used by anyone. Emergency vehicles should not use it anyhow. In case the > > private way is the target Garmin will ignore the access bits (as far as > > I know) and will route over the non accessible way. > > > > Anyhow I think I haven't fully understood what the throughroute bit > means. > > > > Having the following road network: > > S > > | > > 1=======2====T==3 > > | | > > | | > > 4---------------5 > > > > S = starting point > > T = target point > > <number> = start/end point of a road segment > > |- = usual road (nothroughroute bit not set) > > = = road with nothroughroute bit set > > > > How does Garmin route? > > Does it choose the direct way over the two nothroughroute ways (S-1-2-T)? > > Or does it choose the detour (S-1-4-5-3-T) because it does not route > > over adjacent ways with the nothroughroute bit set? > > > > WanMil > > > > > > > > Gerd > > > Gerd > > > > > > > > > > > > WanMil wrote > > >> Hi, > > >> > > >> attached is a reworked inc/access file. > > >> > > >> It now uses a 1:1 assignment between OSM tag and mkgmap access tag: > > >> foot=* { set mkgmap:foot='${foot}' } > > >> bicycle=* { set mkgmap:bicycle='${bicycle}' } > > >> motorcar=* { set mkgmap:car='${motorcar}' } > > >> goods=* { set mkgmap:delivery='${goods}' } > > >> hgv=* { set mkgmap:truck='${hgv}' } > > >> bus=* { set mkgmap:bus='${bus}' } > > >> taxi=* { set mkgmap:taxi='${taxi}' } > > >> emergency=* { set mkgmap:emergency='${emergency}' } > > >> > > >> > > >> motorcycle is no longer used. There is no clean solution when > motorcycle > > >> != motorcar. The default style supports motorcars. Users that want to > > >> use the cards especially for motorcycling should modify their > inc/access > > >> file appropriately. > > >> > > >> delivery is no longer used. It is not an access key. The wiki notes: > > >> The key delivery is mostly used with the value yes to indicate > that the > > >> restaurant offers delivery of your meal. > > >> > > >> More access keys are used. They are taken into account obeying the > rules > > >> of vehicle subclasses (set motorcar=no if motor_vehicle=no or > vehicle=no > > >> etc.). > > >> > > >> The old rule > > >> highway=path { add foot=yes; add access=no } > > >> did not work for the way [highway=path; access=no]. This way > should not > > >> be used by foot anyway but the rule above errorneously allowed foot. > > >> This is fixed now. > > >> > > >> carpool handling is now disabled. It does not work (as far as I > know) so > > >> the rules are not useful. > > >> > > >> Many thanks to Mario Hantschke who worked out some problems of the old > > >> access file and provided some good ideas for the new rules. > > >> > > >> Please check the new rules. If you are unhappy with some assignements > > >> please post an tagging example of a way and how you think the access > > >> rules should be assigned. > > >> > > >> Have fun! > > >> WanMil > > >> > > >> _______________________________________________ > > >> mkgmap-dev mailing list > > > > > >> mkgmap-dev at .org > > > > > >> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev > > >> > > >> access (3K) > > >> <http://gis.19327.n5.nabble.com/attachment/5803532/0/access> > > > > > > > > > > > > > > > > > > -- > > > View this message in context: > http://gis.19327.n5.nabble.com/PATCH-v1-Rework-of-inc-access-tp5803532p5803542.html > > > Sent from the Mkgmap Development mailing list archive at Nabble.com. > > > _______________________________________________ > > > mkgmap-dev mailing list > > > mkgmap-dev at lists.mkgmap.org.uk > > > http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev > > > > > > > _______________________________________________ > > mkgmap-dev mailing list > > mkgmap-dev at lists.mkgmap.org.uk > > http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev > > > _______________________________________________ > mkgmap-dev mailing list > mkgmap-dev at lists.mkgmap.org.uk > http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev > -------------- next part -------------- # Define the access restrictions # The following tags define the restrictions: # mkgmap:bicycle # mkgmap:foot # mkgmap:car # mkgmap:truck # mkgmap:taxi # mkgmap:bus # mkgmap:emergency # mkgmap:delivery # A class is not allowed to use the way if its tag is set to 'no' # First set access settings with high priority. # # In case a way is tagged with # highway=motorway;access=yes # we assume that foot and bikes are not allowed anyhow. highway=* & motorroad=yes { add bicycle=no; add foot=no; } highway=motorway | highway=motorway_link { add bicycle=no; add foot=no; } access=agricultural { set access=no; add foot=yes } # Now fill the access tree (http://wiki.openstreetmap.org/wiki/Key:access) # This is required so that subsequent rules do not add a tag (bicycle) which is already defined by a higher tag (vehicle) access=* { add foot='${access}'; add vehicle='${access}'; } vehicle=* { add bicycle='${vehicle}'; add motor_vehicle='${vehicle}'; } motor_vehicle=* { add motorcar='${motor_vehicle}'; add goods='${motor_vehicle}'; add hgv='${motor_vehicle}'; add psv='${motor_vehicle}'; add emergency='${motor_vehicle}'; } psv=* { add taxi='${psv}'; add bus='${psv}'; } # Add access rules that are derived from the highway type highway=steps { add foot=yes; add access=no } highway=pedestrian & area!=yes { add foot=yes; add access=no } highway=path { add foot=yes; add bicycle=yes; add access=no } highway=bridleway { add access=no } highway=cycleway { add bicycle=yes; add access=no } highway=footway { add foot=yes; add access=no } railway=platform { add foot=yes; add access=no } # throughroute cannot be handled differently for different vehicle types # Therefore we have to choose one vehicle type - and the winner is: motorcar motorcar=destination { set mkgmap:throughroute=no; set motorcar=yes } access=destination { set mkgmap:throughroute=no; set access=yes } # Normalize all values that indicate a restriction to 'no' foot=private | foot=agricultural { set foot=no } bicycle=private | bicycle=agricultural { set bicycle=no } motorcar=private | motorcar=agricultural { set motorcar=no } goods=private | goods=agricultural { set goods=no } hgv=private | hgv=agricultural { set hgv=no } bus=private | bus=agricultural { set bus=no } taxi=private | taxi=agricultural { set taxi=no } emergency=private | emergency=agricultural { set emergency=no } # Copy the OSM access tags to the mkgmap internal tags foot=* { set mkgmap:foot='${foot}' } bicycle=* { set mkgmap:bicycle='${bicycle}' } motorcar=* { set mkgmap:car='${motorcar}' } goods=* { set mkgmap:delivery='${goods}' } hgv=* { set mkgmap:truck='${hgv}' } bus=* { set mkgmap:bus='${bus}' } taxi=* { set mkgmap:taxi='${taxi}' } emergency=* { set mkgmap:emergency='${emergency}' } # The access tag defines all restrictions that are not already set access=* { addaccess '${access}' } # Check for carpool lane (they are not really supported yet so these lines are commented) # hov=* { add carpool='${hov}' } # (carpool=yes | carpool=designated | carpool=permissive | carpool=official) { set mkgmap:carpool=yes }
- Previous message: [mkgmap-dev] [PATCH v1] Rework of inc/access
- Next message: [mkgmap-dev] [PATCH v3] Rework of inc/access
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the mkgmap-dev mailing list