logo separator

[mkgmap-dev] FW: SEVERE (MapSplitter) Errors - "Area too small to split at..."

From Gerd Petermann gpetermann_muenchen at hotmail.com on Tue Dec 31 08:10:18 GMT 2013


From: gpetermann_muenchen at hotmail.com
To: geep999 at yahoo.co.uk
Subject: RE: [mkgmap-dev] SEVERE (MapSplitter) Errors - "Area too small to split at..."
Date: Tue, 31 Dec 2013 09:09:23 +0100




Hi Peter,

thanks for analysing this. The img format has many restrictions, so mkgmap has to make sure that it doesn't produce 
invalid files. The data in the img file is distributed to so called sub divisions, and mkgmap splits these sub divisions 
into smaller peaces as long as one doesn't fullfill all restrictions. Some of the restrictions are simple:
no more than 255 points, 
no more than 255 lines, 
others are complex, e.g. the number of bytes for one sub divison in RGN file must not exceed 0xfff8, and that value
is estimated in the split process.
It stops splitting when the sub division gets very small (but not the smallest possible), and when that
happens, the message "Area too small to split at ..." is printed, but processing continues.
Only when you also see the "Can't set city point index for ... (too many indexed points in division)" message,
something really was too much.
This message is printed when you have 255 or more indexed points in one sub division.
All further points are not indexed, so the map should still be ok.

So, in short:
You can forget the hint regarding max-nodes for splitter, it doesn't solve your problem.
If you compile mkgmap from source, you may try to change this line in MapSplitter.java:
    public static final int MIN_DIMENSION = 10; // just a reasonable value 
If you change it to e.g. MIN_DIMENSION = 1;
mkgmap will produce smaller sub divisions. The value must be > 0, 
and I see no problem to change that value for all users if it helps
you.

Gerd

Date: Mon, 30 Dec 2013 22:33:01 +0000
From: geep999 at yahoo.co.uk
To: mkgmap-dev at lists.mkgmap.org.uk
Subject: Re: [mkgmap-dev] SEVERE (MapSplitter) Errors - "Area too small to	split at..."

Hi Gerd,Tried lowering max-nodes value from 150000 to 6500 which reduced but didn't stop the errors. I think that the cause is that within the 1685341 codes in the Ordnance Survey CodePoint data sometimes many different Postcodes are at the same coordinates. On analyzing can see a max of 1327 postcodes at the same co-ordinates in London, and others with hundreds of postcodes at the same coordinates in e.g. Cardiff. These postcodes in London belong to PO Boxes and in Cardiff to massive UK Government office complexes like the Benefits Agency departments. And I found several hundred Postcodes without
 meaningful coordinates in the list too, which were "parked" in the middle of the Atlantic (being OSGB36 0,0). But if I'd read the spec. I'd have filtered them out beforehand as they are clearly marked.

Have you any idea what might be a reasonable number of points to share the same coordinates without breaking mkgmap?
As coincident postcodes are usually (but not always!) within sensible alphanumeric series like NW26 9HB, NW26 9HC etc I plan to analyse duplicate code coordinates and just remove the last 1 or 2 characters from the Postcode to minimize or eliminate those with duplicate coordinates.
Cheers,Peter
     
 

_______________________________________________
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://www.mkgmap.org.uk/pipermail/mkgmap-dev/attachments/20131231/c7f50a7a/attachment-0001.html>


More information about the mkgmap-dev mailing list