From d41a9f6a368e290bf0d5858e42ebfa0a9943d0d8 Mon Sep 17 00:00:00 2001 From: kocio-pl Date: Sat, 7 Apr 2018 00:19:59 +0200 Subject: [PATCH] Adding rendering for historic=castle and historic=manor (#3099) --- amenity-points.mss | 28 +++++++++++++++++++++++++++- project.mml | 21 +++++++++++++-------- symbols/castle.svg | 38 ++++++++++++++++++++++++++++++++++++++ symbols/fortress.svg | 38 ++++++++++++++++++++++++++++++++++++++ symbols/manor.svg | 29 +++++++++++++++++++++++++++++ symbols/palace.svg | 38 ++++++++++++++++++++++++++++++++++++++ 6 files changed, 183 insertions(+), 9 deletions(-) create mode 100644 symbols/castle.svg create mode 100644 symbols/fortress.svg create mode 100644 symbols/manor.svg create mode 100644 symbols/palace.svg diff --git a/amenity-points.mss b/amenity-points.mss index 822d1d813b..ffb8cdc9e7 100644 --- a/amenity-points.mss +++ b/amenity-points.mss @@ -690,6 +690,30 @@ marker-clip: false; } + [feature = 'historic_castle'][castle_type != 'stately'][zoom >= 15], + [feature = 'historic_castle'][castle_type = 'stately'][zoom >= 16], + [feature = 'historic_manor'][zoom >= 15] { + marker-file: url('symbols/castle.svg'); + marker-fill: @memorials; + marker-placement: interior; + marker-clip: false; + [castle_type = 'palace'], + [castle_type = 'stately'] { + marker-file: url('symbols/palace.svg'); + } + [castle_type = 'manor'], + [feature = 'historic_manor'] { + marker-file: url('symbols/manor.svg'); + } + [castle_type = 'fortress'], + [castle_type = 'defensive'], + [castle_type = 'castrum'], + [castle_type = 'shiro'], + [castle_type = 'kremlin'] { + marker-file: url('symbols/fortress.svg'); + } + } + [feature = 'historic_archaeological_site'][zoom >= 16] { marker-file: url('symbols/archaeological_site.svg'); marker-fill: @culture; @@ -1557,7 +1581,9 @@ [feature = 'historic_memorial_plaque'][zoom >= 19], [feature = 'man_made_obelisk'][zoom >= 16], [feature = 'historic_monument'][zoom >= 16], - [feature = 'historic_fort'][zoom >= 16] { + [feature = 'historic_fort'][zoom >= 16], + [feature = 'historic_castle'][zoom >= 16], + [feature = 'historic_manor'][zoom >= 16] { text-name: "[name]"; text-size: @standard-font-size; text-wrap-width: @standard-wrap-width; diff --git a/project.mml b/project.mml index e33ca0e2fc..3e42bd6b63 100644 --- a/project.mml +++ b/project.mml @@ -1448,7 +1448,7 @@ Layer: 'fitness_centre', 'fitness_station', 'firepit', 'sauna', 'beach_resort') THEN leisure ELSE NULL END, 'man_made_' || CASE WHEN man_made IN ('mast', 'tower', 'water_tower', 'lighthouse', 'windmill', 'obelisk') THEN man_made ELSE NULL END, 'natural_' || CASE WHEN "natural" IN ('spring') THEN "natural" ELSE NULL END, - 'historic_' || CASE WHEN historic IN ('memorial', 'monument', 'archaeological_site', 'fort') + 'historic_' || CASE WHEN historic IN ('memorial', 'monument', 'archaeological_site', 'fort', 'castle', 'manor') THEN concat_ws('_', historic, CASE WHEN tags->'memorial' IN ('plaque') THEN tags->'memorial' ELSE NULL END) ELSE NULL END, 'military_'|| CASE WHEN military IN ('bunker') THEN military ELSE NULL END, @@ -1474,6 +1474,7 @@ Layer: tags->'recycling_type' as recycling_type, tags->'tower:construction' as "tower:construction", tags->'tower:type' as "tower:type", + tags->'castle_type' as castle_type, CASE WHEN shop IN ('supermarket', 'bag', 'bakery', 'beauty', 'books', 'butcher', 'clothes', 'computer', 'confectionery', 'fashion', 'convenience', 'department_store', 'doityourself', 'hardware', 'fishmonger', 'florist', 'garden_centre', 'hairdresser', 'hifi', 'ice_cream', 'car', 'car_repair', 'bicycle', 'mall', 'pet', @@ -1496,7 +1497,7 @@ Layer: 'fitness_station', 'firepit', 'sauna', 'beach_resort') OR man_made IN ('mast', 'tower', 'water_tower', 'lighthouse', 'windmill', 'obelisk') OR "natural" IN ('spring') - OR historic IN ('memorial', 'monument', 'archaeological_site', 'fort') + OR historic IN ('memorial', 'monument', 'archaeological_site', 'fort', 'castle', 'manor') OR tags->'memorial' IN ('plaque') OR military IN ('bunker') OR highway IN ('bus_stop', 'elevator', 'traffic_signals') @@ -1552,7 +1553,7 @@ Layer: 'dog_park', 'fitness_centre', 'fitness_station', 'firepit', 'sauna', 'beach_resort') THEN leisure ELSE NULL END, 'man_made_' || CASE WHEN man_made IN ('mast', 'tower', 'water_tower', 'lighthouse', 'windmill', 'obelisk') THEN man_made ELSE NULL END, 'natural_' || CASE WHEN "natural" IN ('peak', 'volcano', 'saddle', 'spring', 'cave_entrance') THEN "natural" ELSE NULL END, - 'historic_' || CASE WHEN historic IN ('memorial', 'monument', 'archaeological_site', 'fort') + 'historic_' || CASE WHEN historic IN ('memorial', 'monument', 'archaeological_site', 'fort', 'castle', 'manor') THEN concat_ws('_', historic, CASE WHEN tags->'memorial' IN ('plaque') THEN tags->'memorial' ELSE NULL END) ELSE NULL END, 'military_'|| CASE WHEN military IN ('bunker') THEN military ELSE NULL END, @@ -1590,6 +1591,7 @@ Layer: tags->'recycling_type' as recycling_type, tags->'tower:construction' as "tower:construction", tags->'tower:type' as "tower:type", + tags->'castle_type' as castle_type, CASE WHEN shop IN ('supermarket', 'bag', 'bakery', 'beauty', 'books', 'butcher', 'clothes', 'computer', 'confectionery', 'fashion', 'convenience', 'department_store', 'doityourself', 'hardware', 'fishmonger', 'florist', 'garden_centre', 'hairdresser', 'hifi', 'ice_cream', 'car', 'car_repair', 'bicycle', 'mall', 'pet', @@ -1613,7 +1615,7 @@ Layer: OR barrier IN ('toll_booth') OR man_made IN ('mast', 'tower', 'water_tower', 'lighthouse', 'windmill', 'cross', 'obelisk') OR "natural" IN ('peak', 'volcano', 'saddle', 'spring', 'cave_entrance') - OR historic IN ('memorial', 'monument', 'archaeological_site', 'wayside_cross', 'fort', 'wayside_shrine') + OR historic IN ('memorial', 'monument', 'archaeological_site', 'wayside_cross', 'fort', 'wayside_shrine', 'castle', 'manor') OR tags->'memorial' IN ('plaque') OR military IN ('bunker') OR tags @> 'emergency=>phone' @@ -2007,7 +2009,7 @@ Layer: 'grassland', 'scrub', 'beach', 'shoal', 'reef', 'glacier') THEN "natural" ELSE NULL END, 'place_' || CASE WHEN place IN ('island', 'islet') THEN place ELSE NULL END, 'military_' || CASE WHEN military IN ('danger_area', 'bunker') THEN military ELSE NULL END, - 'historic_' || CASE WHEN historic IN ('memorial', 'monument', 'archaeological_site', 'fort') + 'historic_' || CASE WHEN historic IN ('memorial', 'monument', 'archaeological_site', 'fort', 'castle', 'manor') THEN concat_ws('_', historic, CASE WHEN tags->'memorial' IN ('plaque') THEN tags->'memorial' ELSE NULL END) ELSE NULL END, 'highway_' || CASE WHEN highway IN ('services', 'rest_area', 'bus_stop', 'elevator') THEN highway ELSE NULL END, @@ -2029,6 +2031,7 @@ Layer: tags->'icao' as icao, tags->'iata' as iata, tags->'recycling_type' as recycling_type, + tags->'castle_type' as castle_type, ref, way_area, CASE WHEN building = 'no' OR building IS NULL THEN 'no' ELSE 'yes' END AS is_building @@ -2046,7 +2049,7 @@ Layer: OR "natural" IS NOT NULL OR place IN ('island', 'islet') OR military IN ('danger_area', 'bunker') - OR historic IN ('memorial', 'monument', 'archaeological_site', 'fort') + OR historic IN ('memorial', 'monument', 'archaeological_site', 'fort', 'castle', 'manor') OR tags->'memorial' IN ('plaque') OR highway IN ('services', 'rest_area', 'bus_stop', 'elevator') OR power IN ('plant', 'station', 'generator', 'sub_station', 'substation') @@ -2110,6 +2113,7 @@ Layer: icao, iata, recycling_type, + castle_type, ref, way_area, is_building @@ -2154,7 +2158,7 @@ Layer: 'place_' || CASE WHEN place IN ('island', 'islet') THEN place ELSE NULL END, 'barrier_' || CASE WHEN barrier IN ('toll_booth') THEN barrier ELSE NULL END, 'military_' || CASE WHEN military IN ('danger_area', 'bunker') THEN military ELSE NULL END, - 'historic_' || CASE WHEN historic IN ('memorial', 'monument', 'archaeological_site', 'fort') + 'historic_' || CASE WHEN historic IN ('memorial', 'monument', 'archaeological_site', 'fort', 'castle', 'manor') THEN concat_ws('_', historic, CASE WHEN tags->'memorial' IN ('plaque') THEN tags->'memorial' ELSE NULL END) ELSE NULL END, 'highway_' || CASE WHEN highway IN ('services', 'rest_area', 'bus_stop', 'elevator') THEN highway ELSE NULL END, @@ -2179,6 +2183,7 @@ Layer: tags->'icao' as icao, tags->'iata' as iata, tags->'recycling_type' as recycling_type, + tags->'castle_type' as castle_type, ref, NULL AS way_area, CASE WHEN building = 'no' OR building IS NULL THEN 'no' ELSE 'yes' END AS is_building @@ -2199,7 +2204,7 @@ Layer: OR place IN ('island', 'islet') OR barrier IN ('toll_booth') OR military IN ('danger_area', 'bunker') - OR historic IN ('memorial', 'monument', 'archaeological_site', 'wayside_cross', 'fort', 'wayside_shrine') + OR historic IN ('memorial', 'monument', 'archaeological_site', 'wayside_cross', 'fort', 'wayside_shrine', 'castle', 'manor') OR tags->'memorial' IN ('plaque') OR highway IN ('bus_stop', 'services', 'rest_area', 'elevator') OR power IN ('plant', 'station', 'generator', 'sub_station', 'substation') diff --git a/symbols/castle.svg b/symbols/castle.svg new file mode 100644 index 0000000000..9f7b6b982a --- /dev/null +++ b/symbols/castle.svg @@ -0,0 +1,38 @@ + + + + + + image/svg+xml + + + + + + + + + diff --git a/symbols/fortress.svg b/symbols/fortress.svg new file mode 100644 index 0000000000..773534f226 --- /dev/null +++ b/symbols/fortress.svg @@ -0,0 +1,38 @@ + + + + + + image/svg+xml + + + + + + + + + diff --git a/symbols/manor.svg b/symbols/manor.svg new file mode 100644 index 0000000000..fba7c76585 --- /dev/null +++ b/symbols/manor.svg @@ -0,0 +1,29 @@ + + + + + + image/svg+xml + + + + + + + diff --git a/symbols/palace.svg b/symbols/palace.svg new file mode 100644 index 0000000000..48539c85ab --- /dev/null +++ b/symbols/palace.svg @@ -0,0 +1,38 @@ + + + + + + image/svg+xml + + + + + + + + +