diff --git a/tiles/Makefile b/tiles/Makefile index cacda039..77d1492d 100644 --- a/tiles/Makefile +++ b/tiles/Makefile @@ -7,6 +7,10 @@ clean: clean-pmtiles: rm -rf *.pmtiles +# Run linting to apply code formatting for clean PR merges in CI +lint: + mvn spotless:apply + # This is optimized for local dev serving PMTiles out of directory local to this Makefile # Don't use this for production (instead set --cors=ORIGIN) # The default port is: 8080 (use --port to override) @@ -81,4 +85,4 @@ planet: --output=output.\pmtiles \ --nodemap-type=sparsearray --nodemap-storage=ram 2>&1 | tee logs.txt -.PHONY: clean clean-pmtiles serve monaco sf switzerland washington california ny ny-metro japan us-lowzoom eu-lowzoom planet \ No newline at end of file +.PHONY: clean clean-pmtiles lint serve monaco sf switzerland washington california ny ny-metro japan us-lowzoom eu-lowzoom planet diff --git a/tiles/src/main/java/com/protomaps/basemap/feature/CountryNameZooms.java b/tiles/src/main/java/com/protomaps/basemap/feature/CountryNameZooms.java index 523c4d18..ecd27fe3 100644 --- a/tiles/src/main/java/com/protomaps/basemap/feature/CountryNameZooms.java +++ b/tiles/src/main/java/com/protomaps/basemap/feature/CountryNameZooms.java @@ -4,1213 +4,1213 @@ public class CountryNameZooms { - public static float[] getMinMaxZooms(SourceFeature sf) { - float min_zoom = 8.0f; // default for unrecognized countries - float max_zoom = 11.0f; // default for all countries + public static float[] getMinMaxZooms(SourceFeature sf) { + float min_zoom = 8.0f; // default for unrecognized countries + float max_zoom = 11.0f; // default for all countries - try { - var name = sf.getString("name:en") == null ? sf.getString("name") : sf.getString("name:en"); + try { + var name = sf.getString("name:en") == null ? sf.getString("name") : sf.getString("name:en"); - if (name != null) { - switch (name) { - case "Andorra" -> { - // AD country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "United Arab Emirates" -> { - // AE country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Afghanistan" -> { - // AF country code - min_zoom = 6.7f; - max_zoom = 11.0f; - } - case "Antigua and Barb" -> { - // AG country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Anguilla" -> { - // AI country code - min_zoom = 11.5f; - max_zoom = 11.5f; - } - case "Albania" -> { - // AL country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Armenia" -> { - // AM country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Angola" -> { - // AO country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Antarctica" -> { - // AQ country code - min_zoom = 14.5f; - max_zoom = 14.5f; - } - case "Argentina" -> { - // AR country code - min_zoom = 6.0f; - max_zoom = 11.0f; - } - case "American Samoa" -> { - // AS country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Austria" -> { - // AT country code - min_zoom = 7.8f; - max_zoom = 11.0f; - } - case "Australia" -> { - // AU country code - min_zoom = 4.6f; - max_zoom = 8.1f; - } - case "Aruba" -> { - // AW country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Aland" -> { - // AX country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Azerbaijan" -> { - // AZ country code - min_zoom = 9.2f; - max_zoom = 11.0f; - } - case "Bosnia and Herz" -> { - // BA country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Barbados" -> { - // BB country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Bangladesh" -> { - // BD country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Belgium" -> { - // BE country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Burkina Faso" -> { - // BF country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Bulgaria" -> { - // BG country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Bahrain" -> { - // BH country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Burundi" -> { - // BI country code - min_zoom = 10.0f; - max_zoom = 11.0f; - } - case "Benin" -> { - // BJ country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "St-Barthelemy" -> { - // BL country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Bermuda" -> { - // BM country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Brunei" -> { - // BN country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Bolivia" -> { - // BO country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Brazil" -> { - // BR country code - min_zoom = 3.7f; - max_zoom = 8.5f; - } - case "Bahamas" -> { - // BS country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Bhutan" -> { - // BT country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Botswana" -> { - // BW country code - min_zoom = 6.0f; - max_zoom = 11.0f; - } - case "Belarus" -> { - // BY country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Belize" -> { - // BZ country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Canada" -> { - // CA country code - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Democratic Republic of the Congo" -> { - // CD country code - min_zoom = 6.0f; - max_zoom = 11.0f; - } - case "Central African Republic" -> { - // CF country code - min_zoom = 7.0f; - max_zoom = 11.0f; - } - case "Republic of the Congo" -> { - // CG country code - min_zoom = 7.6f; - max_zoom = 11.0f; - } - case "Switzerland" -> { - // CH country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - // Côte d'Ivoire - case "Ivory Coast" -> { - // CI country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Cook Islands" -> { - // CK country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Chile" -> { - // CL country code - min_zoom = 6.0f; - max_zoom = 11.0f; - } - case "Cameroon" -> { - // CM country code - min_zoom = 6.7f; - max_zoom = 11.0f; - } - case "China" -> { - // CN country code - min_zoom = 5.0f; - max_zoom = 10.3f; - } - case "Colombia" -> { - // CO country code - min_zoom = 7.0f; - max_zoom = 11.2f; - } - case "Costa Rica" -> { - // CR country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Cuba" -> { - // CU country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Cabo Verde" -> { - // CV country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - // Curaçao - case "Curacao" -> { - // CW country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Cyprus" -> { - // CY country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Czechia" -> { - // CZ country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Germany" -> { - // DE country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Djibouti" -> { - // DJ country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Denmark" -> { - // DK country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Dominica" -> { - // DM country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Dominican Rep" -> { - // DO country code - min_zoom = 10.0f; - max_zoom = 11.0f; - } - case "Algeria" -> { - // DZ country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Ecuador" -> { - // EC country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Estonia" -> { - // EE country code - min_zoom = 7.0f; - max_zoom = 11.0f; - } - case "Egypt" -> { - // EG country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Western Sahara" -> { - // EH country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "Eritrea" -> { - // ER country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Spain" -> { - // ES country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Ethiopia" -> { - // ET country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Finland" -> { - // FI country code - min_zoom = 6.7f; - max_zoom = 11.0f; - } - case "Fiji" -> { - // FJ country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Falkland Islands" -> { - // FK country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "Micronesia" -> { - // FM country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Faeroe Islands" -> { - // FO country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Gabon" -> { - // GA country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "United Kingdom" -> { - // GB country code - min_zoom = 10.0f; - max_zoom = 11.0f; - } - case "Grenada" -> { - // GD country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Georgia" -> { - // GE country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Guernsey" -> { - // GG country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "Ghana" -> { - // GH country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Gibraltar" -> { - // GI country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "Greenland" -> { - // GL country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Gambia" -> { - // GM country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Guinea" -> { - // GN country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Equatorial Guinea" -> { - // GQ country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Greece" -> { - // GR country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "South Georgia and the Islands" -> { - // GS country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "Guatemala" -> { - // GT country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Guam" -> { - // GU country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "Guinea-Bissau" -> { - // GW country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Guyana" -> { - // GY country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Hong Kong" -> { - // HK country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Heard Island and McDonald Islands" -> { - // HM country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "Honduras" -> { - // HN country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Croatia" -> { - // HR country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Haiti" -> { - // HT country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Hungary" -> { - // HU country code - min_zoom = 8.5f; - max_zoom = 11.0f; - } - case "Indonesia" -> { - // ID country code - min_zoom = 5.0f; - max_zoom = 10.1f; - } - case "Ireland" -> { - // IE country code - min_zoom = 8.2f; - max_zoom = 11.0f; - } - case "Israel" -> { - // IL country code - min_zoom = 8.4f; - max_zoom = 11.0f; - } - case "Isle of Man" -> { - // IM country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "India" -> { - // IN country code - min_zoom = 4.6f; - max_zoom = 10.1f; - } - case "British Indian Ocean Territory" -> { - // IO country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "Iraq" -> { - // IQ country code - min_zoom = 6.7f; - max_zoom = 11.0f; - } - case "Iran" -> { - // IR country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Iceland" -> { - // IS country code - min_zoom = 6.0f; - max_zoom = 11.0f; - } - case "Italy" -> { - // IT country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Jersey" -> { - // JE country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "Jamaica" -> { - // JM country code - min_zoom = 10.0f; - max_zoom = 11.0f; - } - case "Jordan" -> { - // JO country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Japan" -> { - // JP country code - min_zoom = 7.0f; - max_zoom = 11.0f; - } - case "Kenya" -> { - // KE country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Kyrgyzstan" -> { - // KG country code - min_zoom = 6.7f; - max_zoom = 11.0f; - } - case "Cambodia" -> { - // KH country code - min_zoom = 8.1f; - max_zoom = 11.0f; - } - case "Kiribati" -> { - // KI country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "Comoros" -> { - // KM country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "St. Kitts and Nevis" -> { - // KN country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "North Korea" -> { - // KP country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "South Korea" -> { - // KR country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Kuwait" -> { - // KW country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Cayman Islands" -> { - // KY country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Kazakhstan" -> { - // KZ country code - min_zoom = 6.0f; - max_zoom = 11.0f; - } - case "Laos" -> { - // LA country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Lebanon" -> { - // LB country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Saint Lucia" -> { - // LC country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Liechtenstein" -> { - // LI country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Sri Lanka" -> { - // LK country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Liberia" -> { - // LR country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Lesotho" -> { - // LS country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Lithuania" -> { - // LT country code - min_zoom = 7.0f; - max_zoom = 11.0f; - } - case "Luxembourg" -> { - // LU country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Latvia" -> { - // LV country code - min_zoom = 10.0f; - max_zoom = 11.0f; - } - case "Libya" -> { - // LY country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Morocco" -> { - // MA country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Monaco" -> { - // MC country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "Moldova" -> { - // MD country code - min_zoom = 10.0f; - max_zoom = 11.0f; - } - case "Montenegro" -> { - // ME country code - min_zoom = 10.0f; - max_zoom = 11.0f; - } - case "St-Martin" -> { - // MF country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Madagascar" -> { - // MG country code - min_zoom = 7.0f; - max_zoom = 11.0f; - } - case "Marshall Islands" -> { - // MH country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Macedonia" -> { - // MK country code - min_zoom = 10.0f; - max_zoom = 11.0f; - } - case "Mali" -> { - // ML country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Myanmar" -> { - // MM country code - min_zoom = 7.0f; - max_zoom = 11.0f; - } - case "Mongolia" -> { - // MN country code - min_zoom = 6.0f; - max_zoom = 11.0f; - } - case "Macao" -> { - // MO country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "Northern Mariana Islands" -> { - // MP country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Mauritania" -> { - // MR country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Montserrat" -> { - // MS country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Malta" -> { - // MT country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Mauritius" -> { - // MU country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Maldives" -> { - // MV country code - min_zoom = 10.0f; - max_zoom = 11.0f; - } - case "Malawi" -> { - // MW country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Mexico" -> { - // MX country code - min_zoom = 6.9f; - max_zoom = 11.2f; - } - case "Malaysia" -> { - // MY country code - min_zoom = 7.2f; - max_zoom = 11.0f; - } - case "Mozambique" -> { - // MZ country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Namibia" -> { - // NA country code - min_zoom = 6.0f; - max_zoom = 11.0f; - } - case "New Caledonia" -> { - // NC country code - min_zoom = 6.7f; - max_zoom = 11.0f; - } - case "Niger" -> { - // NE country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Norfolk Island" -> { - // NF country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Nigeria" -> { - // NG country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Nicaragua" -> { - // NI country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Netherlands" -> { - // NL country code - min_zoom = 8.6f; - max_zoom = 11.0f; - } - case "Nepal" -> { - // NP country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Nauru" -> { - // NR country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Niue" -> { - // NU country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "New Zealand" -> { - // NZ country code - min_zoom = 8.5f; - max_zoom = 11.3f; - } - case "Oman" -> { - // OM country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Panama" -> { - // PA country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Peru" -> { - // PE country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "French Polynesia" -> { - // PF country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Papua New Guinea" -> { - // PG country code - min_zoom = 7.0f; - max_zoom = 11.0f; - } - case "Philippines" -> { - // PH country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Pakistan" -> { - // PK country code - min_zoom = 5.0f; - max_zoom = 10.5f; - } - case "Poland" -> { - // PL country code - min_zoom = 6.7f; - max_zoom = 11.0f; - } - case "Saint Pierre and Miquelon" -> { - // PM country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Pitcairn Islands" -> { - // PN country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "Puerto Rico" -> { - // PR country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Palestine" -> { - // PS country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "Portugal" -> { - // PT country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Palau" -> { - // PW country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Paraguay" -> { - // PY country code - min_zoom = 6.7f; - max_zoom = 11.0f; - } - case "Qatar" -> { - // QA country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Romania" -> { - // RO country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Serbia" -> { - // RS country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Russia" -> { - // RU country code - min_zoom = 5.0f; - max_zoom = 10.2f; - } - case "Rwanda" -> { - // RW country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Saudi Arabia" -> { - // SA country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Solomon Islands" -> { - // SB country code - min_zoom = 7.0f; - max_zoom = 11.0f; - } - case "Seychelles" -> { - // SC country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Sudan" -> { - // SD country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Sweden" -> { - // SE country code - min_zoom = 6.7f; - max_zoom = 11.0f; - } - case "Singapore" -> { - // SG country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Saint Helena" -> { - // SH country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Slovenia" -> { - // SI country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Slovakia" -> { - // SK country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Sierra Leone" -> { - // SL country code - min_zoom = 7.8f; - max_zoom = 11.0f; - } - case "San Marino" -> { - // SM country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Senegal" -> { - // SN country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Somalia" -> { - // SO country code - min_zoom = 7.0f; - max_zoom = 11.0f; - } - case "Suriname" -> { - // SR country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "South Sudan" -> { - // SS country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - // São Tomé and Principe - case "Sao Tome and Principe" -> { - // ST country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "El Salvador" -> { - // SV country code - min_zoom = 10.0f; - max_zoom = 11.0f; - } - case "Sint Maarten" -> { - // SX country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Syria" -> { - // SY country code - min_zoom = 7.7f; - max_zoom = 11.5f; - } - case "eSwatini" -> { - // SZ country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Turks and Caicos Islands" -> { - // TC country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Chad" -> { - // TD country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "French Southern Antarctic Lands" -> { - // TF country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Togo" -> { - // TG country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Thailand" -> { - // TH country code - min_zoom = 8.2f; - max_zoom = 11.0f; - } - case "Tajikistan" -> { - // TJ country code - min_zoom = 6.7f; - max_zoom = 11.0f; - } - case "Timor-Leste" -> { - // TL country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Turkmenistan" -> { - // TM country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Tunisia" -> { - // TN country code - min_zoom = 7.7f; - max_zoom = 11.0f; - } - case "Tonga" -> { - // TO country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - // Turkey - case "Turkiye" -> { - // TR country code - min_zoom = 7.0f; - max_zoom = 11.0f; - } - case "Trinidad and Tobago" -> { - // TT country code - min_zoom = 10.0f; - max_zoom = 11.0f; - } - case "Tuvalu" -> { - // TV country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "Taiwan" -> { - // TW country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "Tanzania" -> { - // TZ country code - min_zoom = 6.7f; - max_zoom = 11.0f; - } - case "Ukraine" -> { - // UA country code - min_zoom = 6.7f; - max_zoom = 11.0f; - } - case "Uganda" -> { - // UG country code - min_zoom = 10.0f; - max_zoom = 11.0f; - } - case "U.S. Minor Outlying Islands" -> { - // UM country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "United States of America" -> { - // US country code - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Uruguay" -> { - // UY country code - min_zoom = 8.0f; - max_zoom = 11.0f; - } - case "Uzbekistan" -> { - // UZ country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Vatican" -> { - // VA country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "Saint Vincent and Grenadines" -> { - // VC country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Venezuela" -> { - // VE country code - min_zoom = 7.1f; - max_zoom = 11.3f; - } - case "British Virgin Islands" -> { - // VG country code - min_zoom = 18.0f; - max_zoom = 18.0f; - } - case "U.S. Virgin Islands" -> { - // VI country code - min_zoom = 11.0f; - max_zoom = 11.0f; - } - case "Vietnam" -> { - // VN country code - min_zoom = 8.3f; - max_zoom = 11.0f; - } - case "Vanuatu" -> { - // VU country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Wallis and Futuna Islands" -> { - // WF country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Samoa" -> { - // WS country code - min_zoom = 9.0f; - max_zoom = 11.0f; - } - case "Kosovo" -> { - // XK country code - min_zoom = 10.0f; - max_zoom = 11.0f; - } - case "Yemen" -> { - // YE country code - min_zoom = 8.7f; - max_zoom = 11.0f; - } - case "South Africa" -> { - // ZA country code - min_zoom = 4.6f; - max_zoom = 10.1f; - } - case "Zambia" -> { - // ZM country code - min_zoom = 6.6f; - max_zoom = 11.0f; - } - case "Zimbabwe" -> { - // ZW country code - min_zoom = 6.7f; - max_zoom = 11.0f; - } - } - } - } catch (Exception e) { + if (name != null) { + switch (name) { + case "Andorra" -> { + // AD country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "United Arab Emirates" -> { + // AE country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Afghanistan" -> { + // AF country code + min_zoom = 6.7f; + max_zoom = 11.0f; + } + case "Antigua and Barb" -> { + // AG country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Anguilla" -> { + // AI country code + min_zoom = 11.5f; + max_zoom = 11.5f; + } + case "Albania" -> { + // AL country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Armenia" -> { + // AM country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Angola" -> { + // AO country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Antarctica" -> { + // AQ country code + min_zoom = 14.5f; + max_zoom = 14.5f; + } + case "Argentina" -> { + // AR country code + min_zoom = 6.0f; + max_zoom = 11.0f; + } + case "American Samoa" -> { + // AS country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Austria" -> { + // AT country code + min_zoom = 7.8f; + max_zoom = 11.0f; + } + case "Australia" -> { + // AU country code + min_zoom = 4.6f; + max_zoom = 8.1f; + } + case "Aruba" -> { + // AW country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Aland" -> { + // AX country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Azerbaijan" -> { + // AZ country code + min_zoom = 9.2f; + max_zoom = 11.0f; + } + case "Bosnia and Herz" -> { + // BA country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Barbados" -> { + // BB country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Bangladesh" -> { + // BD country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Belgium" -> { + // BE country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Burkina Faso" -> { + // BF country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Bulgaria" -> { + // BG country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Bahrain" -> { + // BH country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Burundi" -> { + // BI country code + min_zoom = 10.0f; + max_zoom = 11.0f; + } + case "Benin" -> { + // BJ country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "St-Barthelemy" -> { + // BL country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Bermuda" -> { + // BM country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Brunei" -> { + // BN country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Bolivia" -> { + // BO country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Brazil" -> { + // BR country code + min_zoom = 3.7f; + max_zoom = 8.5f; + } + case "Bahamas" -> { + // BS country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Bhutan" -> { + // BT country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Botswana" -> { + // BW country code + min_zoom = 6.0f; + max_zoom = 11.0f; + } + case "Belarus" -> { + // BY country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Belize" -> { + // BZ country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Canada" -> { + // CA country code + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Democratic Republic of the Congo" -> { + // CD country code + min_zoom = 6.0f; + max_zoom = 11.0f; + } + case "Central African Republic" -> { + // CF country code + min_zoom = 7.0f; + max_zoom = 11.0f; + } + case "Republic of the Congo" -> { + // CG country code + min_zoom = 7.6f; + max_zoom = 11.0f; + } + case "Switzerland" -> { + // CH country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + // Côte d'Ivoire + case "Ivory Coast" -> { + // CI country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Cook Islands" -> { + // CK country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Chile" -> { + // CL country code + min_zoom = 6.0f; + max_zoom = 11.0f; + } + case "Cameroon" -> { + // CM country code + min_zoom = 6.7f; + max_zoom = 11.0f; + } + case "China" -> { + // CN country code + min_zoom = 5.0f; + max_zoom = 10.3f; + } + case "Colombia" -> { + // CO country code + min_zoom = 7.0f; + max_zoom = 11.2f; + } + case "Costa Rica" -> { + // CR country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Cuba" -> { + // CU country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Cabo Verde" -> { + // CV country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + // Curaçao + case "Curacao" -> { + // CW country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Cyprus" -> { + // CY country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Czechia" -> { + // CZ country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Germany" -> { + // DE country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Djibouti" -> { + // DJ country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Denmark" -> { + // DK country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Dominica" -> { + // DM country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Dominican Rep" -> { + // DO country code + min_zoom = 10.0f; + max_zoom = 11.0f; + } + case "Algeria" -> { + // DZ country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Ecuador" -> { + // EC country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Estonia" -> { + // EE country code + min_zoom = 7.0f; + max_zoom = 11.0f; + } + case "Egypt" -> { + // EG country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Western Sahara" -> { + // EH country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "Eritrea" -> { + // ER country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Spain" -> { + // ES country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Ethiopia" -> { + // ET country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Finland" -> { + // FI country code + min_zoom = 6.7f; + max_zoom = 11.0f; + } + case "Fiji" -> { + // FJ country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Falkland Islands" -> { + // FK country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "Micronesia" -> { + // FM country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Faeroe Islands" -> { + // FO country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Gabon" -> { + // GA country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "United Kingdom" -> { + // GB country code + min_zoom = 10.0f; + max_zoom = 11.0f; + } + case "Grenada" -> { + // GD country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Georgia" -> { + // GE country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Guernsey" -> { + // GG country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "Ghana" -> { + // GH country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Gibraltar" -> { + // GI country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "Greenland" -> { + // GL country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Gambia" -> { + // GM country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Guinea" -> { + // GN country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Equatorial Guinea" -> { + // GQ country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Greece" -> { + // GR country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "South Georgia and the Islands" -> { + // GS country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "Guatemala" -> { + // GT country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Guam" -> { + // GU country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "Guinea-Bissau" -> { + // GW country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Guyana" -> { + // GY country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Hong Kong" -> { + // HK country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Heard Island and McDonald Islands" -> { + // HM country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "Honduras" -> { + // HN country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Croatia" -> { + // HR country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Haiti" -> { + // HT country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Hungary" -> { + // HU country code + min_zoom = 8.5f; + max_zoom = 11.0f; + } + case "Indonesia" -> { + // ID country code + min_zoom = 5.0f; + max_zoom = 10.1f; + } + case "Ireland" -> { + // IE country code + min_zoom = 8.2f; + max_zoom = 11.0f; + } + case "Israel" -> { + // IL country code + min_zoom = 8.4f; + max_zoom = 11.0f; + } + case "Isle of Man" -> { + // IM country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "India" -> { + // IN country code + min_zoom = 4.6f; + max_zoom = 10.1f; + } + case "British Indian Ocean Territory" -> { + // IO country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "Iraq" -> { + // IQ country code + min_zoom = 6.7f; + max_zoom = 11.0f; + } + case "Iran" -> { + // IR country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Iceland" -> { + // IS country code + min_zoom = 6.0f; + max_zoom = 11.0f; + } + case "Italy" -> { + // IT country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Jersey" -> { + // JE country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "Jamaica" -> { + // JM country code + min_zoom = 10.0f; + max_zoom = 11.0f; + } + case "Jordan" -> { + // JO country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Japan" -> { + // JP country code + min_zoom = 7.0f; + max_zoom = 11.0f; + } + case "Kenya" -> { + // KE country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Kyrgyzstan" -> { + // KG country code + min_zoom = 6.7f; + max_zoom = 11.0f; + } + case "Cambodia" -> { + // KH country code + min_zoom = 8.1f; + max_zoom = 11.0f; + } + case "Kiribati" -> { + // KI country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "Comoros" -> { + // KM country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "St. Kitts and Nevis" -> { + // KN country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "North Korea" -> { + // KP country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "South Korea" -> { + // KR country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Kuwait" -> { + // KW country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Cayman Islands" -> { + // KY country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Kazakhstan" -> { + // KZ country code + min_zoom = 6.0f; + max_zoom = 11.0f; + } + case "Laos" -> { + // LA country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Lebanon" -> { + // LB country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Saint Lucia" -> { + // LC country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Liechtenstein" -> { + // LI country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Sri Lanka" -> { + // LK country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Liberia" -> { + // LR country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Lesotho" -> { + // LS country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Lithuania" -> { + // LT country code + min_zoom = 7.0f; + max_zoom = 11.0f; + } + case "Luxembourg" -> { + // LU country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Latvia" -> { + // LV country code + min_zoom = 10.0f; + max_zoom = 11.0f; + } + case "Libya" -> { + // LY country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Morocco" -> { + // MA country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Monaco" -> { + // MC country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "Moldova" -> { + // MD country code + min_zoom = 10.0f; + max_zoom = 11.0f; + } + case "Montenegro" -> { + // ME country code + min_zoom = 10.0f; + max_zoom = 11.0f; + } + case "St-Martin" -> { + // MF country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Madagascar" -> { + // MG country code + min_zoom = 7.0f; + max_zoom = 11.0f; + } + case "Marshall Islands" -> { + // MH country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Macedonia" -> { + // MK country code + min_zoom = 10.0f; + max_zoom = 11.0f; + } + case "Mali" -> { + // ML country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Myanmar" -> { + // MM country code + min_zoom = 7.0f; + max_zoom = 11.0f; + } + case "Mongolia" -> { + // MN country code + min_zoom = 6.0f; + max_zoom = 11.0f; + } + case "Macao" -> { + // MO country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "Northern Mariana Islands" -> { + // MP country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Mauritania" -> { + // MR country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Montserrat" -> { + // MS country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Malta" -> { + // MT country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Mauritius" -> { + // MU country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Maldives" -> { + // MV country code + min_zoom = 10.0f; + max_zoom = 11.0f; + } + case "Malawi" -> { + // MW country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Mexico" -> { + // MX country code + min_zoom = 6.9f; + max_zoom = 11.2f; + } + case "Malaysia" -> { + // MY country code + min_zoom = 7.2f; + max_zoom = 11.0f; + } + case "Mozambique" -> { + // MZ country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Namibia" -> { + // NA country code + min_zoom = 6.0f; + max_zoom = 11.0f; + } + case "New Caledonia" -> { + // NC country code + min_zoom = 6.7f; + max_zoom = 11.0f; + } + case "Niger" -> { + // NE country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Norfolk Island" -> { + // NF country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Nigeria" -> { + // NG country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Nicaragua" -> { + // NI country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Netherlands" -> { + // NL country code + min_zoom = 8.6f; + max_zoom = 11.0f; + } + case "Nepal" -> { + // NP country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Nauru" -> { + // NR country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Niue" -> { + // NU country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "New Zealand" -> { + // NZ country code + min_zoom = 8.5f; + max_zoom = 11.3f; + } + case "Oman" -> { + // OM country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Panama" -> { + // PA country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Peru" -> { + // PE country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "French Polynesia" -> { + // PF country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Papua New Guinea" -> { + // PG country code + min_zoom = 7.0f; + max_zoom = 11.0f; + } + case "Philippines" -> { + // PH country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Pakistan" -> { + // PK country code + min_zoom = 5.0f; + max_zoom = 10.5f; + } + case "Poland" -> { + // PL country code + min_zoom = 6.7f; + max_zoom = 11.0f; + } + case "Saint Pierre and Miquelon" -> { + // PM country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Pitcairn Islands" -> { + // PN country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "Puerto Rico" -> { + // PR country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Palestine" -> { + // PS country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "Portugal" -> { + // PT country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Palau" -> { + // PW country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Paraguay" -> { + // PY country code + min_zoom = 6.7f; + max_zoom = 11.0f; + } + case "Qatar" -> { + // QA country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Romania" -> { + // RO country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Serbia" -> { + // RS country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Russia" -> { + // RU country code + min_zoom = 5.0f; + max_zoom = 10.2f; + } + case "Rwanda" -> { + // RW country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Saudi Arabia" -> { + // SA country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Solomon Islands" -> { + // SB country code + min_zoom = 7.0f; + max_zoom = 11.0f; + } + case "Seychelles" -> { + // SC country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Sudan" -> { + // SD country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Sweden" -> { + // SE country code + min_zoom = 6.7f; + max_zoom = 11.0f; + } + case "Singapore" -> { + // SG country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Saint Helena" -> { + // SH country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Slovenia" -> { + // SI country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Slovakia" -> { + // SK country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Sierra Leone" -> { + // SL country code + min_zoom = 7.8f; + max_zoom = 11.0f; + } + case "San Marino" -> { + // SM country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Senegal" -> { + // SN country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Somalia" -> { + // SO country code + min_zoom = 7.0f; + max_zoom = 11.0f; + } + case "Suriname" -> { + // SR country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "South Sudan" -> { + // SS country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + // São Tomé and Principe + case "Sao Tome and Principe" -> { + // ST country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "El Salvador" -> { + // SV country code + min_zoom = 10.0f; + max_zoom = 11.0f; + } + case "Sint Maarten" -> { + // SX country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Syria" -> { + // SY country code + min_zoom = 7.7f; + max_zoom = 11.5f; + } + case "eSwatini" -> { + // SZ country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Turks and Caicos Islands" -> { + // TC country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Chad" -> { + // TD country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "French Southern Antarctic Lands" -> { + // TF country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Togo" -> { + // TG country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Thailand" -> { + // TH country code + min_zoom = 8.2f; + max_zoom = 11.0f; + } + case "Tajikistan" -> { + // TJ country code + min_zoom = 6.7f; + max_zoom = 11.0f; + } + case "Timor-Leste" -> { + // TL country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Turkmenistan" -> { + // TM country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Tunisia" -> { + // TN country code + min_zoom = 7.7f; + max_zoom = 11.0f; + } + case "Tonga" -> { + // TO country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + // Turkey + case "Turkiye" -> { + // TR country code + min_zoom = 7.0f; + max_zoom = 11.0f; + } + case "Trinidad and Tobago" -> { + // TT country code + min_zoom = 10.0f; + max_zoom = 11.0f; + } + case "Tuvalu" -> { + // TV country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "Taiwan" -> { + // TW country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "Tanzania" -> { + // TZ country code + min_zoom = 6.7f; + max_zoom = 11.0f; + } + case "Ukraine" -> { + // UA country code + min_zoom = 6.7f; + max_zoom = 11.0f; + } + case "Uganda" -> { + // UG country code + min_zoom = 10.0f; + max_zoom = 11.0f; + } + case "U.S. Minor Outlying Islands" -> { + // UM country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "United States of America" -> { + // US country code + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Uruguay" -> { + // UY country code + min_zoom = 8.0f; + max_zoom = 11.0f; + } + case "Uzbekistan" -> { + // UZ country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Vatican" -> { + // VA country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "Saint Vincent and Grenadines" -> { + // VC country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Venezuela" -> { + // VE country code + min_zoom = 7.1f; + max_zoom = 11.3f; + } + case "British Virgin Islands" -> { + // VG country code + min_zoom = 18.0f; + max_zoom = 18.0f; + } + case "U.S. Virgin Islands" -> { + // VI country code + min_zoom = 11.0f; + max_zoom = 11.0f; + } + case "Vietnam" -> { + // VN country code + min_zoom = 8.3f; + max_zoom = 11.0f; + } + case "Vanuatu" -> { + // VU country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Wallis and Futuna Islands" -> { + // WF country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Samoa" -> { + // WS country code + min_zoom = 9.0f; + max_zoom = 11.0f; + } + case "Kosovo" -> { + // XK country code + min_zoom = 10.0f; + max_zoom = 11.0f; + } + case "Yemen" -> { + // YE country code + min_zoom = 8.7f; + max_zoom = 11.0f; + } + case "South Africa" -> { + // ZA country code + min_zoom = 4.6f; + max_zoom = 10.1f; + } + case "Zambia" -> { + // ZM country code + min_zoom = 6.6f; + max_zoom = 11.0f; + } + case "Zimbabwe" -> { + // ZW country code + min_zoom = 6.7f; + max_zoom = 11.0f; + } } + } + } catch (Exception e) { + } - float[] zoomArray = new float[2]; - zoomArray[0] = min_zoom - 1; - zoomArray[1] = max_zoom - 1; + float[] zoomArray = new float[2]; + zoomArray[0] = min_zoom - 1; + zoomArray[1] = max_zoom - 1; - return zoomArray; - } + return zoomArray; + } } diff --git a/tiles/src/main/java/com/protomaps/basemap/feature/RegionNameZooms.java b/tiles/src/main/java/com/protomaps/basemap/feature/RegionNameZooms.java index 81cfc083..dedce01d 100644 --- a/tiles/src/main/java/com/protomaps/basemap/feature/RegionNameZooms.java +++ b/tiles/src/main/java/com/protomaps/basemap/feature/RegionNameZooms.java @@ -4,313 +4,313 @@ public class RegionNameZooms { - public static float[] getMinMaxZooms(SourceFeature sf) { - float min_zoom = 8.0f; // default for all regions - float max_zoom = 11.0f; // default for all regions + public static float[] getMinMaxZooms(SourceFeature sf) { + float min_zoom = 8.0f; // default for all regions + float max_zoom = 11.0f; // default for all regions - try { - var name = sf.getString("name:en") == null ? sf.getString("name") : sf.getString("name:en"); + try { + var name = sf.getString("name:en") == null ? sf.getString("name") : sf.getString("name:en"); - if (name != null) { - switch (name) { - // United States - case "Alabama" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Alaska" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Arizona" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Arkansas" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "California" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Colorado" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Connecticut" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Delaware" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Florida" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Georgia" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Hawaii" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Idaho" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Illinois" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Indiana" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Iowa" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Kansas" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Kentucky" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Louisiana" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Maine" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Maryland" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Massachusetts" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Michigan" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Minnesota" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Mississippi" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Missouri" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Montana" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Nebraska" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Nevada" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "New Hampshire" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "New Jersey" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "New Mexico" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "New York" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "North Carolina" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "North Dakota" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Ohio" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Oklahoma" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Oregon" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Pennsylvania" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Rhode Island" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "South Carolina" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "South Dakota" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Tennessee" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Texas" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Utah" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Vermont" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Virginia" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Washington" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "West Virginia" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Wisconsin" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Wyoming" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } + if (name != null) { + switch (name) { + // United States + case "Alabama" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Alaska" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Arizona" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Arkansas" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "California" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Colorado" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Connecticut" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Delaware" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Florida" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Georgia" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Hawaii" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Idaho" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Illinois" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Indiana" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Iowa" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Kansas" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Kentucky" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Louisiana" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Maine" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Maryland" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Massachusetts" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Michigan" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Minnesota" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Mississippi" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Missouri" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Montana" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Nebraska" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Nevada" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "New Hampshire" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "New Jersey" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "New Mexico" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "New York" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "North Carolina" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "North Dakota" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Ohio" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Oklahoma" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Oregon" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Pennsylvania" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Rhode Island" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "South Carolina" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "South Dakota" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Tennessee" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Texas" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Utah" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Vermont" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Virginia" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Washington" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "West Virginia" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Wisconsin" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Wyoming" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } - // Canada - case "Alberta" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "British Columbia" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Manitoba" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "New Brunswick" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Newfoundland and Labrador" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Northwest Territories" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Nova Scotia" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Nunavut" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Ontario" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Prince Edward Island" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Quebec" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Saskatchewan" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } - case "Yukon" -> { - min_zoom = 3.5f; - max_zoom = 7.5f; - } + // Canada + case "Alberta" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "British Columbia" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Manitoba" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "New Brunswick" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Newfoundland and Labrador" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Northwest Territories" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Nova Scotia" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Nunavut" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Ontario" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Prince Edward Island" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Quebec" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Saskatchewan" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } + case "Yukon" -> { + min_zoom = 3.5f; + max_zoom = 7.5f; + } - // Australia - case "New South Wales" -> { - min_zoom = 4.6f; - max_zoom = 8.1f; - } - case "Queensland" -> { - min_zoom = 4.6f; - max_zoom = 8.1f; - } - case "South Australia" -> { - min_zoom = 4.6f; - max_zoom = 8.1f; - } - case "Tasmania" -> { - min_zoom = 4.6f; - max_zoom = 8.1f; - } - case "Victoria" -> { - min_zoom = 4.6f; - max_zoom = 8.1f; - } - case "Western Australia" -> { - min_zoom = 4.6f; - max_zoom = 8.1f; - } - case "Australian Capital Territory" -> { - min_zoom = 4.6f; - max_zoom = 8.1f; - } - case "Northern Territory" -> { - min_zoom = 4.6f; - max_zoom = 8.1f; - } - } - } - } catch (Exception e) { + // Australia + case "New South Wales" -> { + min_zoom = 4.6f; + max_zoom = 8.1f; + } + case "Queensland" -> { + min_zoom = 4.6f; + max_zoom = 8.1f; + } + case "South Australia" -> { + min_zoom = 4.6f; + max_zoom = 8.1f; + } + case "Tasmania" -> { + min_zoom = 4.6f; + max_zoom = 8.1f; + } + case "Victoria" -> { + min_zoom = 4.6f; + max_zoom = 8.1f; + } + case "Western Australia" -> { + min_zoom = 4.6f; + max_zoom = 8.1f; + } + case "Australian Capital Territory" -> { + min_zoom = 4.6f; + max_zoom = 8.1f; + } + case "Northern Territory" -> { + min_zoom = 4.6f; + max_zoom = 8.1f; + } } + } + } catch (Exception e) { + } - float[] zoomArray = new float[2]; - zoomArray[0] = min_zoom - 1; - zoomArray[1] = max_zoom - 1; + float[] zoomArray = new float[2]; + zoomArray[0] = min_zoom - 1; + zoomArray[1] = max_zoom - 1; - return zoomArray; - } + return zoomArray; + } } diff --git a/tiles/src/main/java/com/protomaps/basemap/layers/Boundaries.java b/tiles/src/main/java/com/protomaps/basemap/layers/Boundaries.java index c2a2beff..2ac442db 100644 --- a/tiles/src/main/java/com/protomaps/basemap/layers/Boundaries.java +++ b/tiles/src/main/java/com/protomaps/basemap/layers/Boundaries.java @@ -30,11 +30,18 @@ public void processNe(SourceFeature sf, FeatureCollector features) { var theme_min_zoom = 0; var theme_max_zoom = 0; - if (sourceLayer.equals("ne_50m_admin_0_boundary_lines_land") || sourceLayer.equals("ne_50m_admin_0_boundary_lines_disputed_areas") || sourceLayer.equals("ne_50m_admin_0_boundary_lines_maritime_indicator_chn") || sourceLayer.equals("ne_50m_admin_1_states_provinces_lines")) { + if (sourceLayer.equals("ne_50m_admin_0_boundary_lines_land") || + sourceLayer.equals("ne_50m_admin_0_boundary_lines_disputed_areas") || + sourceLayer.equals("ne_50m_admin_0_boundary_lines_maritime_indicator_chn") || + sourceLayer.equals("ne_50m_admin_1_states_provinces_lines")) { theme_min_zoom = 1; theme_max_zoom = 3; kind = "tz_boundary"; - } else if (sourceLayer.equals("ne_10m_admin_0_boundary_lines_land") || sourceLayer.equals("ne_10m_admin_0_boundary_lines_map_units") || sourceLayer.equals("ne_10m_admin_0_boundary_lines_disputed_areas") || sourceLayer.equals("ne_10m_admin_0_boundary_lines_maritime_indicator_chn") || sourceLayer.equals("ne_10m_admin_1_states_provinces_lines")) { + } else if (sourceLayer.equals("ne_10m_admin_0_boundary_lines_land") || + sourceLayer.equals("ne_10m_admin_0_boundary_lines_map_units") || + sourceLayer.equals("ne_10m_admin_0_boundary_lines_disputed_areas") || + sourceLayer.equals("ne_10m_admin_0_boundary_lines_maritime_indicator_chn") || + sourceLayer.equals("ne_10m_admin_1_states_provinces_lines")) { theme_min_zoom = 4; theme_max_zoom = 5; kind = "tz_boundary"; @@ -42,48 +49,117 @@ public void processNe(SourceFeature sf, FeatureCollector features) { // TODO (nvkelso 2023-03-26) // Compiler is fussy about booleans and strings, beware - if( kind != "") { + if (kind != "") { switch (sf.getString("featurecla")) { - case "Disputed (please verify)" -> { kind = "country"; kind_detail = "disputed"; disputed = true; } - case "Indefinite (please verify)" -> { kind = "country"; kind_detail = "indefinite"; disputed = true; } - case "Indeterminant frontier" -> { kind = "country"; kind_detail = "indeterminant"; disputed = true; } + case "Disputed (please verify)" -> { + kind = "country"; + kind_detail = "disputed"; + disputed = true; + } + case "Indefinite (please verify)" -> { + kind = "country"; + kind_detail = "indefinite"; + disputed = true; + } + case "Indeterminant frontier" -> { + kind = "country"; + kind_detail = "indeterminant"; + disputed = true; + } case "International boundary (verify)" -> kind = "country"; - case "Lease limit" -> { kind = "lease_limit"; admin_level = 3; } - case "Line of control (please verify)" -> { kind = "country"; kind_detail = "line_of_control"; disputed = true; } - case "Overlay limit" -> { kind = "overlay_limit"; admin_level = 3; } + case "Lease limit" -> { + kind = "lease_limit"; + admin_level = 3; + } + case "Line of control (please verify)" -> { + kind = "country"; + kind_detail = "line_of_control"; + disputed = true; + } + case "Overlay limit" -> { + kind = "overlay_limit"; + admin_level = 3; + } case "Unrecognized" -> kind = "unrecognized_country"; - case "Map unit boundary" -> { kind = "map_unit"; admin_level = 3; } - case "Breakaway" -> { kind = "unrecognized_country"; kind_detail = "disputed_breakaway"; admin_level = 3; } - case "Claim boundary" -> { kind = "unrecognized_country"; kind_detail = "disputed_claim"; admin_level = 3; } - case "Elusive frontier" -> { kind = "unrecognized_country"; kind_detail = "disputed_elusive"; admin_level = 3; } - case "Reference line" -> { kind = "unrecognized_country"; kind_detail = "disputed_reference_line"; admin_level = 3; } - case "Admin-1 region boundary" -> { kind = "macroregion"; admin_level = 3; } - case "Admin-1 boundary" -> { kind = "region"; admin_level = 4; } - case "Admin-1 statistical boundary" -> { kind = "region"; admin_level = 4; } - case "Admin-1 statistical meta bounds" -> { kind = "region"; admin_level = 4; } - case "1st Order Admin Lines" -> { kind = "region"; admin_level = 4; } - case "Unrecognized Admin-1 region boundary" -> { kind = "unrecognized_macroregion"; admin_level = 4; } - case "Unrecognized Admin-1 boundary" -> { kind = "unrecognized_region"; admin_level = 4; } - case "Unrecognized Admin-1 statistical boundary" -> { kind = "unrecognized_region"; admin_level = 4; } - case "Unrecognized Admin-1 statistical meta bounds" -> { kind = "unrecognized_region"; admin_level = 4; } + case "Map unit boundary" -> { + kind = "map_unit"; + admin_level = 3; + } + case "Breakaway" -> { + kind = "unrecognized_country"; + kind_detail = "disputed_breakaway"; + admin_level = 3; + } + case "Claim boundary" -> { + kind = "unrecognized_country"; + kind_detail = "disputed_claim"; + admin_level = 3; + } + case "Elusive frontier" -> { + kind = "unrecognized_country"; + kind_detail = "disputed_elusive"; + admin_level = 3; + } + case "Reference line" -> { + kind = "unrecognized_country"; + kind_detail = "disputed_reference_line"; + admin_level = 3; + } + case "Admin-1 region boundary" -> { + kind = "macroregion"; + admin_level = 3; + } + case "Admin-1 boundary" -> { + kind = "region"; + admin_level = 4; + } + case "Admin-1 statistical boundary" -> { + kind = "region"; + admin_level = 4; + } + case "Admin-1 statistical meta bounds" -> { + kind = "region"; + admin_level = 4; + } + case "1st Order Admin Lines" -> { + kind = "region"; + admin_level = 4; + } + case "Unrecognized Admin-1 region boundary" -> { + kind = "unrecognized_macroregion"; + admin_level = 4; + } + case "Unrecognized Admin-1 boundary" -> { + kind = "unrecognized_region"; + admin_level = 4; + } + case "Unrecognized Admin-1 statistical boundary" -> { + kind = "unrecognized_region"; + admin_level = 4; + } + case "Unrecognized Admin-1 statistical meta bounds" -> { + kind = "unrecognized_region"; + admin_level = 4; + } default -> kind = ""; } } - if (sf.canBeLine() && sf.hasTag("min_zoom") && (kind.equals("") == false && kind.equals("tz_boundary") == false)) - { + if (sf.canBeLine() && sf.hasTag("min_zoom") && (kind.equals("") == false && kind.equals("tz_boundary") == false)) { features.line(this.name()) - // Don't label lines to reduce file size (and they aren't shown in styles anyhow) - //.setAttr("name", sf.getString("name")) - .setAttr("pmap:min_zoom", sf.getLong("min_zoom")) - .setAttr("pmap:min_admin_level", admin_level) - .setZoomRange(sf.getString("min_zoom") == null ? theme_min_zoom : (int)Double.parseDouble(sf.getString("min_zoom")), theme_max_zoom) - .setAttr("pmap:ne_id", sf.getString("ne_id")) - .setAttr("pmap:brk_a3", sf.getString("brk_a3")) - .setAttr("pmap:kind", kind) - .setAttr("pmap:kind_detail", kind_detail) - .setAttr("disputed", disputed) - .setBufferPixels(8); + // Don't label lines to reduce file size (and they aren't shown in styles anyhow) + //.setAttr("name", sf.getString("name")) + .setAttr("pmap:min_zoom", sf.getLong("min_zoom")) + .setAttr("pmap:min_admin_level", admin_level) + .setZoomRange( + sf.getString("min_zoom") == null ? theme_min_zoom : (int) Double.parseDouble(sf.getString("min_zoom")), + theme_max_zoom) + .setAttr("pmap:ne_id", sf.getString("ne_id")) + .setAttr("pmap:brk_a3", sf.getString("brk_a3")) + .setAttr("pmap:kind", kind) + .setAttr("pmap:kind_detail", kind_detail) + .setAttr("disputed", disputed) + .setBufferPixels(8); } } @@ -140,13 +216,13 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { if (kind != "" && kind_detail != "") { var line = features.line(this.name()) - .setId(FeatureId.create(sf)) - .setMinPixelSize(0) - .setAttr("pmap:min_admin_level", minAdminLevel.getAsInt()) - .setAttr("pmap:kind", kind) - .setAttr("pmap:kind_detail", kind_detail) - .setAttr("pmap:min_zoom", min_zoom) - .setMinZoom( theme_min_zoom ); + .setId(FeatureId.create(sf)) + .setMinPixelSize(0) + .setAttr("pmap:min_admin_level", minAdminLevel.getAsInt()) + .setAttr("pmap:kind", kind) + .setAttr("pmap:kind_detail", kind_detail) + .setAttr("pmap:min_zoom", min_zoom) + .setMinZoom(theme_min_zoom); // Core Tilezen schema properties if (disputed.getAsInt() == 1) { diff --git a/tiles/src/main/java/com/protomaps/basemap/layers/Landuse.java b/tiles/src/main/java/com/protomaps/basemap/layers/Landuse.java index 65c47034..1bfbb2bd 100644 --- a/tiles/src/main/java/com/protomaps/basemap/layers/Landuse.java +++ b/tiles/src/main/java/com/protomaps/basemap/layers/Landuse.java @@ -28,8 +28,7 @@ public static void processFeature(SourceFeature sf, FeatureCollector features, S sf.hasTag("railway", "platform") || sf.hasTag("tourism", "zoo") || (sf.hasTag("area", "yes") && - (sf.hasTag("highway", "pedestrian", "footway") || sf.hasTag("man_made", "bridge")))) - ) { + (sf.hasTag("highway", "pedestrian", "footway") || sf.hasTag("man_made", "bridge"))))) { String kind = "other"; if (sf.hasTag("aeroway", "aerodrome")) { kind = sf.getString("aeroway"); diff --git a/tiles/src/main/java/com/protomaps/basemap/layers/Natural.java b/tiles/src/main/java/com/protomaps/basemap/layers/Natural.java index 19a4c522..c96fa8cc 100644 --- a/tiles/src/main/java/com/protomaps/basemap/layers/Natural.java +++ b/tiles/src/main/java/com/protomaps/basemap/layers/Natural.java @@ -18,8 +18,9 @@ public String name() { @Override public void processFeature(SourceFeature sf, FeatureCollector features) { - if (sf.canBePolygon() && (sf.hasTag("natural", "wood", "glacier", "grass", "scrub", "sand", "wetland", "bare_rock") || - sf.hasTag("landuse", "forest", "meadow", "grass"))) { + if (sf.canBePolygon() && + (sf.hasTag("natural", "wood", "glacier", "grass", "scrub", "sand", "wetland", "bare_rock") || + sf.hasTag("landuse", "forest", "meadow", "grass"))) { String kind = "other"; if (sf.hasTag("natural")) { kind = sf.getString("natural"); diff --git a/tiles/src/main/java/com/protomaps/basemap/layers/PhysicalLine.java b/tiles/src/main/java/com/protomaps/basemap/layers/PhysicalLine.java index a7b8bb0f..ecde2e31 100644 --- a/tiles/src/main/java/com/protomaps/basemap/layers/PhysicalLine.java +++ b/tiles/src/main/java/com/protomaps/basemap/layers/PhysicalLine.java @@ -53,9 +53,9 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { // Set "brunnel" (bridge / tunnel) property where "level" = 1 is a bridge, 0 is ground level, and -1 is a tunnel // Because of MapLibre performance and draw order limitations, generally the boolean is sufficent // See also: "layer" for more complicated ±6 layering for more sophisticated graphics libraries - if (sf.hasTag("bridge") && ! sf.hasTag("bridge", "no")) { + if (sf.hasTag("bridge") && !sf.hasTag("bridge", "no")) { feat.setAttrWithMinzoom("pmap:level", 1, 12); - } else if (sf.hasTag("tunnel") && ! sf.hasTag("tunnel", "no")) { + } else if (sf.hasTag("tunnel") && !sf.hasTag("tunnel", "no")) { feat.setAttrWithMinzoom("pmap:level", -1, 12); } else { feat.setAttrWithMinzoom("pmap:level", 0, 12); diff --git a/tiles/src/main/java/com/protomaps/basemap/layers/Places.java b/tiles/src/main/java/com/protomaps/basemap/layers/Places.java index 1449918a..e5478617 100644 --- a/tiles/src/main/java/com/protomaps/basemap/layers/Places.java +++ b/tiles/src/main/java/com/protomaps/basemap/layers/Places.java @@ -7,12 +7,11 @@ import com.onthegomap.planetiler.VectorTile; import com.onthegomap.planetiler.reader.SourceFeature; import com.onthegomap.planetiler.util.ZoomFunction; -import com.protomaps.basemap.feature.FeatureId; import com.protomaps.basemap.feature.CountryNameZooms; +import com.protomaps.basemap.feature.FeatureId; import com.protomaps.basemap.feature.RegionNameZooms; import com.protomaps.basemap.names.NeNames; import com.protomaps.basemap.names.OsmNames; - import java.util.ArrayList; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -106,7 +105,8 @@ public void processNe(SourceFeature sf, FeatureCollector features) { @Override public void processFeature(SourceFeature sf, FeatureCollector features) { if (sf.isPoint() && - (sf.hasTag("place", "suburb", "town", "village", "neighbourhood", "quarter", "city", "country", "state", "province"))) { + (sf.hasTag("place", "suburb", "town", "village", "neighbourhood", "quarter", "city", "country", "state", + "province"))) { String kind = "other"; int min_zoom = 12; int max_zoom = 15; @@ -117,14 +117,14 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { switch (place) { case "country": kind = "country"; - min_zoom = (int)CountryNameZooms.getMinMaxZooms(sf)[0]; - max_zoom = (int)CountryNameZooms.getMinMaxZooms(sf)[1]; + min_zoom = (int) CountryNameZooms.getMinMaxZooms(sf)[0]; + max_zoom = (int) CountryNameZooms.getMinMaxZooms(sf)[1]; break; case "state": case "province": kind = "region"; - min_zoom = (int)RegionNameZooms.getMinMaxZooms(sf)[0]; - max_zoom = (int)RegionNameZooms.getMinMaxZooms(sf)[1]; + min_zoom = (int) RegionNameZooms.getMinMaxZooms(sf)[0]; + max_zoom = (int) RegionNameZooms.getMinMaxZooms(sf)[1]; break; case "city": case "town": @@ -209,7 +209,7 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { if (population > 0) { feat.setAttr("population", population) - .setAttr("pmap:population_rank", population_rank); + .setAttr("pmap:population_rank", population_rank); feat.setSortKey(min_zoom * 1000 + 400 - population_rank * 200 + placeNumber.incrementAndGet()); //feat.setSortKey(getSortKey("pmap:min_zoom", "pmap:population_rank", "population", "name")); diff --git a/tiles/src/main/java/com/protomaps/basemap/layers/Pois.java b/tiles/src/main/java/com/protomaps/basemap/layers/Pois.java index b1ccdb08..3f440623 100644 --- a/tiles/src/main/java/com/protomaps/basemap/layers/Pois.java +++ b/tiles/src/main/java/com/protomaps/basemap/layers/Pois.java @@ -11,7 +11,6 @@ import com.onthegomap.planetiler.util.ZoomFunction; import com.protomaps.basemap.feature.FeatureId; import com.protomaps.basemap.names.OsmNames; - import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -47,9 +46,7 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { sf.hasTag("railway", "station") || sf.hasTag("shop") || sf.hasTag("tourism") && - (!sf.hasTag("historic", "district")) - ) - ) { + (!sf.hasTag("historic", "district")))) { String kind = "other"; String kind_detail = ""; Integer min_zoom = 15; @@ -127,7 +124,7 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { kind = sf.getString("tourism"); // Boundary is most generic, so place last else we loose out // on nature_reserve detail versus all the protected_area - } else if (sf.hasTag("historic") && ! sf.hasTag("historic", "yes")) { + } else if (sf.hasTag("historic") && !sf.hasTag("historic", "yes")) { kind = sf.getString("historic"); } else if (sf.hasTag("boundary")) { kind = sf.getString("boundary"); @@ -213,7 +210,7 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { // Roughly shared with the water label area zoom grading in physical points layer // // Allowlist of kind values eligible for early zoom point labels - if( kind.equals("national_park") ) { + if (kind.equals("national_park")) { if (way_area > 300000) { // 500000000 sq meters (web mercator proj) min_zoom = 5; } else if (way_area > 25000) { // 500000000 sq meters (web mercator proj) @@ -238,8 +235,7 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { kind.equals("military") || kind.equals("naval_base") || kind.equals("stadium") || - kind.equals("zoo") - ) { + kind.equals("zoo")) { //if (way_area > 300000) { // 500000000 sq meters (web mercator proj) // min_zoom = 5; //} else if (way_area > 25000) { // 500000000 sq meters (web mercator proj) @@ -260,9 +256,8 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { } else if (way_area > 0.2) { // 10000 min_zoom = 13; } - } else if( kind.equals("college") || - kind.equals("university") - ) { + } else if (kind.equals("college") || + kind.equals("university")) { if (way_area > 20000) { min_zoom = 7; } else if (way_area > 5000) { @@ -282,11 +277,10 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { } else { min_zoom = 15; } - } else if( kind.equals("forest") || - kind.equals("park") || - kind.equals("protected_area") || - kind.equals("nature_reserve") - ) { + } else if (kind.equals("forest") || + kind.equals("park") || + kind.equals("protected_area") || + kind.equals("nature_reserve")) { if (way_area > 10000) { min_zoom = 7; } else if (way_area > 4000) { @@ -311,8 +305,7 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { min_zoom = 17; } } else if (kind.equals("cemetery") || - kind.equals("school") - ) { + kind.equals("school")) { if (way_area > 5) { min_zoom = 12; } else if (way_area > 1) { @@ -324,7 +317,7 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { } else { min_zoom = 16; } - // Typically for "building" derived label placements for shops and other businesses + // Typically for "building" derived label placements for shops and other businesses } else { if (way_area > 10) { min_zoom = 11; @@ -351,9 +344,9 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { // NOTE: (nvkelso 20230623) Apply label grid to early zooms of POIs layer // NOTE: (nvkelso 20230624) Turn this into an allowlist instead of a blocklist if (kind.equals("hotel") || kind.equals("hostel") || kind.equals("parking") || kind.equals("bank") || - kind.equals("place_of_worship") || kind.equals("jewelry") || kind.equals("yes") || - kind.equals("restaurant") || kind.equals("coworking_space") || kind.equals("clothes") || - kind.equals("art") || kind.equals("school")) { + kind.equals("place_of_worship") || kind.equals("jewelry") || kind.equals("yes") || + kind.equals("restaurant") || kind.equals("coworking_space") || kind.equals("clothes") || + kind.equals("art") || kind.equals("school")) { if (min_zoom == 12) { min_zoom = 13; } @@ -374,7 +367,7 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { .setAttr("pmap:kind", kind) // While other layers don't need min_zoom, POIs do for more predictable client-side label collisions // 512 px zooms versus 256 px logical zooms - .setAttr("pmap:min_zoom", (int)(min_zoom + 1)) + .setAttr("pmap:min_zoom", (int) (min_zoom + 1)) // // DEBUG //.setAttr("pmap:area_debug", way_area) @@ -431,7 +424,7 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { .setAttr("pmap:kind", kind) // While other layers don't need min_zoom, POIs do for more predictable client-side label collisions // 512 px zooms versus 256 px logical zooms - .setAttr("pmap:min_zoom", (int)(min_zoom + 1)) + .setAttr("pmap:min_zoom", (int) (min_zoom + 1)) // Core OSM tags for different kinds of places // Special airport only tag (to indicate if it's an airport with regular commercial flights) .setAttr("iata", sf.getString("iata")) diff --git a/tiles/src/main/java/com/protomaps/basemap/layers/Roads.java b/tiles/src/main/java/com/protomaps/basemap/layers/Roads.java index c89eaf1a..b74b47d9 100644 --- a/tiles/src/main/java/com/protomaps/basemap/layers/Roads.java +++ b/tiles/src/main/java/com/protomaps/basemap/layers/Roads.java @@ -142,6 +142,7 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { .setId(FeatureId.create(sf)) // Core Tilezen schema properties .setAttr("pmap:kind", kind) + // To power better client label collisions .setAttr("pmap:min_zoom", min_zoom + 1) .setAttrWithMinzoom("ref", shield_text, min_zoom_shield_text) .setAttrWithMinzoom("shield_text_length", shield_text_length, min_zoom_shield_text) @@ -176,9 +177,9 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { // Set "brunnel" (bridge / tunnel) property where "level" = 1 is a bridge, 0 is ground level, and -1 is a tunnel // Because of MapLibre performance and draw order limitations, generally the boolean is sufficent // See also: "layer" for more complicated ±6 layering for more sophisticated graphics libraries - if (sf.hasTag("bridge") && ! sf.hasTag("bridge", "no")) { + if (sf.hasTag("bridge") && !sf.hasTag("bridge", "no")) { feat.setAttrWithMinzoom("pmap:level", 1, 12); - } else if (sf.hasTag("tunnel") && ! sf.hasTag("tunnel", "no")) { + } else if (sf.hasTag("tunnel") && !sf.hasTag("tunnel", "no")) { feat.setAttrWithMinzoom("pmap:level", -1, 12); } else { feat.setAttrWithMinzoom("pmap:level", 0, 12); diff --git a/tiles/src/main/java/com/protomaps/basemap/layers/Transit.java b/tiles/src/main/java/com/protomaps/basemap/layers/Transit.java index f6cc2886..7ab0efa4 100644 --- a/tiles/src/main/java/com/protomaps/basemap/layers/Transit.java +++ b/tiles/src/main/java/com/protomaps/basemap/layers/Transit.java @@ -48,7 +48,7 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { kind_detail = sf.getString("railway"); minzoom = 14; - if( sf.hasTag("railway", "disused") ) { + if (sf.hasTag("railway", "disused")) { minzoom = 15; } } else if (sf.hasTag("railway")) { @@ -100,9 +100,9 @@ public void processFeature(SourceFeature sf, FeatureCollector features) { // Set "brunnel" (bridge / tunnel) property where "level" = 1 is a bridge, 0 is ground level, and -1 is a tunnel // Because of MapLibre performance and draw order limitations, generally the boolean is sufficent // See also: "layer" for more complicated ±6 layering for more sophisticated graphics libraries - if (sf.hasTag("bridge") && ! sf.hasTag("bridge", "no")) { + if (sf.hasTag("bridge") && !sf.hasTag("bridge", "no")) { feature.setAttrWithMinzoom("pmap:level", 1, 12); - } else if (sf.hasTag("tunnel") && ! sf.hasTag("tunnel", "no")) { + } else if (sf.hasTag("tunnel") && !sf.hasTag("tunnel", "no")) { feature.setAttrWithMinzoom("pmap:level", -1, 12); } else { feature.setAttrWithMinzoom("pmap:level", 0, 12);