diff --git a/amenity-points.mss b/amenity-points.mss index 6116e52bd1..e509414c4f 100644 --- a/amenity-points.mss +++ b/amenity-points.mss @@ -310,6 +310,13 @@ marker-clip: false; } + [feature = 'tourism_gallery'][zoom >= 17] { + marker-file: url('symbols/shop/art.svg'); + marker-placement: interior; + marker-clip: false; + marker-fill: @amenity-brown; + } + [feature = 'tourism_hostel'][zoom >= 17] { marker-file: url('symbols/tourism/hostel.svg'); marker-placement: interior; @@ -2270,32 +2277,6 @@ } } - [feature = 'amenity_shower'][zoom >= 18] { - text-name: "[name]"; - text-size: @standard-font-size; - text-wrap-width: @standard-wrap-width; - text-line-spacing: @standard-line-spacing-size; - text-dy: 10; - text-fill: @amenity-brown; - text-halo-radius: @standard-halo-radius; - text-halo-fill: @standard-halo-fill; - text-placement: interior; - text-face-name: @standard-font; - } - - [feature = 'amenity_bbq'][zoom >= 17] { - text-name: "[name]"; - text-size: @standard-font-size; - text-wrap-width: @standard-wrap-width; - text-line-spacing: @standard-line-spacing-size; - text-dy: 10; - text-fill: @amenity-brown; - text-halo-radius: @standard-halo-radius; - text-halo-fill: @standard-halo-fill; - text-placement: interior; - text-face-name: @standard-font; - } - [feature = 'amenity_atm'][zoom >= 17] { text-name: "[operator]"; text-size: @standard-font-size; @@ -2309,19 +2290,10 @@ text-face-name: @standard-font; } - [feature = 'amenity_bureau_de_change'][zoom >= 17] { - text-name: "[name]"; - text-size: @standard-font-size; - text-wrap-width: @standard-wrap-width; - text-line-spacing: @standard-line-spacing-size; - text-dy: 10; - text-fill: @amenity-brown; - text-halo-radius: @standard-halo-radius; - text-halo-fill: @standard-halo-fill; - text-placement: interior; - text-face-name: @standard-font; - } - + [feature = 'amenity_shower'][zoom >= 18], + [feature = 'amenity_bbq'][zoom >= 17], + [feature = 'amenity_bureau_de_change'][zoom >= 17], + [feature = 'tourism_gallery'][zoom >= 17], [feature = 'amenity_bicycle_repair_station'][zoom >= 19] { text-name: "[name]"; text-size: @standard-font-size; @@ -2334,6 +2306,7 @@ text-placement: interior; text-face-name: @standard-font; } + [feature = 'tourism_alpine_hut'][zoom >= 14], [feature = 'amenity_shelter'][zoom >= 17], [feature = 'tourism_hotel'][zoom >= 17], diff --git a/project.mml b/project.mml index 5083be5654..780d7a6f25 100644 --- a/project.mml +++ b/project.mml @@ -1472,7 +1472,7 @@ Layer: COALESCE( 'aeroway_' || CASE WHEN aeroway IN ('helipad', 'aerodrome') THEN aeroway ELSE NULL END, 'tourism_' || CASE WHEN tourism IN ('artwork', 'alpine_hut', 'camp_site', 'caravan_site', 'chalet', 'wilderness_hut', 'guest_house', 'apartment', - 'hostel', 'hotel', 'motel', 'information', 'museum', 'picnic_site') THEN tourism ELSE NULL END, + 'hostel', 'hotel', 'motel', 'information', 'museum', 'picnic_site', 'gallery') THEN tourism ELSE NULL END, 'amenity_' || CASE WHEN amenity IN ('shelter', 'atm', 'bank', 'bar', 'bbq', 'bicycle_rental', 'bureau_de_change', 'bus_station', 'cafe', 'public_bath', 'car_rental', 'car_wash', 'cinema', 'clinic', 'community_centre', 'fire_station', 'fountain', 'fuel', 'hospital', 'ice_cream', 'embassy', 'library', 'courthouse', 'townhall', 'parking', @@ -1536,7 +1536,7 @@ Layer: -- The upcoming where clause is needed for performance only, as the CASE statements would end up doing the equivalent filtering WHERE aeroway IN ('helipad', 'aerodrome') OR tourism IN ('artwork', 'alpine_hut', 'camp_site', 'caravan_site', 'chalet', 'wilderness_hut', 'guest_house', 'apartment', 'hostel', - 'hotel', 'motel', 'information', 'museum', 'viewpoint', 'picnic_site') + 'hotel', 'motel', 'information', 'museum', 'viewpoint', 'picnic_site', 'gallery') OR amenity IS NOT NULL -- skip checking a huge list and use a null check OR tags->'advertising' IN ('column') OR shop IS NOT NULL @@ -1592,7 +1592,7 @@ Layer: COALESCE( 'aeroway_' || CASE WHEN aeroway IN ('helipad', 'aerodrome') THEN aeroway ELSE NULL END, 'tourism_' || CASE WHEN tourism IN ('artwork', 'alpine_hut', 'camp_site', 'caravan_site', 'chalet', 'wilderness_hut', 'guest_house', 'apartment', 'hostel', - 'hotel', 'motel', 'information', 'museum', 'picnic_site') THEN tourism ELSE NULL END, + 'hotel', 'motel', 'information', 'museum', 'picnic_site', 'gallery') THEN tourism ELSE NULL END, 'amenity_' || CASE WHEN amenity IN ('shelter', 'atm', 'bank', 'bar', 'bbq', 'bicycle_rental', 'bureau_de_change', 'bus_station', 'cafe', 'public_bath', 'car_rental', 'car_wash', 'cinema', 'clinic', 'community_centre', 'fire_station', 'fountain', 'fuel', 'hospital', 'ice_cream', 'embassy', 'library', 'courthouse', 'townhall', 'parking', @@ -1676,7 +1676,7 @@ Layer: -- The upcoming where clause is needed for performance only, as the CASE statements would end up doing the equivalent filtering WHERE aeroway IN ('helipad', 'aerodrome') OR tourism IN ('artwork', 'alpine_hut', 'camp_site', 'caravan_site', 'chalet', 'wilderness_hut', 'guest_house', 'apartment', 'hostel', - 'hotel', 'motel', 'information', 'museum', 'viewpoint', 'picnic_site') + 'hotel', 'motel', 'information', 'museum', 'viewpoint', 'picnic_site', 'gallery') OR amenity IS NOT NULL -- skip checking a huge list and use a null check OR shop IS NOT NULL OR tags->'advertising' IN ('column') @@ -2054,7 +2054,7 @@ Layer: COALESCE( 'aeroway_' || CASE WHEN aeroway IN ('gate', 'apron', 'helipad', 'aerodrome') THEN aeroway ELSE NULL END, 'tourism_' || CASE WHEN tourism IN ('artwork', 'alpine_hut', 'hotel', 'motel', 'hostel', 'chalet', 'wilderness_hut', 'guest_house', 'apartment', 'camp_site', 'caravan_site', - 'theme_park', 'museum', 'zoo', 'information', 'picnic_site') THEN tourism ELSE NULL END, + 'theme_park', 'museum', 'zoo', 'information', 'picnic_site', 'gallery') THEN tourism ELSE NULL END, 'amenity_' || CASE WHEN amenity IN ('pub', 'restaurant', 'food_court', 'cafe', 'fast_food', 'biergarten', 'bar', 'library', 'public_bath', 'theatre', 'courthouse', 'townhall', 'cinema', 'clinic', 'community_centre', 'parking', 'bicycle_parking', 'motorcycle_parking', 'police', 'fire_station', 'fountain', 'place_of_worship', @@ -2133,7 +2133,7 @@ Layer: -- The upcoming where clause is needed for performance only, as the CASE statements would end up doing the equivalent filtering WHERE (aeroway IN ('gate', 'apron', 'helipad', 'aerodrome') OR tourism IN ('artwork', 'alpine_hut', 'hotel', 'motel', 'hostel', 'chalet', 'wilderness_hut', 'guest_house', 'apartment', - 'camp_site', 'caravan_site', 'theme_park', 'museum', 'viewpoint', 'attraction', 'zoo', 'information', 'picnic_site') + 'camp_site', 'caravan_site', 'theme_park', 'museum', 'viewpoint', 'attraction', 'zoo', 'information', 'picnic_site', 'gallery') OR amenity IS NOT NULL -- skip checking a huge list and use a null check OR tags->'advertising' IN ('column') OR shop IS NOT NULL @@ -2226,7 +2226,7 @@ Layer: COALESCE( 'aeroway_' || CASE WHEN aeroway IN ('gate', 'apron', 'helipad', 'aerodrome') THEN aeroway ELSE NULL END, 'tourism_' || CASE WHEN tourism IN ('artwork', 'alpine_hut', 'hotel', 'motel', 'hostel', 'chalet', 'wilderness_hut', 'guest_house', 'apartment', 'camp_site', 'caravan_site', - 'theme_park', 'museum', 'zoo', 'information', 'picnic_site') THEN tourism ELSE NULL END, + 'theme_park', 'museum', 'zoo', 'information', 'picnic_site', 'gallery') THEN tourism ELSE NULL END, 'amenity_' || CASE WHEN amenity IN ('pub', 'restaurant', 'food_court', 'cafe', 'fast_food', 'biergarten', 'bar', 'library', 'theatre', 'courthouse', 'townhall', 'cinema', 'clinic', 'community_centre', 'parking', 'bicycle_parking', 'public_bath', 'motorcycle_parking', 'police', 'fire_station', 'fountain', 'place_of_worship', 'grave_yard', 'shelter', 'bank', @@ -2313,7 +2313,7 @@ Layer: -- The upcoming where clause is needed for performance only, as the CASE statements would end up doing the equivalent filtering WHERE (aeroway IN ('gate', 'apron', 'helipad', 'aerodrome') OR tourism IN ('artwork', 'alpine_hut', 'hotel', 'motel', 'hostel', 'chalet', 'wilderness_hut', 'guest_house', 'apartment', 'camp_site', 'caravan_site', 'theme_park', - 'museum', 'viewpoint', 'attraction', 'zoo', 'information', 'picnic_site') + 'museum', 'viewpoint', 'attraction', 'zoo', 'information', 'picnic_site', 'gallery') OR amenity IS NOT NULL -- skip checking a huge list and use a null check OR tags->'advertising' IN ('column') OR shop IS NOT NULL