<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>Hi WanMil,<br><br>attached is a patch for r2914. It fixes the problem with --link-poi-to-ways that<br>was introduced with r2790 in the branch.<br>With this patch the option should again work like in trunk r2889.<br>If you think it is okay please commit it and <br>I'll post a 2nd version of the link-pois-to-ways patch<br>later.<br><br>Gerd<br><br><div>&gt; Date: Fri, 27 Dec 2013 21:42:59 +0100<br>&gt; From: wmgcnfg@web.de<br>&gt; To: mkgmap-dev@lists.mkgmap.org.uk<br>&gt; Subject: Re: [mkgmap-dev] [patch v1] link-pois-to-ways and restrictions<br>&gt; <br>&gt; Hi Gerd,<br>&gt; <br>&gt; r2790 is quite old. I have tested the link-pois-to-ways code at some <br>&gt; time after that but maybe I did check access restrictions only. The <br>&gt; change was intended to implement the calculation at one point only. The <br>&gt; main idea is, that there is a clear distinction between code before <br>&gt; postConvertRules() and after that. Code before postConvertRules() can <br>&gt; use (and has to implement) several more tags than after postConvertRules().<br>&gt; <br>&gt; I get the feeling that it might be easier to move the handling of the <br>&gt; link-pois-to-ways to an earlier point in the processing. The current <br>&gt; code is quite complicated. Maybe it could be moved after processing the <br>&gt; points style file and just before processing the lines and polygons <br>&gt; style file. At this point modifications might be possible on the OSM way <br>&gt; data like we do before the style processing is started (e.g. <br>&gt; LinkDestinationHook).<br>&gt; <br>&gt; If you want to leave the code where it is I would recommend to put the <br>&gt; mkgmap:road-speed calcs etc. to separate methods so that they can be <br>&gt; called from postConvertRules() and the pois handling. That also <br>&gt; encapsulates these tags.<br>&gt; <br>&gt; WanMil<br>&gt; <br>&gt; &gt; Hi WanMil,<br>&gt; &gt;<br>&gt; &gt; it is probably better to change the POI code so that it creates modified<br>&gt; &gt; copies of the<br>&gt; &gt; corresponding GType instance instead of adding tags.<br>&gt; &gt; The code adds a tag like mkgmap:road-speed=-1<br>&gt; &gt; to the a part of the way, but that is not evaluated later.<br>&gt; &gt; Before r2790, the tag was evaluated, but the code did<br>&gt; &gt; not verify whether the way already contained the<br>&gt; &gt; same key with maybe mkgmap:road-speed=+2.<br>&gt; &gt; I'll try to fix it tomorrow.<br>&gt; &gt;<br>&gt; &gt; Gerd<br>&gt; &gt;<br>&gt; &gt;<br>&gt; &gt; GerdP wrote<br>&gt; &gt;&gt; Hi WanMil,<br>&gt; &gt;&gt;<br>&gt; &gt;&gt; with r2790 you moved the code to evaluate mkgmap:road-speed from<br>&gt; &gt;&gt; addRoadWithoutLoops() to postConvertRules().<br>&gt; &gt;&gt;<br>&gt; &gt;&gt; Gerd<br>&gt; &gt;&gt; WanMil wrote<br>&gt; &gt;&gt;&gt;&gt; Hi WanMil,<br>&gt; &gt;&gt;&gt;&gt;<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; well, I think that means that part 1) is not yet working.<br>&gt; &gt;&gt;&gt;&gt;   &gt;<br>&gt; &gt;&gt;&gt;&gt;   &gt; No, I really only tested part 2), so I tested barriers only.<br>&gt; &gt;&gt;&gt;&gt;   &gt; Now I've tested part 1) also but it does not seem to work.<br>&gt; &gt;&gt;&gt;&gt;   &gt;<br>&gt; &gt;&gt;&gt;&gt;   &gt; I've changed the rule in the points file to<br>&gt; &gt;&gt;&gt;&gt;   &gt; barrier=bollard | barrier=cycle_barrier<br>&gt; &gt;&gt;&gt;&gt;   &gt; { set mkgmap:road-speed=0; }<br>&gt; &gt;&gt;&gt;&gt;   &gt;<br>&gt; &gt;&gt;&gt;&gt;   &gt; But the road speed of ways with barrier=bollard does not seem to be<br>&gt; &gt;&gt;&gt;&gt; changed.<br>&gt; &gt;&gt;&gt;&gt; yes, neither the patched version nor trunk do work.<br>&gt; &gt;&gt;&gt;&gt;<br>&gt; &gt;&gt;&gt;&gt;   &gt;<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; I am not sure, but I think you moved the evaluation of the<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; tags mkgmap:road-speed and mkgmap:road-class<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; so that the interpretation of the POI has no effect.<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; Was that intended?<br>&gt; &gt;&gt;&gt;&gt;   &gt;<br>&gt; &gt;&gt;&gt;&gt;   &gt; I don't understand. Which commit do you mean? Your patch is for r2907<br>&gt; &gt;&gt;&gt;&gt;   &gt; and I don't think that there was any change after that?<br>&gt; &gt;&gt;&gt;&gt;<br>&gt; &gt;&gt;&gt;&gt; I meant the change in the branch. The tag is now only<br>&gt; &gt;&gt;&gt;&gt; evaluated in postConvertRules(), and that is called before<br>&gt; &gt;&gt;&gt;&gt; the POI evaluation.<br>&gt; &gt;&gt;&gt;<br>&gt; &gt;&gt;&gt; I checked all commits back to r2851 from Dec 1st but didn't find the<br>&gt; &gt;&gt;&gt; point you are addressing.<br>&gt; &gt;&gt;&gt;<br>&gt; &gt;&gt;&gt; Can you please also check which commit do you mean?<br>&gt; &gt;&gt;&gt;<br>&gt; &gt;&gt;&gt;&gt;<br>&gt; &gt;&gt;&gt;&gt;   &gt;<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt;<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; &gt;<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; &gt;<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; &gt; &gt;<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; &gt; &gt; The patch also changes the meaning of route restrictions.<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; &gt; &gt; In r2907 and before, route restrictions prohibit access for<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; &gt; &gt; pedestrians and emergency, the patched version<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; &gt; &gt; allows them by default.<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; &gt;<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; &gt; Does that mean a common turn restriction from a=&gt;b also means<br>&gt; &gt;&gt;&gt;&gt; that<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; &gt; pedestrians never can route a=&gt;b?<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt;<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; yes, in trunk all turn restrictions are created without an<br>&gt; &gt;&gt;&gt;&gt; exception<br>&gt; &gt;&gt;&gt;&gt;   &gt; &gt; for pedestrians or emergency.<br>&gt; &gt;&gt;&gt;&gt;   &gt;<br>&gt; &gt;&gt;&gt;&gt;   &gt; Funny bug. I wonder why the exceptions for pedestrians and emergency<br>&gt; &gt;&gt;&gt;&gt; is<br>&gt; &gt;&gt;&gt;&gt;   &gt; implemented different to the other exceptions?<br>&gt; &gt;&gt;&gt;&gt; The bits are coded at a different place, see<br>&gt; &gt;&gt;&gt;&gt; wiki.openstreetmap.org/wiki/OSM_Map_On_Garmin/NOD_Subfile_Format#Table_C<br>&gt; &gt;&gt;&gt;<br>&gt; &gt;&gt;&gt; Ah, that's a funny bit coding within the Garmin format....<br>&gt; &gt;&gt;&gt;<br>&gt; &gt;&gt;&gt;&gt;<br>&gt; &gt;&gt;&gt;&gt; Gerd<br>&gt; &gt;&gt;&gt;&gt;<br>&gt; &gt;&gt;&gt;&gt;<br>&gt; &gt;&gt;&gt;&gt; _______________________________________________<br>&gt; &gt;&gt;&gt;&gt; mkgmap-dev mailing list<br>&gt; &gt;&gt;&gt;&gt;<br>&gt; &gt;<br>&gt; &gt;&gt;&gt; mkgmap-dev@.org<br>&gt; &gt;<br>&gt; &gt;&gt;&gt;&gt; http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev<br>&gt; &gt;&gt;&gt;&gt;<br>&gt; &gt;&gt;&gt;<br>&gt; &gt;&gt;&gt; _______________________________________________<br>&gt; &gt;&gt;&gt; mkgmap-dev mailing list<br>&gt; &gt;<br>&gt; &gt;&gt;&gt; mkgmap-dev@.org<br>&gt; &gt;<br>&gt; &gt;&gt;&gt; http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev<br>&gt; &gt;<br>&gt; &gt;<br>&gt; &gt;<br>&gt; &gt;<br>&gt; &gt;<br>&gt; &gt; --<br>&gt; &gt; View this message in context: http://gis.19327.n5.nabble.com/patch-v1-link-pois-to-ways-and-restrictions-tp5790650p5790993.html<br>&gt; &gt; Sent from the Mkgmap Development mailing list archive at Nabble.com.<br>&gt; &gt; _______________________________________________<br>&gt; &gt; mkgmap-dev mailing list<br>&gt; &gt; mkgmap-dev@lists.mkgmap.org.uk<br>&gt; &gt; http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev<br>&gt; &gt;<br>&gt; <br>&gt; _______________________________________________<br>&gt; mkgmap-dev mailing list<br>&gt; mkgmap-dev@lists.mkgmap.org.uk<br>&gt; http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev<br></div>                                               </div></body>
</html>