logo separator

[mkgmap-dev] problem with highways as multipolygons

From Gerd Petermann gpetermann_muenchen at hotmail.com on Sat May 9 15:15:42 BST 2015

Hi Andrzej,

The apply tells mkgmap to add the tag area=yes to the members,
and I think that's what you want. Note that the members of the mp-relation
are not the members of the original OSM relation, they are the artifical ways. 

You are right, it turned out that MultiPolygonRelation creates 4 different ways for relation
4764899. Three have the tag  mkgmap:stylefilter=polygon and are
only passed through the polygons rules, one 
is passed through the lines rules, it has the tag
mkgmap:stylefilter=polyline:  

4611686018427387907 (4764899) - [highway=footway,mkgmap:stylefilter=polygon,mkgmap:cache_area_size=481.705810546875,mkgmap:mp_created=true] polygons
4611686018427387908 (4764899) - [highway=footway,mkgmap:stylefilter=polygon,mkgmap:cache_area_size=481.705810546875,mkgmap:mp_created=true] polygons
4611686018427387909 (4764899) - [highway=footway,mkgmap:stylefilter=polygon,mkgmap:cache_area_size=481.705810546875,mkgmap:mp_created=true] polygons
4611686018427387910 (4764899) - [mkgmap:stylefilter=polyline,highway=footway,mkgmap:mp_created=true] lines

The comment for the last one :
        // Go through all original outer ways, create a copy, tag them
        // with the mp tags and mark them only to be used for polyline processing
        // This enables the style file to decide if the polygon information or
        // the simple line information should be used.

I don't know why this is done, but it seems to be needed for something.
The code for this was added with r1694, long before I started to look at mkgmap.

Reg. highway=* and area=yes: I've also noticed that the default style ignores
some combinations. Please post a patch.

Gerd


Date: Sat, 9 May 2015 15:06:59 +0200
From: popej at poczta.onet.pl
To: mkgmap-dev at lists.mkgmap.org.uk
Subject: Re: [mkgmap-dev] problem with highways as multipolygons

Hi Gerd,
 
 > I agree that it looks strange,
 > but it works when you use apply like this:
 > type=multipolygon & highway=* { apply { set area=yes; } }
 
As I understand "apply" deals with relation's members, which aren't 
highways at all. I have already tried "apply" but this is simply wrong 
approach.
 
 > You may also ask for mkgmap:mp_created=true in the rules.
 
Does it mean that polyline is created form multipolygon and nothing 
else? I get about 600 objects in Poland which I would delete using this 
rule. All looks like good candidates for removal. And probably I should 
use complimentary rule in "polygons" file, to get proper support for 
these objects. Looks good for temporary solution.
 
 > I can't reproduce that the lines rules are applied,
 > with my test file that contains the complete relation
 > only the polygon rules are used. I assume your input
 > file contains only a part of the relation?
 
See attached file with single relation. I get highway=footway as 
polyline. Here result of echotags:
 
relation with added "area=yes" in style:
4764899 - [highway=footway,area=yes,type=multipolygon]
 
highway in "lines"
4611686018427387910 (4764899) - 
[highway=footway,mkgmap:mp_created=true,mkgmap:stylefilter=polyline]
 
Maybe you could create a new relation in 
MultiPolygonRelation.processElements()? Relation could include all tags 
form original relation and new polylines as members. This would allow 
for some processing in style.
 
Note: default style deals with "highway=pedestrian & area=yes", but 
ignore "area" tag for most other types of highway. I think at least 
footway and stairs should be checked for "area".
 
-- 
Best regards,
Andrzej

_______________________________________________
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/20150509/6c38c932/attachment.html>


More information about the mkgmap-dev mailing list