[mkgmap-dev] Bug in Road Merging - actually doubling roads.
From Gerd Petermann gpetermann_muenchen at hotmail.com on Fri Mar 9 16:12:12 GMT 2018
Hi Mike, the problem in the sample is that there are 5 ways, each with 2 nodes. So, we cannot delete any node without also deleting the corresponding way, and that would mean that we might remove important routing information. Besides that you are right, we have to detect that spike. I just think that the solution is to move all nodes to the same Garmin point, so we have two ways at that single point. Anyway, I just found a stupid bug when handling two points rounded to the same Garmin point and that bug causes some of the poor results. In line 1213 it should be if (c.getDistToDisplayedPoint() >= n.getDistToDisplayedPoint()) instead of if (c.getDistToDisplayedPoint() < n.getDistToDisplayedPoint()) I am now trying to find out what other code might be removed when this error is fixed... Gerd ________________________________________ Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk> im Auftrag von Mike Baggaley <mike at tvage.co.uk> Gesendet: Freitag, 9. März 2018 17:01:27 An: 'Development list for mkgmap' Betreff: Re: [mkgmap-dev] Bug in Road Merging - actually doubling roads. Hi Gerd, I don't know anything about this bit of code, but the problem in the before and after pictures look to me like they are not the result of attempting to fix the angle, but look like they are the result of the second and fourth nodes in the spur both rounding to the same point, and it seems to me that the solution is to detect that the way has gone back on itself, and delete the intermediate node. If there are no junctions between two points that loop back on themselves, they should be able to be safely deleted before they are passed to WAF. Of course, I may be completely misunderstanding the intricacies of the problem, in which case I apologise for interrupting. Cheers, Mike -----Original Message----- From: Gerd Petermann [mailto:gpetermann_muenchen at hotmail.com] Sent: 09 March 2018 08:16 To: Development list for mkgmap <mkgmap-dev at lists.mkgmap.org.uk> Subject: Re: [mkgmap-dev] Bug in Road Merging - actually doubling roads. Hi Felix, okay, thanks. BTW: I still have no good idea how to solve the problem with the spike at node 1270407079. The attached screen shots show the problem. The coloured lines are the input. Many very short ways and all points are far from the Garmin grid points. The picture before.png shows the input to WrongAngleFixer (WAF), the after.png the output. The output is a bit better, but no improvement regarding the spike. I think WAF should collapse the two ways (111528849 and 111528851) which build the spike. Gerd ________________________________________ Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk> im Auftrag von Felix Hartmann <extremecarver at gmail.com> Gesendet: Donnerstag, 8. März 2018 20:47:39 An: Development list for mkgmap Betreff: Re: [mkgmap-dev] Bug in Road Merging - actually doubling roads. Thanks Gerd, I will do some tests on Saturday and then report back. Felix On 8 March 2018 at 11:46, Gerd Petermann <gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com>> wrote: Hi Felix, attached is a patch that improves WrongAngleFixer. When both ways build a junction and both have another point close to that junction and in OSM they are different nodes mkgmap tries harder to avoid that they are rounded to the same coordinate. This is what happened with these two nodes https://www.openstreetmap.org/node/1263658804 https://www.openstreetmap.org/node/1195812701 I found similar situations at some roundabouts, sometimes a way connected to the roundabout and the roundabout way overlap. I am not sure how this patch works with your style, please try it with r4131. A few special cases to look at: https://www.openstreetmap.org/way/208976154 Coordinates: 38.4082747, 16.0787201 https://www.openstreetmap.org/way/312642720 Coordinates: 39.0259441, 8.5967561 https://www.openstreetmap.org/way/148634420 Coordinates: 41.981263, 12.4114831 Gerd ________________________________________ Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk<mailto:mkgmap-dev-bounces at lists.mkgm ap.org.uk>> im Auftrag von Felix Hartmann <extremecarver at gmail.com<mailto:extremecarver at gmail.com>> Gesendet: Samstag, 3. März 2018 19:49:24 An: Development list for mkgmap Betreff: Re: [mkgmap-dev] Bug in Road Merging - actually doubling roads. well in general 0x16 is not avoided by any transport means (or at least it was not a couple of years ago when I checked the influence of types= - that's strange. 0x01 and 0x02 are avoided by bicycle - but in general I never use avoidances except toll and unpaved - they are pretty straight forward. I should do some checks again if something changed with activity routing over the years. If 6 ways on top of each other are routable problems are common (but do not have to occur - not sure why). (oh yeah I forgot to say to add the route=hiking to relations file, I assumed that is clear as it's a route and they are always relations). On 3 March 2018 at 15:27, Gerd Petermann <gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com><mai lto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com>> > wrote: Hi Felix, okay, found out again why merging before angle fixing doesn't work, but I still have no clue why this junction would cause trouble reg. routing with a normal mkgmap binary. Gerd ________________________________________ Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk<mailto:mkgmap-dev-bounces at lists.mkgm ap.org.uk><mailto:mkgmap-dev-bounces at lists.mkgmap.org.uk<mailto:mkgmap-dev-b ounces at lists.mkgmap.org.uk>>> im Auftrag von Gerd Petermann <gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com><mai lto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com>> > Gesendet: Samstag, 3. März 2018 11:34:24 An: Development list for mkgmap Betreff: Re: [mkgmap-dev] Bug in Road Merging - actually doubling roads. Hi Felix, I just noted that I got my results reg. the modified default style with a modified StyledConverter which does the road merging before the wrong angle fixing. Something goes very wrong with this patched version. Gerd ________________________________________ Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk<mailto:mkgmap-dev-bounces at lists.mkgm ap.org.uk><mailto:mkgmap-dev-bounces at lists.mkgmap.org.uk<mailto:mkgmap-dev-b ounces at lists.mkgmap.org.uk>>> im Auftrag von Gerd Petermann <gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com><mai lto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com>> > Gesendet: Samstag, 3. März 2018 11:01:42 An: Development list for mkgmap Betreff: Re: [mkgmap-dev] Bug in Road Merging - actually doubling roads. Hi Felix, no, it is just special at this juntion because the other ways have 0x8 or 0x13. On thursday I wrote that I was able to reproduce a problem at this junction but I forgot to set up routing for car (automotive) :-( I can reproduce a problem with "tour cycling", but I think that is expected with your style, because it avoids main roads by default. Maybe your users made the same error? You suggested to add route=hiking [0x13 road_class=4 road_speed=2 resolution 24 continue] to reproduce a problem. I tried that with no effect. Only after I added a rule in the relations file: type=route & route=hiking { apply { add route=hiking } } With that I see additional routable lines in the map and routing is more less broken at node 412440328 when I try to route from north to anywhere below the node , also the inverse way doesn't work. I tried different variants of the rule like other types or other road classes, always saw the same problem. I see working routing again when I remove way 130665733 from the input file and move node 1263658617 down to 412440328 and merge them (see attached file). I'll try to find out why this is so special in this situation. ciao, Gerd ________________________________________ Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk<mailto:mkgmap-dev-bounces at lists.mkgm ap.org.uk><mailto:mkgmap-dev-bounces at lists.mkgmap.org.uk<mailto:mkgmap-dev-b ounces at lists.mkgmap.org.uk>>> im Auftrag von Felix Hartmann <extremecarver at gmail.com<mailto:extremecarver at gmail.com><mailto:extremecarve r at gmail.com<mailto:extremecarver at gmail.com>>> Gesendet: Freitag, 2. März 2018 22:21:35 An: Development list for mkgmap Betreff: Re: [mkgmap-dev] Bug in Road Merging - actually doubling roads. Well in general 0x16 does not cause any problems. Do you think if I use another type instead (e.g.) 0x13 it won't be problematic, or do you mean that the 0x16 in itself is the problem? On 1 March 2018 at 18:55, Gerd Petermann <gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com><mai lto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com>> <mailto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.c om><mailto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmai l.com>>>> wrote: Hi Felix, okay, I think I can reproduce a routing problem on my Oregon with your map. I have a route that works from south to north but not in the reverse direction. I'll try to create a similar situation with a modified default style to find out what the problem is. My current prime suspect is the way with type 0x16. Gerd ________________________________________ Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk<mailto:mkgmap-dev-bounces at lists.mkgm ap.org.uk><mailto:mkgmap-dev-bounces at lists.mkgmap.org.uk<mailto:mkgmap-dev-b ounces at lists.mkgmap.org.uk>><mailto:mkgmap-dev-bounces at lists.mkgmap.org.uk<m ailto:mkgmap-dev-bounces at lists.mkgmap.org.uk><mailto:mkgmap-dev-bounces at list s.mkgmap.org.uk<mailto:mkgmap-dev-bounces at lists.mkgmap.org.uk>>>> im Auftrag von Felix Hartmann <extremecarver at gmail.com<mailto:extremecarver at gmail.com><mailto:extremecarve r at gmail.com<mailto:extremecarver at gmail.com>><mailto:extremecarver at gmail.com< mailto:extremecarver at gmail.com><mailto:extremecarver at gmail.com<mailto:extrem ecarver at gmail.com>>>> Gesendet: Donnerstag, 1. März 2018 18:09:02 An: Development list for mkgmap Betreff: Re: [mkgmap-dev] Bug in Road Merging - actually doubling roads. routing issues is on devices only - not in Basecamp. Reported so far from Oregon and Edge - routing from North to East over that road. Well what I thought was that mkgmap should check if another road is put above. Right now it's 1 road supposed to be there, 2 and 3 roads overlapping due to that road being too short. Those overlapping somehow would need to be removed (and yes I know they are originally not the same line). My style should I think in maximum create 4 routable lines - however due to overlapping of other lines (due to the sub 4.3m line) it ends up a short stretch with more than 5 routable lines. On 1 March 2018 at 17:47, Gerd Petermann <gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com><mai lto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com>> <mailto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.c om><mailto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmai l.com>>><mailto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at h otmail.com><mailto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenche n at hotmail.com>><mailto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_mue nchen at hotmail.com><mailto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_ muenchen at hotmail.com>>>>> wrote: Hi Felix, Felix Hartmann-2 wrote > Okay - no-merge-lines makes no difference, also removing > addArcsToMajorRoads(); > function makes no difference. And I just noticed - the patch does not > work. > It works in it's own way - but not achieving the result that is needed. > Whatever I do - I still end up with 6 routable lines. > > I guess the patch checks for each road that it is not more than 4 times in > the map. So I end up with 1, 2, and 3 (1 that is supposed to be in the > map, > 2 from the east not supposed, and 3 from the south, not supposed). (always > using gpsmapedit to check results). yes, that is what it does. Didn't you suggest something like that? You still did not tell me how I can reproduce a crash with this data, so I can only guess. I didn't see any routing issues so far with your maps, only the ugly rendering. Is this the only problem or is there really a routing issue? If yes, please let me know how to reproduce it. Gerd -- Sent from: http://gis.19327.n8.nabble.com/Mkgmap-Development-f5324443.html _______________________________________________ mkgmap-dev mailing list mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at lists.mkgmap.org.uk><mailto :mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at lists.mkgmap.org.uk>><mail to:mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at lists.mkgmap.org.uk><mai lto:mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at lists.mkgmap.org.uk>>>< mailto:mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at lists.mkgmap.org.uk> <mailto:mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at lists.mkgmap.org.uk >><mailto:mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at lists.mkgmap.org. uk><mailto:mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at 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 _______________________________________________ mkgmap-dev mailing list mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at lists.mkgmap.org.uk><mailto :mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at lists.mkgmap.org.uk>><mail to:mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at lists.mkgmap.org.uk><mai lto:mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at 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 _______________________________________________ mkgmap-dev mailing list mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at lists.mkgmap.org.uk><mailto :mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at lists.mkgmap.org.uk>> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev _______________________________________________ mkgmap-dev mailing list mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at lists.mkgmap.org.uk><mailto :mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at 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 _______________________________________________ mkgmap-dev mailing list mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at 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 _______________________________________________ mkgmap-dev mailing list mkgmap-dev at lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
- Previous message: [mkgmap-dev] Bug in Road Merging - actually doubling roads.
- Next message: [mkgmap-dev] Bug in Road Merging - actually doubling roads.
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the mkgmap-dev mailing list