[mkgmap-dev] Bug in Road Merging - actually doubling roads.
From Felix Hartmann extremecarver at gmail.com on Sat Mar 10 17:29:38 GMT 2018
well we already have code (it's a patch still I think?) to remove roads with connection to only one side. --> set mkgmap:set_semi_connected_type=none; Maybe we could have a filter to remove all semi_connected_type lines with min length? 4-5m long roads that are only semi connected will be just adding clutter anyway. I don't think we lose any essential streets by removing them. Maybe only do not remove them if an address is attached to them (not autogenerated address - but fully entered in OSM)? And yes removing supershort roads and copying the restrictions to the adjoining ones would be best I guess. On 10 March 2018 at 18:11, Mike Baggaley <mike at tvage.co.uk> wrote: > Hi Gerd, > > If we take for example that the connection between each two nodes is a > separate way, with different properties which may affect routing, then any > properties in the ways in the spike will have no effect on routing. Let's > say that the side road in the screenshots has no access restrictions > between > the 1st and 2nd points, bars traffic between the 2nd and 3rd, then has no > restrictions after that. With the current code, the access restriction will > be in the spike and hence will not prevent routing past the end of the > spike, providing the route doesn't attempt to go down the spike. Based on > that, as a first stab, we would be no worse off by just deleting the spike > whatever its access restrictions may be. > > The ideal would be that having detected that a road with no junctions has > looped back to the same co-ordinate, check whether the loopback has access > restrictions or highway type which are more restrictive than the ones > either > side. If not, just delete the spike. If the loopback is more restrictive, > delete the spike and move the restrictions to one side or the other. > Probably would also be useful to output a message saying a spike has been > deleted; the mapper could then review the OSM data with a view to making it > more mkgmap friendly, providing this can be achieved without compromising > the OSM representation (I have no idea how many spikes might be detected). > > Cheers, > Mike > > -----Original Message----- > From: Gerd Petermann [mailto:gpetermann_muenchen at hotmail.com] > Sent: 09 March 2018 16:12 > To: Development list for mkgmap <mkgmap-dev at lists.mkgmap.org.uk> > Subject: Re: [mkgmap-dev] Bug in Road Merging - actually doubling roads. > > 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:gp > etermann_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:mk > gmap-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:extremec > arver 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:gp > etermann_muenchen at hotmai > l.com>>><mailto:gpetermann_muenchen at hotmail.com<mailto:gp > etermann_muenchen at h > otmail.com><mailto:gpetermann_muenchen at hotmail.com<mailto:gp > etermann_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 > > > _______________________________________________ > mkgmap-dev mailing list > 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 -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://www.mkgmap.org.uk/pipermail/mkgmap-dev/attachments/20180310/5be107aa/attachment-0001.html>
- 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