
Hi Mark, in general i like this idea. Removing superfluos nodes also improves the dp filter, as it can remove more nodes. I would be very pleased, if with this patch it would be possible to store the information of the resolution of the GType in the nodes. Do you think it is possible? This would help me very much with the missing part of the dp filter. But now I am a little confused with the incHighwayCounter function. I see that it is used in different situations to mark a point as a node, e.g. border nodes, street end nodes or splitting nodes. Would this work after your patch? Also I think the highway count gets counted up while importing, afterwards it is set to zero and then counted up again. Could the first step be ommited? Last comment: I think, but am not sure, that with this large lists (>10000) a LinkedList<> performs much better than a ArrayList<>. Would need some testing. Regards, Johann Mark Burton schrieb:
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.
Mark
------------------------------------------------------------------------
_______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev