logo separator

[mkgmap-dev] [locator] Country specific rules

From WanMil wmgcnfg at web.de on Mon Jun 6 18:26:16 BST 2011

>> Carlos,
>>
>> I have not forgotten your described problem.
>>
>> 1. Country specific rules are not applied
>> I cannot reproduce that.
>> I have stripped down a style to use only the line file with the
>> following content:
>> mkgmap:country!=*&   mkgmap:admin_level2=* { set
>> mkgmap:country='${mkgmap:admin_level2}' }
>> mkgmap:country=DEU&   highway=* [0x06 road_class=0 road_speed=2
>> resolution 22]
>>
>> So all highways (no matter which type) in Germany should be contained in
>> the map.
>>
>> I compiled two tiles which cover some parts of germany and some parts of
>> the Netherlands. The resulting map contains only all highways in
>> germany. So the country specific rule seems to work.
> I have followed your approach, but still can't get it working for
> Morocco. In order to get it working for Spain, I had to manually create
> an osm file with admin_level 2 relation (1311641) and merge it with the
> Europe's extract from geofabrik, as part of the boundaries seem to be
> missing in it, and then re-create the boundaries files. I did the same
> for Morocco (africa+mocorro) but it didn't work. I also tried changing
> name tag in morocco's admin_level 2 relation from the Arabic name to
> Morocco (I seem to recall name-tag-list doesn't work for relations) with
> no success, so now I don't know what else to try.
> My commands:
> osmosis --rb africa.osm.pbf --rx boundary_morocco.osm --merge --wb
> africa-morocco.osm.pbf omitmetadata=true
>
> osmosis --read-pbf file=africa-morocco.osm.pbf outPipe.0=1 --tee 2
> inPipe.0=1 outPipe.0=2 outPipe.1=3 --buffer inPipe.0=3 outPipe.0=4
> --buffer inPipe.0=2 outPipe.0=5 --tag-filter accept-relations
> boundary=administrative inPipe.0=4 outPipe.0=6 --used-way inPipe.0=6
> outPipe.0=7 --tag-filter reject-relations inPipe.0=5 outPipe.0=8
> --tag-filter accept-ways boundary=administrative inPipe.0=8 outPipe.0=9
> --used-node inPipe.0=9 outPipe.0=10 --used-node inPipe.0=7 outPipe.0=11
> --merge inPipe.0=10 inPipe.1=11 outPipe.0=12 --write-pbf
> file=africa-boundaries.osm.pbf omitmetadata=true compress=deflate
> inPipe.0=12
>
> java -Xmx400m -enableassertions -Dlog.config=logging.properties -jar
> mkgmap-locator.jar --createboundsfile=africa-boundaries.osm.pbf
> --boundsdirectory=bounds_africa --generate-sea=extend-sea-sectors
> --route --tdbfile --latin1 --code-page=1252
> --description="OpenStreetMap-Morocco" --family-name="Open Street Map"
> --family-id=17 --product-id=1 --series-name="OSM-Morocco"
> --area-name="Morocco" --overview-mapname=55170000 --mapname=55170000
> --name-tag-list=int_name,name --index --ignore-maxspeeds
> --remove-short-arcs --merge-lines --add-pois-to-areas
> --adjust-turn-headings --report-similar-arcs --link-pois-to-ways
> --location-autofill=0 --drive-on-right --check-roundabouts
> --check-roundabout-flares --style=rules typ/MOROC-17.TYP morocco.osm.pbf
>
> My "rules" style lines file for the test:
> mkgmap:country!=*&  mkgmap:admin_level2=* { set
> mkgmap:country='${mkgmap:admin_level2}' }
> mkgmap:country=MAR&  highway=* [0x03 road_class=3 road_speed=5
> resolution 16]
> mkgmap:country=ESP&  highway=* [0x02 road_class=3 road_speed=5
> resolution 18]
>
> After compiling the map only shows highways in the two Spanish cities in
> the North of Morocco.

Carlos,

I couldn't reproduce your problem as you described it.

I downloaded the Geofabrics africa dump from Jun 1st, precompiled the 
bounds files and then compiled the 4 tiles that covers morocco using 
your parameters.
After that I got roads on the spain islands like teneriffe and morocco.

So now you might have to check what's wrong with your map compilation 
process.

As you stated the name-tag-list is important. The locator algorithm uses 
this list to get the name that is searched in the LocatorConfig.xml. 
This is also working for relations.

I propose that you first remove the merging things. I cannot look into 
what's happening there.

WanMil



More information about the mkgmap-dev mailing list