logo separator

[mkgmap-dev] Test if POI is part of a line

From Felix Herwegh mlmmduk at herwegh.de on Sat Oct 15 17:36:12 BST 2022

 > I would only like to display barrier/highway=gate point icons if they 
are part of a (best routable) line.

Since I try to declutter my maps as best as possible I too had "remove 
non-relevant gates" on my to do list and followed up on that today.
Accounting for points mapped on or between ways and access restrictions 
optionally stemming from point and/or way I was able, to already thin 
out my gates significantly. The include file is just "re-used" from my 
lines processing.

    /# NoAccess gates on relevant highways//
    //# only works w/ mkgmap option --add-pois-to-lines//
    //if (mkgmap:from-node:barrier ~ '.*(gate)' & highway=*) then//
    //# gate on highway//
    //   include "../inc/RaceSurf"; //
    //   # tagging of (preselected) elements w/ hgh:surface=(Race|noRace)//
    //   # depending on quality in regard to race (and gravel) bike use//
    ////
    //  if (hgh:surface=Race) then //
    //       (mkgmap:from-node:access ~ 'no|private//
    //        & !(mkgmap:from-node:bicycle ~ 'yes|permissive')
             ...//)
    //      # relevant access restricted by point//
    //     |//
    //       (access ~ 'no|private' //
    //        & !(bicycle ~ 'yes|permissive')
             ...//)
    //     # relevant access restricted by road segment//
    //[...]//
    //end //
    //end/

But I was not able, to solve the probably most interesting situation:
If a (gate) point is part of two (or more) consecutive ways, it is 
processed multiple times from --add-pois-to-lines, but one would need 
the tags of all ways involved at the same time to make the final 
decision on whether or not to render this point. (That is -for 
starters-, if not at least two ways were deemed interesting, the gate 
might not be rendered although from one way alone, it would).

Is there a concept, allowing to do that?

The only idea I came up with would be, to use the mkgmap:line2poitype 
tag to flag these POIs somehow and finally delete all, if not at least 2 
of those where placed at the exact same location. Somewhat similar to 
deleting identical POIs at the same location as documented for the 
nearby-poi-rules. In the latter case (>2), delete all but one...

Cheers, Felix
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.mkgmap.org.uk/pipermail/mkgmap-dev/attachments/20221015/6bd41ad2/attachment.html>


More information about the mkgmap-dev mailing list