logo separator

[mkgmap-dev] [PATCH v1] remove bogus nodes

From Felix Hartmann extremecarver at googlemail.com on Fri Nov 27 22:35:27 GMT 2009

Mark Burton wrote:
> With the recent reversion of the Table A breakage, it's now useful to
> post this patch for wider testing as it no longer causes my Nuvi to
> barf.
>
> What it does is remove routing nodes from ways that should never have
> been put there in the first place. Without this patch, a routable way
> will have a node for each of its points that are shared by any other
> way (whether the other ways are routable or not). For example, at the
> moment, if a way shares its points with a boundary line or shape, each
> of those points will become nodes. From the routing point of view,
> that's (essentially) harmless but having extra nodes does take up space
> and must slow down the routing calculation.
>
> It therefore makes sense to remove the bogus nodes.
>
> What this patch does is defer the processing of all of the
> points/lines/shapes until after their types have been computed. Having
> computed the ways' types we know what's routable and what isn't so
> nodes only need to be created where routable ways meet.
>
> That's the theory, in practice, it produces slightly smaller maps.
>
> Whether it actually improves the routing quality is yet to be
> determined.
>
> Obviously, the gain you will see depends on how many bogus nodes are in
> your maps.
>
> All feedback welcome.
>   
Just trying it out. I'm allways eager to see routing improvemtns. 
However can't get my maps to compile:

java.lang.AssertionError: Point in way Achenseeschiffahrt ferry 
(http://www.openstreetmap.org/browse/way/35958231) has zero highway 
count at http://www.openstreetmap.org/?lat=47.42624&lon=11.72947&zoom=17
        at 
uk.me.parabola.mkgmap.osmstyle.StyledConverter.addRoadWithoutLoops(StyledConverter.java:1287)
        at 
uk.me.parabola.mkgmap.osmstyle.StyledConverter.addRoadAfterSplittingLoops(StyledConverter.java:1055)
        at 
uk.me.parabola.mkgmap.osmstyle.StyledConverter.addRoad(StyledConverter.java:983)
        at 
uk.me.parabola.mkgmap.osmstyle.StyledConverter.convertWay(StyledConverter.java:287)
        at 
uk.me.parabola.mkgmap.reader.osm.xml.Osm5XmlHandler.endDocument(Osm5XmlHandler.java:563)
        at 
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endDocument(Unknown 
Source)
        at 
com.sun.org.apache.xerces.internal.xinclude.XIncludeHandler.endDocument(Unknown 
Source)
        at 
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown 
Source)
        at 
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown 
Source)
        at 
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown 
Source)
        at 
com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
        at 
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown 
Source)
        at 
com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown 
Source)
        at javax.xml.parsers.SAXParser.parse(Unknown Source)
        at javax.xml.parsers.SAXParser.parse(Unknown Source)
        at 
uk.me.parabola.mkgmap.reader.osm.xml.Osm5MapDataSource.load(Osm5MapDataSource.java:81)
        at 
uk.me.parabola.mkgmap.main.MapMaker.loadFromFile(MapMaker.java:148)
        at uk.me.parabola.mkgmap.main.MapMaker.makeMap(MapMaker.java:56)
        at uk.me.parabola.mkgmap.main.Main$1.call(Main.java:187)
        at uk.me.parabola.mkgmap.main.Main$1.call(Main.java:185)
        at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown 
Source)
        at java.lang.Thread.run(Unknown Source)
Exiting - if you want to carry on regardless, use the --keep-going option
> Mark
>   
> ------------------------------------------------------------------------
>
> _______________________________________________
> mkgmap-dev mailing list
> mkgmap-dev at lists.mkgmap.org.uk
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.mkgmap.org.uk/pipermail/mkgmap-dev/attachments/20091127/aaaff47a/attachment.html 


More information about the mkgmap-dev mailing list