summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Wildemann <metalstrolch@users.noreply.github.com>2019-09-06 13:55:25 +0200
committerGitHub <noreply@github.com>2019-09-06 13:55:25 +0200
commit36506bbd72aa02a2443bc6c59731336f3ac071af (patch)
tree88f99c982e24b4a23e0a36a791a8cb2dd8fdfa0c
parentb6682f05dc2d402001edff8c53bbc70617f80f48 (diff)
parent9cb2f25b4f2f110fce8c8887a60aeba81a239f04 (diff)
downloadnavit-36506bbd72aa02a2443bc6c59731336f3ac071af.tar.gz
Fix:core/maptool:Merge pull request #859 from mvglasow/baltic_admin_levels. Fix #847
Admin levels for additional countries
-rw-r--r--navit/maptool/osm.c87
1 files changed, 51 insertions, 36 deletions
diff --git a/navit/maptool/osm.c b/navit/maptool/osm.c
index 6fd05674d..caba43e94 100644
--- a/navit/maptool/osm.c
+++ b/navit/maptool/osm.c
@@ -138,7 +138,22 @@ char *osm_types[]= {"unknown","node","way","relation"};
struct country_table {
int countryid;
char *names;
- char *admin_levels;
+ char *admin_levels; /**<
+ * String indicating how to interpret admin levels for this country.
+ *
+ * Each character of the string specifies how to treat the corresponding admin level.
+ * The first character corresponds to level 3, each following character to the next
+ * lower level (usually up to level 8, but that is just a convention):
+ * `s`: use the name as the state label, `c`: use the name as the county label,
+ * `m`: use the name as the municipality label, `M`: same as `m`, but additionally
+ * use the boundary as the town boundary, `T`: use the boundary the town boundary and
+ * ignore the name. All other characters are ignored; by convention use the digit
+ * corresponding to the admin level to indicate this level should be skipped.
+ *
+ * See
+ * https://wiki.openstreetmap.org/wiki/Tag:boundary%3Dadministrative#10_admin_level_values_for_specific_countries
+ * for values used in specific countries.
+ */
FILE *file;
int size;
struct rect r;
@@ -154,8 +169,8 @@ struct country_table {
{ 28,"Antigua and Barbuda"},
{ 31,"Azerbaijan"},
{ 32,"Argentina,República Argentina,AR "},
- { 36,"Australia,AUS"},
- { 40,"Austria,Österreich,AUT"},
+ { 36,"Australia,AUS","3s456c8"},
+ { 40,"Austria,Österreich,AUT","3s5c78"},
{ 44,"Bahamas"},
{ 48,"Bahrain"},
{ 50,"Bangladesh"},
@@ -168,19 +183,19 @@ struct country_table {
{ 70,"Bosnia and Herzegovina,Bosna i Hercegovina,Босна и Херцеговина"},
{ 72,"Botswana"},
{ 74,"Bouvet Island"},
- { 76,"Brazil"},
+ { 76,"Brazil","3s5cm8"},
{ 84,"Belize"},
{ 86,"British Indian Ocean Territory"},
{ 90,"Solomon Islands"},
{ 92,"Virgin Islands, British"},
{ 96,"Brunei Darussalam"},
- { 100,"Bulgaria,България"},
+ { 100,"Bulgaria,България","3s5cm8"},
{ 104,"Myanmar"},
{ 108,"Burundi"},
- { 112,"Belarus"},
+ { 112,"Belarus","3s5c78"},
{ 116,"Cambodia"},
{ 120,"Cameroon"},
- { 124,"Canada"},
+ { 124,"Canada","3scm78"},
{ 132,"Cape Verde"},
{ 136,"Cayman Islands"},
{ 140,"Central African Republic"},
@@ -198,12 +213,12 @@ struct country_table {
{ 180,"Congo, the Democratic Republic of the"},
{ 184,"Cook Islands"},
{ 188,"Costa Rica"},
- { 191,"Croatia,Republika Hrvatska,HR"},
+ { 191,"Croatia,Republika Hrvatska,HR","34scm8"},
{ 192,"Cuba"},
- { 196,"Cyprus"},
- { 203,"Czech Republic,Česká republika,CZ"},
+ { 196,"Cyprus","345c7m"},
+ { 203,"Czech Republic,Česká republika,CZ","345cm8"},
{ 204,"Benin"},
- { 208,"Denmark,Danmark,DK"},
+ { 208,"Denmark,Danmark,DK","3c56m8"},
{ 212,"Dominica"},
{ 214,"Dominican Republic"},
{ 218,"Ecuador"},
@@ -211,12 +226,12 @@ struct country_table {
{ 226,"Equatorial Guinea"},
{ 231,"Ethiopia"},
{ 232,"Eritrea"},
- { 233,"Estonia"},
+ { 233,"Estonia,Eesti","345cm8"},
{ 234,"Faroe Islands,Føroyar"},
{ 238,"Falkland Islands (Malvinas)"},
{ 239,"South Georgia and the South Sandwich Islands"},
{ 242,"Fiji"},
- { 246,"Finland,Suomi"},
+ { 246,"Finland,Suomi","3s5cm8"},
{ 248,"Åland Islands"},
{ 250,"France,République française,FR","3s5c7M"},
{ 254,"French Guiana"},
@@ -224,10 +239,10 @@ struct country_table {
{ 260,"French Southern Territories"},
{ 262,"Djibouti"},
{ 266,"Gabon"},
- { 268,"Georgia"},
+ { 268,"Georgia","3s5c78"},
{ 270,"Gambia"},
{ 275,"Palestinian Territory, Occupied"},
- { 276,"Germany,Deutschland,Bundesrepublik Deutschland","345c7M"},
+ { 276,"Germany,Deutschland,Bundesrepublik Deutschland","3s5c7M"},
{ 288,"Ghana"},
{ 292,"Gibraltar"},
{ 296,"Kiribati"},
@@ -244,35 +259,35 @@ struct country_table {
{ 336,"Holy See (Vatican City State)"},
{ 340,"Honduras"},
{ 344,"Hong Kong"},
- { 348,"Hungary,Magyarország"},
- { 352,"Iceland"},
- { 356,"India"},
+ { 348,"Hungary,Magyarország","345c78"},
+ { 352,"Iceland","34cm78"},
+ { 356,"India","3sc6m8"},
{ 360,"Indonesia"},
{ 364,"Iran, Islamic Republic of"},
{ 368,"Iraq"},
- { 372,"Ireland"},
+ { 372,"Ireland","345c78"},
{ 376,"Israel"},
- { 380,"Italy,Italia"},
+ { 380,"Italy,Italia","3s5c78"},
{ 384,"Côte d'Ivoire"},
{ 388,"Jamaica"},
- { 392,"Japan"},
+ { 392,"Japan","3s5cm8"},
{ 398,"Kazakhstan"},
{ 400,"Jordan"},
{ 404,"Kenya"},
- { 408,"Korea, Democratic People's Republic of"},
- { 410,"Korea, Republic of"},
+ { 408,"Korea, Democratic People's Republic of","3s5cm8"},
+ { 410,"Korea, Republic of","3s5cm8"},
{ 412,"Kosovo,Kosova"},
{ 414,"Kuwait"},
{ 417,"Kyrgyzstan"},
{ 418,"Lao People's Democratic Republic"},
{ 422,"Lebanon"},
{ 426,"Lesotho"},
- { 428,"Latvia"},
+ { 428,"Latvia,Latvija","345c78"},
{ 430,"Liberia"},
{ 434,"Libyan Arab Jamahiriya"},
{ 438,"Liechtenstein"},
- { 440,"Lithuania,Lietuva"},
- { 442,"Luxembourg"},
+ { 440,"Lithuania,Lietuva","3cm67T"},
+ { 442,"Luxembourg","3s5c78"},
{ 446,"Macao"},
{ 450,"Madagascar"},
{ 454,"Malawi"},
@@ -283,7 +298,7 @@ struct country_table {
{ 474,"Martinique"},
{ 478,"Mauritania"},
{ 480,"Mauritius"},
- { 484,"Mexico"},
+ { 484,"Mexico","3s5m78"},
{ 492,"Monaco"},
{ 496,"Mongolia"},
{ 498,"Moldova, Republic of"},
@@ -303,13 +318,13 @@ struct country_table {
{ 535,"Bonaire, Sint Eustatius and Saba"},
{ 540,"New Caledonia"},
{ 548,"Vanuatu"},
- { 554,"New Zealand"},
+ { 554,"New Zealand","3s5m78"},
{ 558,"Nicaragua"},
{ 562,"Niger"},
{ 566,"Nigeria"},
{ 570,"Niue"},
{ 574,"Norfolk Island"},
- { 578,"Norway,Norge,Noreg,NO"},
+ { 578,"Norway,Norge,Noreg,NO","3c56m8"},
{ 580,"Northern Mariana Islands"},
{ 581,"United States Minor Outlying Islands"},
{ 583,"Micronesia, Federated States of"},
@@ -323,13 +338,13 @@ struct country_table {
{ 608,"Philippines"},
{ 612,"Pitcairn"},
{ 616,"Poland,Polska,PL","3s5cmT"},
- { 620,"Portugal"},
+ { 620,"Portugal","345cm8"},
{ 624,"Guinea-Bissau"},
{ 626,"Timor-Leste"},
{ 630,"Puerto Rico"},
{ 634,"Qatar"},
{ 638,"Réunion"},
- { 642,"România,Romania,RO"},
+ { 642,"România,Romania,RO","sc5m78"},
{ 643,"Россия,Российская Федерация,Russia,Russian Federation","3s5c7m"},
{ 646,"Rwanda"},
{ 652,"Saint Barthélemy"},
@@ -344,13 +359,13 @@ struct country_table {
{ 678,"Sao Tome and Principe"},
{ 682,"Saudi Arabia"},
{ 686,"Senegal"},
- { 688,"Srbija,Србија,Serbia"},
+ { 688,"Srbija,Србија,Serbia","3scm78"},
{ 690,"Seychelles"},
{ 694,"Sierra Leone"},
{ 702,"Singapore"},
- { 703,"Slovakia,Slovensko,SK"},
+ { 703,"Slovakia,Slovensko,SK","3c567m"},
{ 704,"Viet Nam"},
- { 705,"Slovenia,Republika Slovenija,SI"},
+ { 705,"Slovenia,Republika Slovenija,SI","34s6cm"},
{ 706,"Somalia"},
{ 710,"South Africa"},
{ 716,"Zimbabwe"},
@@ -361,7 +376,7 @@ struct country_table {
{ 740,"Suriname"},
{ 744,"Svalbard and Jan Mayen"},
{ 748,"Swaziland"},
- { 752,"Sweden,Sverige,Konungariket Sverige,SE"},
+ { 752,"Sweden,Sverige,Konungariket Sverige,SE","3c56m8"},
{ 756,"Switzerland,Schweiz","3s5c7M"},
{ 760,"Syrian Arab Republic"},
{ 762,"Tajikistan"},
@@ -372,7 +387,7 @@ struct country_table {
{ 780,"Trinidad and Tobago"},
{ 784,"United Arab Emirates"},
{ 788,"Tunisia"},
- { 792,"Turkey"},
+ { 792,"Turkey","sc5m78"},
{ 795,"Turkmenistan"},
{ 796,"Turks and Caicos Islands"},
{ 798,"Tuvalu"},