[mkgmap-dev] [Patch] Improve boundary splitting
From WanMil wmgcnfg at web.de on Mon May 7 18:31:48 BST 2012
> Hi WanMil, > > > > Date: Sun, 6 May 2012 20:56:48 +0200 > > From: wmgcnfg at web.de > > To: mkgmap-dev at lists.mkgmap.org.uk > > Subject: Re: [mkgmap-dev] [Patch] Improve boundary splitting > > > > Hi Gerd, > > > > I decided not to include your patch. > > The improvement is done only for the precompilation step. So it affects > > only a very few people that precompile the boundaries. > > The patch itself adds another conversion step from Area to Shape format. > > In my point of view this is the breaking point where the source code > > will be no longer maintainable. > > I used the Shape superclass because it allows to pass Area and Path2D > parameters > without conversion. In my eyes, Area should only be used when we need > its methods > like contains or intersect. It is very inefficient when you just want to > store > a closed way with double precision that is already known to be not > self-intersecting. > > > > > Before adding some special algorithms to improve performance it is > > necessary to overwork the boundary related classes and give them a clean > > structure. The current structure is the result of implementing a totally > > new function of mkgmap and improving and changing it completely for > > performance reasons (with a great result!). Now once it's working there > > is the time for some restructuring. > > Yes, that's true. The methods are spread over multiple files, and I had > problems to decide where to put new methods. > I guess you working on the restructuring to finish the precompiled-sea code? I started with that. But I don't have very much time at the moment. So it will take some time until I have the first good results. > > > > > Sorry for that! I hope you understand my reasons. > > Yes, sure. I'll continue working on splitter now. Great! We keep the patch in mind and try to integrate it at a later step. WanMil > > Gerd > > > > > WanMil > > > > > Hi WanMil, > > > > > > attached is a patch that uses an optimized implementation of the > > > Sutherland-Hodgman algorithm > > > > > > http://en.wikipedia.org/wiki/Sutherland-Hodgeman wikipedia > > > > > > > > > which is much faster than the area.intersect. It is only used to > create the > > > precompiled boundaries. > > > > > > The improvements depend on the continent, for africa I see 130 secs > with > > > r2272 and 84 secs > > > with the patched version. For asia, I see only a small improvement > of ~ 10% > > > > > > On my machine, the precompilation of the boundaries is now quite often > > > waiting for the disk. > > > > > > http://gis.19327.n5.nabble.com/file/n5670294/BoundarySplitter.patch > > > BoundarySplitter.patch > > > > > > Gerd > > > > > > -- > > > View this message in context: > http://gis.19327.n5.nabble.com/Patch-Improve-boundary-splitting-tp5670294p5670294.html > > > Sent from the Mkgmap Development mailing list archive at Nabble.com. > > > _______________________________________________ > > > 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
- Previous message: [mkgmap-dev] [Patch] Improve boundary splitting
- Next message: [mkgmap-dev] [Patch V1] Subdivision width is 36627 at 3230916/1236133
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the mkgmap-dev mailing list