logo separator

[mkgmap-dev] Commit: r1555: Ignore multipolygons with fewer than 2 resolved elements.

From WanMil wmgcnfg at web.de on Fri Feb 5 15:41:19 GMT 2010

>
>     The definition of the multipolygon says that the tags from the
>     multipolygon are used for the outer polygons ("Tags describing the
>     multipolygon (e.g. landuse=forest) should go on the relation. The outer
>     way(s) should be left untagged, unless they describe something in their
>     own right."). If these multipolygons are dropped the tag information of
>     the multipolygon is lost.
>
>
> there are 2 common forms of tags on myltipolygon. both are supported in
> Mapnik and Osmarender.
> Ideally mkgmap should work the same way
>
> 1) tag is on the relation and will overwrite any tag with same key on
> the outer way. A different tag can still be applied to the ways.
> 2) tag is on the outer way, again additional tags can be set
>
> in both cases I think the way must be duplicated

All ways are duplicated in mkgmap.
When single ways are joined to polygons the new polygons are tagged with 
a tag merge of the single ways. The merge uses the "first way wins" 
algorithm (which produces a bit random results, but I don't know a 
better algorithm).

In the end there is a decision which tags are removed:
- If the original OSM way is a closed polygon then all tags are removed 
from the original OSM way.
- Otherwise only tags for polygons are removed (at the moment these are 
"boundary", "natural", "landuse", "land_area", "building", "waterway"). 
This keeps all line tags (like highway) so the original still make use 
of their line-tagging.

If the multipolygon contains any of the polygon tags, then all tags of 
the multipolygon are copied to the resulting polygons (additionally to 
the merge of tags)

WanMil



More information about the mkgmap-dev mailing list