
Hi Feix, again: There REALLY is no problem with continue or continue with_actions here and there never was. The function triggered by the tag just doesn't do what you expect. I try again to make clear how mkgmap:set_unconnected_type works: The code in mkgmap keeps routable lines separated from non-routable lines. Each line is based on a way that was processed by the style rules in the lines file. If the style adds e.g. 4 different lines for the same OSM way you have 4 line instances refering to the same OSM id, each may be routable or not. After (!) all OSM elements are processed by the style rules mkgmap computes the nodes which are shared by routable lines (or short roads). If a road is not connected to any other road (one with a different OSM id) and the tag mkgmap:set_unconnected_type=none is set this routable line is not added to the map. The line instance is removed. In r2599 this also triggered the removal of all non-routable lines for the same OSM way. This triggering was removed with r2707 so that now the overlay line is still added to the map. My understanding is that you want to control this triggering somehow and we have to think about a situation where the style adds e.g. 2 roads and one overlay line for the same OSM way and only one road has the tag mkgmap:set_unconnected_type=none. Gerd ________________________________________ Von: mkgmap-dev <mkgmap-dev-bounces@lists.mkgmap.org.uk> im Auftrag von Felix Hartmann <extremecarver@gmail.com> Gesendet: Dienstag, 19. September 2017 09:29:09 An: Development list for mkgmap Betreff: Re: [mkgmap-dev] mkgmap:set_unconnected_type differentiate between connected on both sides or on one side only oh yeah - I remember. The problem ist neither the old nor the current behaviour works correctly in comparison to other tags. I complained that it applies to all occurences - even though using continue (i only used a line like highway=abc {set mkgmap:set_unconnected_type=none} [0x?? road_class=? road_speed=? continue] ) I really think the best solution if strict sticking to rules without [] block, and respecting continue vs continue with_actions is not possible would be to have to different special tags - one removing also all non routable overlay lines, while the other tag does not. Back then I only used mkgmap_set_unconnected_type=none to remove unconnected roads that make autorouting go crazy (it's unconnected - someone starts a route there - and the route just breaks - mainly because people did not connect the road correctly - and it has nearly invisible gaps on both side - which Potlach v1 was a bit famous for) - now the use case is more to filter out clutter for the semi_connected so I rather want to have it also filter out all overlays. (I'm fine using continue with_actions as supposed). On 19 September 2017 at 08:16, Gerd Petermann <gpetermann_muenchen@hotmail.com<mailto:gpetermann_muenchen@hotmail.com>> wrote: Well, I just noticed that mkgmap:set_unconnected_type is not yet documented. When I implemented it with r2599 I decided to remove all overlay lines if the road is unconnected and mkgmap:set_unconnected_type=none is used. Later, Steve changed this in r2707, the reason was that you complained about the old behaviour. Please read these old threads carefully: http://gis.19327.n8.nabble.com/Serious-mkgmap-Bug-set-unconnected-type-not-r... http://gis.19327.n8.nabble.com/Commit-r2707-Don-t-complete-remove-an-unconne... My understanding of these discussions is that we need is an option or tag that controls what to do with an overlay line when the underlying road was removed. Gerd Felix Hartmann-2 wrote
But does it mean semi_connected or unconnected? I would like to have both as option if possible.
On 18 September 2017 at 21:22, Gerd Petermann <
gpetermann_muenchen@
wrote:
Hi all,
what do you think about a tag named mkgmap:remove-if-no-road=yes ? I would add code to check all non-routable lines for this tag. If no routable line is found for the same OSM way the line is removed. This check is performed after the processing of the 2 mkgmap:set_xxx_type tags and maybe other routines which remove routable lines because they are too short etc.
Gerd
Felix Hartmann-2 wrote
3. I'm fine with another name - maybe mkgmap:set_semi_connected_ line=none and mkgmap:set_unconnected_line=none? Well I actually already went through my style and added mkgmap:set_semi_connected_type=none - I'm just missing the overlays also being removed as explained to fully use it. I actually had not noticed that mkgmap:set_unconnected_type=none did not remove all the lines that I intended to be removed by it because I never properly checked it using a test file - and there are not many unconnected ways in real OSM data (while there are far more semi_connected lines/ways). Actually I think it should be semiconnected as we alo use unconnected and not un_connected (even though it is two words in proper spelling).
-- Sent from: http://gis.19327.n8.nabble.com/Mkgmap-Development-f5324443.html _______________________________________________ mkgmap-dev mailing list
mkgmap-dev@.org
-- Felix Hartman - Openmtbmap.org & VeloMap.org Schusterbergweg 32/8 6020 Innsbruck Austria - Österreich
_______________________________________________ mkgmap-dev mailing list
mkgmap-dev@.org
-- Sent from: http://gis.19327.n8.nabble.com/Mkgmap-Development-f5324443.html _______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk<mailto:mkgmap-dev@lists.mkgmap.org.uk> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev -- Felix Hartman - Openmtbmap.org & VeloMap.org Schusterbergweg 32/8 6020 Innsbruck Austria - Österreich