logo separator

[mkgmap-dev] [PATCH] --ignore-builtin-relations

From WanMil wmgcnfg at web.de on Sat Apr 16 19:59:57 BST 2011

> There is an option to disable the processing of turn restriction
> relations (--ignore-turn-restrictions), but no option to disable the
> processing of multipolygon relations. The attached patch introduces
> --ignore-builtin-relations, which disables the built-in processing of
> all relations (currently, type={boundary,multipolygon,restiction}).
>
> This patch reduces the processing time of my simple map layers from 2.5
> minutes to 2 minutes.
>
> OK to commit this?
>
> Marko
>

I don't want to veto this option but I really don't like it.
I assume that processing of multipolygons take most of the 30s saved 
time. So maybe we could better think of how to avoid unneccessary 
multipolygon processings. Commits for r1913 and r1914 were a first small 
step but I think some more of these will be possible.

Some ideas:
* The polygon tags of the style maybe could additionally be used by the 
mp processing to check if it makes sense to process the mp.
* More of the tags used in the builtin-tags file could be loaded 
dynamically. This reduces the number of mp processing. E.g. addr:* tags 
make sense only if the index option is set or if they are referenced in 
the style files.
* The HighwayHook uses lots of tags. Maybe the highway hook makes sense 
only if some mkgmap option are set? --net, --route?
* Some tags are used statically in the StyleConverter. Maybe this 
processing makes sense only if some special mkgmap options are set? Then 
these tags could be removed from the builtin-tags-file and some mps 
would no longer be processed.

Your simple layer map is a good test case to remove and detect 
unneccessary mkgmap actions. Let's find out and remove them instead of 
using the new main off-switch ignore-builtin-relations with some 
possible non-intutional side effects.

WanMil



More information about the mkgmap-dev mailing list