<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div class=""><div class=""></div><div class=""><br class=""></div><div><br class=""><blockquote type="cite" class=""><div class="">Am 20.12.2019 um 19:56 schrieb Arndt Röhrig <<a href="mailto:arndt@speichenkarte.de" class="">arndt@speichenkarte.de</a>>:</div><br class="Apple-interchange-newline"><div class="">

  
  <meta charset="UTF-8" class=""> 
 
 <div class="">
  <div class="">
   Hi Gerd,
  </div>
  <div class="">
   <br class="">
  </div>
  <div class="">
   with r4397 i used this:
  </div>
  <div class="">
   <br class="">
  </div>
  <div class="">
   mkgmap:lu:cemetery=* &! ((route_mtb=*|route_icn=*|route_ncn=*|route_lcn=*|route_rcn=*) | bicycle~'yes|official|designated|dismount|ok') {set rad=nein}
  </div>
  <div class="">
   <br class="">
  </div>
  <div class="">
   and this
  </div>
  <div class="">
   <br class="">
  </div>
  <div class="">
   highway~'unclassified|minor' &!(mkgmap:lu:residential=*) &!(tunnel=*) { name'${LangBez}'} [0x10112 resolution 24 continue]
   <br class="">highway~'unclassified|minor' &!(mkgmap:lu:residential=*) &!(tunnel=*) { name'${LangBez}'} [0x10113 resolution 23-22 continue]
   <br class="">highway~'unclassified|minor' &!(mkgmap:lu:residential=*) &!(tunnel=*) { name'${LangBez}'} [0x10114 resolution 21-21 continue]
   <br class="">highway~'unclassified|minor' &!(mkgmap:lu:residential=*) &!(tunnel=*) { name'${LangBez}'} [0x10115 resolution 20-20 continue]
   <br class="">highway~'unclassified|minor' &(mkgmap:lu:residential=*) &!(tunnel=*) { name'${LangBez}'} [0x10112 resolution 24 continue]
   <br class="">highway~'unclassified|minor' &(mkgmap:lu:residential=*) &!(tunnel=*) { name'${LangBez}'} [0x10113 resolution 23-23 continue]
   <br class="">highway~'unclassified|minor' &(mkgmap:lu:residential=*) &!(tunnel=*) { name'${LangBez}'} [0x10114 resolution 22-21 continue]
   <br class="">highway~'unclassified|minor' &(mkgmap:lu:residential=*) &!(tunnel=*) { name'${LangBez}'} [0x10115 resolution 20-20 continue]
  </div>
  <div class="">
   <br class="">
  </div>
  <div class="">
   I think it´s nice, to expand the function mkgmap:lu:cemetery, so that some other polys (playground, military, deponie etc) work with this.
  </div>
  <div class="">
   <br class="">
  </div>
  <div class="">
   i don´t understand all mails, because my english is .....(:
  </div>
  <div class="">
   <br class="">
  </div>
  <div class="">
   Thank you for all the work you do! 
  </div>
  <div class="">
   <br class="">
  </div>
  <div class="">
   best regards
  </div>
  <div class="">
   <br class="">
  </div>
  <div class="">
   Arndt
  </div>
  <blockquote type="cite" class="">
   <div class="">
    Gerd Petermann <
    <a href="mailto:gpetermann_muenchen@hotmail.com" class="">gpetermann_muenchen@hotmail.com</a>> hat am 20. Dezember 2019 um 18:32 geschrieben:
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    Hi all,
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    attached is an OSM file with various test cases. Assume we want to get the result for landuse=residential.
   </div>
   <div class="">
    Please load it in JOSM and search for expected=in or expected=out or expected=straddle and finally expected="?"
   </div>
   <div class="">
    and let me know as soon as possible if you don't agree with anything. (each case has a different name for the object to be tested.
   </div>
   <div class="">
    The cases with "?" are special, I think b9 and b10 are not important, but the others are very usual in real OSM data.
   </div>
   <div class="">
    The existing ResidentialHook would add mkgmap:residential to b13, b14 and w26.
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    @Ticker:
   </div>
   <div class="">
    The residential areas around b13 and b14 show the special case with multipolygons. The hook probably "sees" something like the b13 example when looking at b14 because the multipolygons are cut into pieces without holes before the hook is executed.
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    @all: Would be very good to get some feedback on this, even if you think that you don't need the hook for your style.
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    Gerd
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    ________________________________________
   </div>
   <div class="">
    Von: mkgmap-dev <
    <a href="mailto:mkgmap-dev-bounces@lists.mkgmap.org.uk" class="">mkgmap-dev-bounces@lists.mkgmap.org.uk</a>> im Auftrag von Ticker Berkin <
    <a href="mailto:rwb-mkgmap@jagit.co.uk" class="">rwb-mkgmap@jagit.co.uk</a>>
   </div>
   <div class="">
    Gesendet: Freitag, 20. Dezember 2019 13:49
   </div>
   <div class="">
    An: mkgmap development
   </div>
   <div class="">
    Betreff: Re: [mkgmap-dev] Commit r4398: revert changes from r4397 (--is-in-landuse option)
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    Hi
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    Given the complexity and cpu cost of calculating this, the various
   </div>
   <div class="">
    questions, hence answers possible and it has to be done for all
   </div>
   <div class="">
    elements if the --is-in option is given what about making it a function
   </div>
   <div class="">
    instead.
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    This means that it only needs to be computed for elements where the
   </div>
   <div class="">
    answer matters and, as a parameter, the question about what the
   </div>
   <div class="">
    required is-in means can be asked.
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    eg, in points:
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    if building=church and is-in('landuse', 'cemetery')
   </div>
   <div class="">
    {add name='Chapel of Rest'}
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    in lines:
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    if highway=* and is-in('landuse', 'cemetary', 'fully') {add bicycle=no}
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    etc.
   </div>
   <div class="">
    Above are just approximations of how the parameters might work.
   </div>
   <div class="">
    The various levels of is-in that might be required should be
   </div>
   <div class="">
    considered, as per Gerd's comments.
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    For some of the examples that have been given for use of this facility,
   </div>
   <div class="">
    I feel they should really be solved by accurate tagging.
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    @gerd Although it looked like it, I didn't really intend that elements
   </div>
   <div class="">
    were tagged with NO if no part was within the polygon.
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    Ticker
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    On Fri, 2019-12-20 at 10:43 +0000, Gerd Petermann wrote:
   </div>
   <blockquote type="cite" class="">
    <div class="">
     Hi all,
    </div>
   </blockquote>
   <blockquote type="cite" class="">
    <div class="">
     I think I have now the needed methods to be able to distuingish if a
    </div>
    <div class="">
     given node is inside, outside or "on boundary" of a polygon.
    </div>
    <div class="">
     In (1) Ticker suggested to use these rules to determine what tag the
    </div>
    <div class="">
     hook should add either IN, OUT, or STRADDLE as a tag value.
    </div>
    <div class="">
     The current implementation in ResidentialHook adds either no tag
    </div>
    <div class="">
     (meaning outside) or a tag with the value "yes" or the name of the
    </div>
    <div class="">
     found residential area.
    </div>
   </blockquote>
   <blockquote type="cite" class="">
    <div class="">
     The typical rule to use this tag would be
    </div>
    <div class="">
     mkgmap:residential=* {do something}
    </div>
   </blockquote>
   <blockquote type="cite" class="">
    <div class="">
     I think we should NOT add the tag with a value OUT, else the above
    </div>
    <div class="">
     rule will fail. On the other hand, I assume that nobody use a rule
    </div>
    <div class="">
     like
    </div>
    <div class="">
     mkgmap:residential=* & mkgmap:residential!=yes {do something with the
    </div>
    <div class="">
     name contained in mkgmap:residential}
    </div>
    <div class="">
     I think it was not a good idea to use the name, I used it for
    </div>
    <div class="">
     debugging.
    </div>
   </blockquote>
   <blockquote type="cite" class="">
    <div class="">
     Open question: Should we really just count points?
    </div>
    <div class="">
     Assume you have a U-shaped cemetery and a highway=footway with just
    </div>
    <div class="">
     two points starts inside the left upper part and ends inside the
    </div>
    <div class="">
     right upper part. Most of the way would be outside but the points are
    </div>
    <div class="">
     inside the cemetery. No idea how often this happens, but the result
    </div>
    <div class="">
     would be "IN" with Tickers rules. Even when you add (barrier=gate)
    </div>
    <div class="">
     nodes on the boundaries of the cemetery the result is still "IN"
    </div>
    <div class="">
     I woud call this result wrong and expect a value like STRADDLE.
    </div>
   </blockquote>
   <blockquote type="cite" class="">
    <div class="">
     Gerd
    </div>
   </blockquote>
   <blockquote type="cite" class="">
    <div class="">
     (1) 
     <a href="http://gis.19327.n8.nabble.com/Commit-r4397-implement-and-documen" rel="noopener" target="_blank" class="">http://gis.19327.n8.nabble.com/Commit-r4397-implement-and-documen</a>
    </div>
    <div class="">
     t-new-option-is-in-landuse-value-value-tp5953495p5953703.html
    </div>
   </blockquote>
   <blockquote type="cite" class="">
    <div class="">
     ________________________________________
    </div>
    <div class="">
     Von: mkgmap-dev <
     <a href="mailto:mkgmap-dev-bounces@lists.mkgmap.org.uk" class="">mkgmap-dev-bounces@lists.mkgmap.org.uk</a>> im Auftrag
    </div>
    <div class="">
     von svn commit <
     <a href="mailto:svn@mkgmap.org.uk" class="">svn@mkgmap.org.uk</a>>
    </div>
    <div class="">
     Gesendet: Mittwoch, 18. Dezember 2019 09:24
    </div>
    <div class="">
     An: 
     <a href="mailto:mkgmap-svn@lists.mkgmap.org.uk" class="">mkgmap-svn@lists.mkgmap.org.uk</a>; 
     <a href="mailto:mkgmap-dev@lists.mkgmap.org.uk" class="">mkgmap-dev@lists.mkgmap.org.uk</a>
    </div>
    <div class="">
     Betreff: [mkgmap-dev] Commit r4398: revert changes from r4397 (--is
    </div>
    <div class="">
     -in-landuse option)
    </div>
   </blockquote>
   <blockquote type="cite" class="">
    <div class="">
     Version mkgmap-r4398 was committed by gerd on Wed, 18 Dec 2019
    </div>
   </blockquote>
   <blockquote type="cite" class="">
    <div class="">
     revert changes from r4397 (--is-in-landuse option)
    </div>
    <div class="">
     The test is too lazy and requires a lot more work.
    </div>
   </blockquote>
   <blockquote type="cite" class="">
    <div class="">
     <a href="http://www.mkgmap.org.uk/websvn/revision.php?repname=mkgmap&rev=4398" rel="noopener" target="_blank" class="">http://www.mkgmap.org.uk/websvn/revision.php?repname=mkgmap&rev=4398</a>
    </div>
    <div class="">
     _______________________________________________
    </div>
    <div class="">
     mkgmap-dev mailing list
    </div>
    <div class="">
     <a href="mailto:mkgmap-dev@lists.mkgmap.org.uk" class="">mkgmap-dev@lists.mkgmap.org.uk</a>
    </div>
    <div class="">
     <a href="http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev" rel="noopener" target="_blank" class="">http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev</a>
    </div>
    <div class="">
     _______________________________________________
    </div>
    <div class="">
     mkgmap-dev mailing list
    </div>
    <div class="">
     <a href="mailto:mkgmap-dev@lists.mkgmap.org.uk" class="">mkgmap-dev@lists.mkgmap.org.uk</a>
    </div>
    <div class="">
     <a href="http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev" rel="noopener" target="_blank" class="">http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev</a>
    </div>
   </blockquote>
   <div class="">
    _______________________________________________
   </div>
   <div class="">
    mkgmap-dev mailing list
   </div>
   <div class="">
    <a href="mailto:mkgmap-dev@lists.mkgmap.org.uk" class="">mkgmap-dev@lists.mkgmap.org.uk</a>
   </div>
   <div class="">
    <a href="http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev" rel="noopener" target="_blank" class="">http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev</a>
   </div>
   <div class="">
    _______________________________________________
   </div>
   <div class="">
    mkgmap-dev mailing list
   </div>
   <div class="">
    <a href="mailto:mkgmap-dev@lists.mkgmap.org.uk" class="">mkgmap-dev@lists.mkgmap.org.uk</a>
   </div>
   <div class="">
    <a href="http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev" rel="noopener" target="_blank" class="">http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev</a>
   </div>
  </blockquote> 
 </div>

_______________________________________________<br class="">mkgmap-dev mailing list<br class=""><a href="mailto:mkgmap-dev@lists.mkgmap.org.uk" class="">mkgmap-dev@lists.mkgmap.org.uk</a><br class="">http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev</div></blockquote></div><br class=""></div></body></html>