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