logo separator

[mkgmap-dev] [PATCH V4] boundary preparer with quadtree

From GerdP gpetermann_muenchen at hotmail.com on Sat Feb 18 18:23:34 GMT 2012

Hi WanMil,

attached is the new patch for the performance branch.
Its quite big because I've rewritten many methods to work with the quadtree
instead of 
List<boundary>

Major changes:
- new file format for *.bnd files. It stores first the boundary tags, then
the areas with float precision.
The file size is not much different from the old format, but when zipped it
is much smaller.
The time to load the file into the quadtree is shorter than the time to load
the old format.
The old format is still supported, but requires much more time in the
LocationHook (probably it is still
faster than trunk, but not much)

- the bounds parameter allows now to specify a zip file with the *.bnd
files. The zip file can have a directory structure, but should not contain
duplicate *.bnd files.
- BoundaryPreparer uses multiple processors for the
workoutBoundaryRelations() part when --max-jobs parameter allows it. When
called as stand-alone program, it starts one thread for each processor.

- the utilities BoundaryDiff, BoundaryMerger, BoundaryFile2Gpx,
BoundaryLister were rewritten to use the quadtree, most of them also allow
*.zip as input. BoundaryLister lists only the OSM tags, not the 
information created for the quadtree. Can be changed if needed.

Open problem:
The BoundaryMerger creates a result that contains a few more small holes
than the trunk version. I'm going to analyse that during the next days. 
Todo: Javadoc

Ciao,
Gerd


http://gis.19327.n5.nabble.com/file/n5495676/boundary_prep_quadtree_v4.patch
boundary_prep_quadtree_v4.patch 

--
View this message in context: http://gis.19327.n5.nabble.com/PATCH-V4-boundary-preparer-with-quadtree-tp5495676p5495676.html
Sent from the Mkgmap Development mailing list archive at Nabble.com.



More information about the mkgmap-dev mailing list