
Hi all, I've just noted that the solution with addr:housenumber=* {set mkgmap:execute_finalize_rules=true} doesn't work for polygons because the polygons rules don't contain inc/address in the finalize section. This makes sense because the img format doesn't allow to store address info for polygons. On the other hand, this also means that it doesn't work when we add include 'inc/address'; to lines because the rules in lines are not evaluated for polygons. I think we should not add include 'inc/address'; at the beginning of polygons AND lines, because that would mean that we evaluate them twice for normal ways. So, I think this is the best compromise: 1) Keep include 'inc/address'; in the finalize section of lines and points 2) add it to the finalize section of polygons (with a comment that explains why) and 3) add addr:housenumber=* {set mkgmap:execute_finalize_rules=true} to the three files points, lines, and polygons. Gerd From: gpetermann_muenchen@hotmail.com To: mkgmap-dev@lists.mkgmap.org.uk Date: Wed, 15 Apr 2015 11:21:55 +0200 Subject: Re: [mkgmap-dev] inc/address and --housenumbers Hi Thorsten, reg. mkgmap:street: The default style has this rule almost at the beginning: highway=* & name=* { set mkgmap:street='${name}' }, so there is no problem for address search here. I agree that your solution is also simple enough, but there should be no need to use inc/address in the relations rule. I don't know why inc/address was moved to the finalize rules, so I did not dare to change that. If the reason is performance we can ignore that , the evaluation of the rules in inc/address is very fast as they do not contain any regular expressions. BTW: with r3537 I've implemented the tag mkgmap:execute_finalize_rules=true (true, not 1 ) and I found no change in the throughput after adding addr:housenumber=* {set mkgmap:execute_finalize_rules=true} to the beginning of points and lines. I am now working on an algo that uses the mkgmap:city info. Gerd
Date: Wed, 15 Apr 2015 11:03:16 +0200 From: kukuk@suse.de To: mkgmap-dev@lists.mkgmap.org.uk Subject: Re: [mkgmap-dev] inc/address and --housenumbers
On Tue, Apr 14, GerdP wrote:
2) A road may be the border or very close to the border of a city. Houses on the left side are in city A, houses on the other side are in city B. I think in this case we should add the road twice to the map so that address search works. The problem: With the default style most houses do not have the mkgmap:city tag because no map object is created for them. I think a quick and clear solution would be to add a tag mkgmap:execute_finalize_rules=1 to each element with addr:housenumber to tell mkgmap that even if no map element is created the finalize rules should be executed.
My solution for my own style is quite simple here: I include 'inc/address' very early at the beginning of points/lines/polygons style files. Has also the advantage, that mkgmap:street is set to the original street name, before we add suffixes or prefixes like '(B101)' or something similar. And I can use mkgmap:country or something similar in my style files.
Thorsten
-- Thorsten Kukuk, Senior Architect SLES & Common Code Base SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nuernberg, Germany GF: Felix Imendörffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton, HRB 21284 (AG Nürnberg) _______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
_______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev