[mkgmap-dev] Basecamp and NET/NOD changes
From Gerd Petermann gpetermann_muenchen at hotmail.com on Fri Nov 22 16:41:27 GMT 2019
Hi Ticker, attached is a patch which improves routing for my small sample with only one island. It also fixes some of the problems reported by display tool by calling the island detection before writing RGN. Still, it doesn't help at all with your test case. I did not see any effect on routing when I changed the order of roads in NET. So, order in RGN is important, but maybe the problem is not the order within one subdiv, maybe it would be better to change the split process so that non-routable roads (those with skipAddToNOD() == true) are in different sub divisions. The sample is here: http://files.mkgmap.org.uk/download/456/ticker-part-mod.zip Maybe you want to play with that, I'll continue tomorrow... Gerd ________________________________________ Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk> im Auftrag von Gerd Petermann <gpetermann_muenchen at hotmail.com> Gesendet: Freitag, 22. November 2019 12:57 An: Ticker Berkin; Development list for mkgmap Betreff: Re: [mkgmap-dev] Basecamp and NET/NOD changes Hi Ticker, Reg. order: All files (RGN, NET, NOD) show changes when the order changes. Strange thing is that Basecamp doesn't fail to calculate the route for other vehicles. I also looked at those messages from NodCheck. I think it doesn't handle the case that two boundary nodes appear at the same (Garmin) location. Anyhow, in my reduced data this message is not displayed and still routing fails. Gerd ________________________________________ Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk> im Auftrag von Ticker Berkin <rwb-mkgmap at jagit.co.uk> Gesendet: Freitag, 22. November 2019 12:17 An: Development list for mkgmap Betreff: Re: [mkgmap-dev] Basecamp and NET/NOD changes Hi Gerd That's interesting. What effect does this ordering have on the resultant NET/NOD/RGN ordering and contents? Should the RouteCenters have the same contents? I've been trying to decipher the way these are written and there is a lot of leaving space for later writing once offsets are known, so if some sizes or counts are not what the logic expects, it could cause apparently random problems depending ordering. Looking at the errors at the end of NodCheck: > ERROR: class boundary node:f81c5: not sorted > ERROR: node 35bdd: high class boundary node not included in NOD 4 [1,] the first happens with older releases, before the NET-no-NOD merge, but the next is new. NodCheck might just be running off the end of that section of the file, but I was trying to work out group logic was processing road-class for NODs that would be dropped Ticker On Fri, 2019-11-22 at 10:44 +0000, Gerd Petermann wrote: > Hi Ticker, > > some news: > I am able to reproduce the routing problems in Basecamp with a rather > small input file and the default style. The involved route is very > short. > The interesting point is this: > When I use this command the routing problem appears: > --check-routing-island-len=700 --route --gmapi --preserve-element > -order ticker-part-mod.osm > When I remove the option --preserve-element-order the problem > disappears. > --check-routing-island-len=700 --route --gmapi ticker-part-mod.osm > > The data contains an island which appears as first way in the input > file. When I move it before the first relation routing works also > with --preserve-element-order, > so order seems important. Open question is what needs to be sorted... > > Gerd > > ________________________________________ > Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk> im Auftrag > von Gerd Petermann <gpetermann_muenchen at hotmail.com> > Gesendet: Donnerstag, 21. November 2019 19:52 > An: Ticker Berkin; Development list for mkgmap > Betreff: Re: [mkgmap-dev] Basecamp and NET/NOD changes > > Hi Ticker, > > the attached patch for mkgmap makes display tool happy again but it > doesn't solve the routing problems in Basecamp. > > I still try to find a reason for the routing problems, maybe it > simply doesn't like roads without NOD info in a routable map, > maybe your two tiles are very special... > > Gerd > > ________________________________________ > Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk> im Auftrag > von Gerd Petermann <gpetermann_muenchen at hotmail.com> > Gesendet: Donnerstag, 21. November 2019 15:42 > An: Ticker Berkin; Development list for mkgmap > Betreff: Re: [mkgmap-dev] Basecamp and NET/NOD changes > > Hi Ticker, > > I'm still investigating. I think display tool fails when it finds > nodes in NOD without any arcs. With the current code this happens > e.g. for way 23989284 > in 74210002.osm.pbf, a highway way near the tile boundary, with only > one node in the tile and no connection to other roads in the tile. > I am not yet sure where to fix that. > > Gerd > > ________________________________________ > Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk> im Auftrag > von Ticker Berkin <rwb-mkgmap at jagit.co.uk> > Gesendet: Donnerstag, 21. November 2019 14:19 > An: Development list for mkgmap > Betreff: Re: [mkgmap-dev] Basecamp and NET/NOD changes > > Hi Gerd > > Thanks for investigating this. As the eTrex routing seems to work > (maybe it is more similar to Mapsource than Basecamp) I'll persist > with > island removal. > > Looking at display:NetCheck errors, it looks like the > RoadDef.netFlags > bit: > RoadDef: public static final int NET_FLAG_ADDRINFO = 0x10; > display: private static final int RD_HAS_STREET_ADDRESS_INFO = > 0x10; > and/or nodeCountInner isn't getting set correctly when island-removal > happens to the road. > > Ticker > > On Thu, 2019-11-21 at 10:00 +0000, Gerd Petermann wrote: > > Hi Ticker, > > > > I think we have two different problems here. > > I can reproduce the errors with display tool even with very small > > input files and it seems that it existed in almost all versions of > > the NET-no-NOD branch :-( > > I have no idea why I didn't see it in various tests before. These > > problems disappear when I change the code so that the first and > > last > > node in a road are always routing nodes. (as it was before r4300) > > Maybe display tool simply expects this and searches for nodes which > > don't exist? > > On the other hand I can reproduce the routing problems with > > Basecamp > > (4.7.1), but not with MapSource. > > And the problems in Basecamp do not disappear when I change the > > code > > to add the nodes again, they seem to depend on > > option --check-routing-island-len only. > > I always thought that Garmin uses the same routing algo in > > Mapsource > > and Basecamp, but at least 4.7.1 shows that I am wrong. > > > > So, for now, I'd say that option --check-routing-island-len should > > not be used :( > > > > Gerd > > _______________________________________________ > 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 _______________________________________________ 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 -------------- next part -------------- A non-text attachment was scrubbed... Name: improve-island-check-alpha.patch Type: application/octet-stream Size: 1301 bytes Desc: improve-island-check-alpha.patch URL: <http://www.mkgmap.org.uk/pipermail/mkgmap-dev/attachments/20191122/e839de89/attachment.obj>
- Previous message: [mkgmap-dev] Basecamp and NET/NOD changes
- Next message: [mkgmap-dev] Basecamp and NET/NOD changes
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the mkgmap-dev mailing list