On Thu, May 28, 2009 at 4:13 PM, arne anka <openm...@ginguppin.de> wrote: >> basically a memory format and as far as I can read it mmappable. > > i never looked into navit's source code. > the train of thought was simply: > small file -> highly compressed information -> increased cpu usage while > extracting.
I've (briefly) looked into Navit's source code, and I've 'seen' a .bin file. If you unzip -l such a .bin file, you'll see lots of small files with file names consisting of A's, B's, C's and D's. Based on my non-knowledge of how things work, I expect that the world has been recursively divided into 4 parts (north-west = A, south-west = B, south-east = C and north-east = D) up to a certain depth. It is then 'quite easy' to calculate from a given position where it maps into which ABCDABCD file, which can then be extracted from the appropriate .bin file and read into memory and processed. You'll only have to cache the .bin file's directory to be able to quickly find the correct .bin file, and then seek to the correct position and read the .zip file. zlib (at least, I think it's zlib) does this with much ease. Actually, loading the files does not take much CPU time, but drawing all the vectors and filling in the shapes takes lots of time... Christ van Willegen _______________________________________________ Openmoko community mailing list community@lists.openmoko.org http://lists.openmoko.org/mailman/listinfo/community