[mkgmap-dev] [locator] Separate boundary files
From WanMil wmgcnfg at web.de on Thu Apr 28 20:49:51 BST 2011
Carlos, thanks for your reports. I cannot check your examples in detail now but I can give you some general hints. The current locator branch relies on complete boundaries. The word complete is important. The boundary precompilation algorithm does not automatically close multipolygons which are open and which has a loose endpoints out of the tile borders. This is necessary because one major reason for using precompiled data is that I want to get rid of wrong autoclosed boundaries. (Please read http://www.mkgmap.org.uk/pipermail/mkgmap-dev/2011q1/010797.html where I tried to explain the problem more in detail). If you use a dump of spain only you might loose some of the boundaries that are located on the border. I would recommend to download a larger dump and cut out a larger area than spain for boundary precompilation (e.g. spain + 10km around). Of course the changes are not tested very well and there are tons of bugs in it. I'll have to implement some checks to see if the precompilation really works well. WanMil > These are the results of my first (limited) tests: > The list of places under State/Province field in MapSource "Search > places" includes a lot more wrong places than without the boundary > precompilation (locator r1922). For example I get State/Province "La > Zubia" (from relation 347255) and place "Cumbres Verdes (node > 1107558640), LA ZUBIA, ESP" under it. > In the last days I've been correcting incomplete boundary polygons from > mkgmap log. Searching for a random street (Calle Calvario) that exists > within one of these multipolygons I fixed yesterday (relation 346527) I > get the following: > Trunk+spain.osm.pbf 28/4-> 46 "Calle Calvario" matches with complete > city, region, country information (e.g. way 62120822: Calle Calvario, > Alburquerque, EXTREMADURA, ESP) > Locator r1925+spain.osm.pbf 27/4 -> 39 matches most of them with > incomplete or even wrong city, region, country information (e.g. way > 62120822: Calle Calvario, CÁCERES (should be BADAJOZ), ESP). Cáceres is > relation 349018 and Badajoz 348994. > Locator r1925+spain.osm.pbf 28/4 -> same result. Note mkgmap didn't > complain about mp 346527. > The boundary tiles are extracted daily from the same pbf file than map. > My locator related styles: > mkgmap:country!=*& addr:country=* { set mkgmap:country='${addr:country}' } > mkgmap:country!=*& is_in:country=* { set > mkgmap:country='${is_in:country}' } > mkgmap:country!=*& mkgmap:admin_level2=* { set > mkgmap:country='${mkgmap:admin_level2}' } > > mkgmap:region!=*& is_in:province=* { set > mkgmap:region='${is_in:province}' } > mkgmap:region!=*& mkgmap:admin_level6=* { set > mkgmap:region='${mkgmap:admin_level6}' } > mkgmap:region!=*& mkgmap:admin_level5=* { set > mkgmap:region='${mkgmap:admin_level5}' } > mkgmap:region!=*& mkgmap:admin_level4=* { set > mkgmap:region='${mkgmap:admin_level4}' } > mkgmap:region!=*& mkgmap:admin_level3=* { set > mkgmap:region='${mkgmap:admin_level3}' } > > mkgmap:city!=*& openGeoDB:name=* { set mkgmap:city='${openGeoDB:name}' } > mkgmap:city!=*& is_in:city=* { set mkgmap:city='${is_in:city}' } > mkgmap:city!=*& addr:city=* { set mkgmap:city='${addr:city}' } > mkgmap:city!=*& mkgmap:admin_level8=* { set > mkgmap:city='${mkgmap:admin_level8}' } > mkgmap:city!=*& mkgmap:admin_level7=* { set > mkgmap:city='${mkgmap:admin_level7}' } > mkgmap:city!=*& mkgmap:admin_level9=* { set > mkgmap:city='${mkgmap:admin_level9}' } > mkgmap:city!=*& mkgmap:admin_level10=* { set > mkgmap:city='${mkgmap:admin_level10}' } > > mkgmap:postal_code!=*& addr:postcode=* { set > mkgmap:postal_code='${addr:postcode}' } > mkgmap:postal_code!=*& openGeoDB:postal_codes=* { set > mkgmap:postal_code='${openGeoDB:postal_codes}' } > mkgmap:postal_code!=*& mkgmap:postcode=* { set > mkgmap:postal_code='${mkgmap:postalcode}' } > > My commands: > osmosis --read-pbf file="spain.osm.pbf" --tf accept-ways > boundary=administrative --tf accept-relations boundary=administrative > --used-node --write-xml file="spain-boundaries.osm" > time /usr/lib/jvm/java-6-sun/bin/java -Xmx1500m -enableassertions > -Dlog.config=logging.properties -jar mkgmap-locator.jar > --createboundsfile=spain-boundaries.osm --max-jobs > --generate-sea=polygons,extend-sea-sectors --route --latin1 > --code-page=1252 --gmapsupp --country-name=ESPAÑA --country-abbr=ESP > --area-name=España --family-name="OpenStreetMap España" --family-id=39 > --product-id=1 --series-name="OSM-España-index" --index > --ignore-maxspeeds --remove-short-arcs --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=mio -c spain.args > _______________________________________________ > mkgmap-dev mailing list > mkgmap-dev at lists.mkgmap.org.uk > http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev >
- Previous message: [mkgmap-dev] [locator] Separate boundary files
- Next message: [mkgmap-dev] [locator] Separate boundary files
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the mkgmap-dev mailing list