Hi Felix,

I do understand that one would want to avoid rendering gates which are not on 
highways, but I don't understand why you care about
the effect on routing. That's a completely different story and I think mkgmap 
handles this very well with the --link-pois-to-ways option.
Or maybe you mean something else?

A barrier node should never be connected to more than one way, else it is a 
mapping error and mkgmap reports this in the log (if enabled).
It should be a rare case and thus I see no need to add lots of logic to avoid 
the rendering.
The corresponding nodes should be fixed in OSM.

Gerd

________________________________________
Von: mkgmap-dev <mkgmap-dev-boun...@lists.mkgmap.org.uk> im Auftrag von Felix 
Herwegh <mlmm...@herwegh.de>
Gesendet: Samstag, 15. Oktober 2022 18:36
An: mkgmap-dev@lists.mkgmap.org.uk
Betreff: Re: [mkgmap-dev] Test if POI is part of a line

> 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
_______________________________________________
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
https://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev

Reply via email to