From c533fce1c17f393a3b48c518e05f3607b9563de1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ko=C4=87?= Date: Mon, 19 Dec 2016 05:10:55 +0100 Subject: [PATCH 01/23] Unification of major buildings --- buildings.mss | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/buildings.mss b/buildings.mss index 721e74d509..cbad8256ed 100644 --- a/buildings.mss +++ b/buildings.mss @@ -5,9 +5,6 @@ @building-major-fill: darken(@building-fill, 20%); @building-major-line: darken(@building-major-fill, 25%); -@building-aeroway-fill: #cc99ff; -@building-aeroway-line: darken(@building-aeroway-fill,15%); - #buildings { [zoom >= 13] { @@ -24,15 +21,7 @@ #buildings-major { [zoom >= 13] { - [aeroway = 'terminal'] { - polygon-fill: @building-aeroway-fill; - polygon-clip: false; - [zoom >= 15] { - line-width: .75; - line-clip: false; - line-color: @building-aeroway-line; - } - } + [aeroway = 'terminal'], [amenity = 'place_of_worship'], [building = 'train_station'] { polygon-fill: @building-major-fill; From 9e4104a6b153956cef504a53cc95e44f56ee8280 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ko=C4=87?= Date: Thu, 22 Dec 2016 16:02:21 +0100 Subject: [PATCH 02/23] Adding icon for amenity=arts_centre --- amenity-points.mss | 13 +++++++++++-- project.mml | 12 ++++++------ 2 files changed, 17 insertions(+), 8 deletions(-) diff --git a/amenity-points.mss b/amenity-points.mss index 4979964ce6..b89fd5c503 100644 --- a/amenity-points.mss +++ b/amenity-points.mss @@ -501,6 +501,13 @@ marker-clip: false; } + [feature = 'amenity_arts_centre'][zoom >= 17] { + marker-file: url('symbols/shop/art.svg'); + marker-fill: @amenity-brown; + marker-placement: interior; + marker-clip: false; + } + [feature = 'amenity_toilets'][zoom >= 17] { marker-file: url('symbols/toilets.svg'); marker-fill: @amenity-brown; @@ -1226,7 +1233,8 @@ [feature = 'amenity_theatre'], [feature = 'amenity_courthouse'], [feature = 'amenity_townhall'], - [feature = 'amenity_cinema'] { + [feature = 'amenity_cinema'], + [feature = 'amenity_arts_centre'] { [zoom >= 17] { text-name: "[name]"; text-size: @standard-text-size; @@ -1241,7 +1249,8 @@ [feature = 'amenity_library'], [feature = 'tourism_museum'], [feature = 'amenity_theatre'], - [feature = 'amenity_cinema'] { + [feature = 'amenity_cinema'], + [feature = 'amenity_arts_centre'] { text-dy: 11; } } diff --git a/project.mml b/project.mml index 77c317973a..485ee1eae1 100644 --- a/project.mml +++ b/project.mml @@ -1715,7 +1715,7 @@ Layer: 'police', 'post_box', 'post_office', 'pub', 'biergarten', 'recycling', 'restaurant', 'food_court', 'fast_food', 'telephone', 'emergency_phone', 'taxi', 'theatre', 'toilets', 'drinking_water', 'prison', 'hunting_stand', 'nightclub', 'veterinary', 'social_facility', - 'charging_station') THEN amenity ELSE NULL END, + 'charging_station', 'arts_centre') THEN amenity ELSE NULL END, 'shop_' || 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', @@ -1751,7 +1751,7 @@ Layer: 'dentist', 'place_of_worship', 'police', 'post_box', 'post_office', 'pub', 'biergarten', 'recycling', 'restaurant', 'food_court', 'fast_food', 'telephone', 'emergency_phone', 'taxi', 'theatre', 'toilets', 'drinking_water', 'prison', 'hunting_stand', 'nightclub', 'veterinary', - 'social_facility', 'charging_station') + 'social_facility', 'charging_station', 'arts_centre') OR shop IS NOT NULL -- skip checking a huge list and use a null check OR leisure IN ('water_park', 'playground', 'miniature_golf', 'golf_course', 'picnic_table') OR man_made IN ('mast', 'water_tower', 'lighthouse', 'windmill', 'obelisk') @@ -1785,7 +1785,7 @@ Layer: 'police', 'post_box', 'post_office', 'pub', 'biergarten', 'recycling', 'restaurant', 'food_court', 'fast_food', 'telephone', 'emergency_phone', 'taxi', 'theatre', 'toilets', 'drinking_water', 'prison', 'hunting_stand', 'nightclub', 'veterinary', 'social_facility', - 'charging_station') THEN amenity ELSE NULL END, + 'charging_station', 'arts_centre') THEN amenity ELSE NULL END, 'shop_' || 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', 'photo', 'photo_studio', @@ -1831,7 +1831,7 @@ Layer: 'dentist', 'place_of_worship', 'police', 'post_box', 'post_office', 'pub', 'biergarten', 'recycling', 'restaurant', 'food_court', 'fast_food', 'telephone', 'emergency_phone', 'taxi', 'theatre', 'toilets', 'drinking_water', 'prison', 'hunting_stand', 'nightclub', - 'veterinary', 'social_facility', 'charging_station') + 'veterinary', 'social_facility', 'charging_station', 'arts_centre') OR shop IS NOT NULL -- skip checking a huge list and use a null check OR leisure IN ('water_park', 'playground', 'miniature_golf', 'golf_course', 'picnic_table', 'slipway', 'dog_park') @@ -2137,7 +2137,7 @@ Layer: 'school', 'college', 'kindergarten', 'hospital', 'ice_cream', 'pharmacy', 'doctors', 'dentist', 'atm', 'bicycle_rental', 'car_rental', 'car_wash', 'post_box', 'post_office', 'recycling', 'telephone', 'emergency_phone', 'toilets', 'taxi', 'drinking_water', 'hunting_stand', - 'nightclub', 'veterinary', 'social_facility', 'charging_station') THEN amenity ELSE NULL END, + 'nightclub', 'veterinary', 'social_facility', 'charging_station', 'arts_centre') THEN amenity ELSE NULL END, 'shop_' || 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', 'photo', 'photo_studio', @@ -2267,7 +2267,7 @@ Layer: 'ice_cream', 'pharmacy', 'doctors', 'dentist', 'atm', 'bicycle_rental', 'car_rental', 'car_wash', 'post_box', 'post_office', 'recycling', 'telephone', 'emergency_phone', 'toilets', 'taxi', 'drinking_water', 'hunting_stand', 'nightclub', 'veterinary', 'social_facility', - 'charging_station') THEN amenity ELSE NULL END, + 'charging_station', 'arts_centre') THEN amenity ELSE NULL END, 'shop_' || 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', 'photo', 'photo_studio', 'photography', From c53f5554109401d3f368e4c86a27d06857e43f35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ko=C4=87?= Date: Fri, 30 Dec 2016 17:10:09 +0100 Subject: [PATCH 03/23] preview.png update for a new release --- RELEASES.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/RELEASES.md b/RELEASES.md index 2321bc5a05..5b1cbb130b 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -7,6 +7,7 @@ Throughout this document, replace $OLD_VERSION with the previous release and $NE 1. Update your local master branch 2. Review the changes in git since the last release with a command like `git log --graph $OLD_VERSION...master` or online at https://github.com/gravitystorm/openstreetmap-carto/compare/$OLD_VERSION...master 3. Review [pull requests](https://github.com/gravitystorm/openstreetmap-carto/pulls) for anything that should be merged before release +4. Check [`preview.png`](preview.png) and update it if needed. Preferred way is to import current Chicago data, export new image (for example from Kosmtik via [this link](http://127.0.0.1:6789/openstreetmap-carto/export/?showExtent=true&format=png&width=849&height=310&scale=1&zoom=15&bounds=-87.65145778656006%2C41.86914537674214%2C-87.61502265930177%2C41.8790515319021)) and upload as new version of this file Decide among the maintainers if a new release is due. @@ -54,4 +55,4 @@ https://github.com/gravitystorm/openstreetmap-carto/issues. 3. Post an [openstreetmap.org diary entry](http://www.openstreetmap.org/diary/new) with the text from the email. Add links and other markdown if needed. -4. *Optional: Post on twitter with a link to the diary entry.* \ No newline at end of file +4. *Optional: Post on twitter with a link to the diary entry.* From 05095ae80f08dc0684b167ce309b96013e13cab7 Mon Sep 17 00:00:00 2001 From: boothym Date: Tue, 10 Jan 2017 12:12:58 +0000 Subject: [PATCH 04/23] Add fitness_centre with the same rendering as sports_centre --- amenity-points.mss | 2 ++ landcover.mss | 3 ++- project.mml | 6 +++--- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/amenity-points.mss b/amenity-points.mss index 5bf7787298..e28f9b50a3 100644 --- a/amenity-points.mss +++ b/amenity-points.mss @@ -1574,6 +1574,7 @@ [feature = 'natural_beach'], [feature = 'natural_shoal'], [feature = 'natural_reef'], + [feature = 'leisure_fitness_centre'], [feature = 'leisure_sports_centre'], [feature = 'leisure_stadium'], [feature = 'leisure_track'], @@ -1688,6 +1689,7 @@ [feature = 'natural_shoal'] { text-fill: darken(@beach, 60%); } + [feature = 'leisure_fitness_centre'], [feature = 'leisure_sports_centre'], [feature = 'leisure_stadium'] { text-fill: darken(@stadium, 70%); diff --git a/landcover.mss b/landcover.mss index 0d11dcf827..59c73b749d 100644 --- a/landcover.mss +++ b/landcover.mss @@ -59,7 +59,7 @@ @pitch: #aae0cb; // also track @track: @pitch; -@stadium: @societal_amenities; // also sports_centre +@stadium: @societal_amenities; // also fitness_centre and sports_centre @golf_course: #b5e3b5; #landcover-low-zoom[zoom < 10], @@ -528,6 +528,7 @@ polygon-fill: @station; } + [feature = 'leisure_fitness_centre'], [feature = 'leisure_sports_centre'], [feature = 'leisure_stadium'] { [zoom >= 10] { diff --git a/project.mml b/project.mml index 3d140dd1be..8c1e487ed4 100644 --- a/project.mml +++ b/project.mml @@ -141,7 +141,7 @@ Layer: 'recreation_ground', 'village_green', 'retail', 'industrial', 'railway', 'commercial', 'brownfield', 'landfill', 'construction') THEN landuse ELSE NULL END)) AS landuse, ('leisure_' || (CASE WHEN leisure IN ('swimming_pool', 'playground', 'park', 'recreation_ground', 'common', 'garden', - 'golf_course', 'miniature_golf', 'picnic_table', 'sports_centre', 'stadium', 'pitch', + 'golf_course', 'miniature_golf', 'picnic_table', 'fitness_centre', 'sports_centre', 'stadium', 'pitch', 'track', 'dog_park') THEN leisure ELSE NULL END)) AS leisure, ('military_' || (CASE WHEN military IN ('danger_area') THEN military ELSE NULL END)) AS military, ('natural_' || (CASE WHEN "natural" IN ('beach', 'shoal', 'heath', 'grassland', 'wood', 'sand', 'scree', 'shingle', 'bare_rock', 'scrub') THEN "natural" ELSE NULL END)) AS "natural", @@ -2079,7 +2079,7 @@ Layer: 'travel_agency', 'car_parts', 'greengrocer', 'farm', 'stationery', 'laundry', 'dry_cleaning', 'beverages', 'perfumery', 'cosmetics', 'variety_store', 'wine', 'outdoor', 'copyshop', 'sports', 'deli', 'tobacco', 'art', 'tea') THEN shop WHEN shop IN ('no', 'vacant', 'closed', 'disused', 'empty') OR shop IS NULL THEN NULL ELSE 'other' END, - 'leisure_' || CASE WHEN leisure IN ('swimming_pool', 'water_park', 'miniature_golf', 'golf_course', 'sports_centre', 'stadium', 'track', + 'leisure_' || CASE WHEN leisure IN ('swimming_pool', 'water_park', 'miniature_golf', 'golf_course', 'fitness_centre', 'sports_centre', 'stadium', 'track', 'pitch', 'playground', 'park', 'recreation_ground', 'common', 'garden', 'nature_reserve', 'marina', 'picnic_table', 'dog_park') THEN leisure ELSE NULL END, 'power_' || CASE WHEN power IN ('plant', 'station', 'generator', 'sub_station', 'substation') THEN power ELSE NULL END, @@ -2206,7 +2206,7 @@ Layer: 'greengrocer', 'farm', 'stationery', 'laundry', 'dry_cleaning', 'beverages', 'perfumery', 'cosmetics', 'variety_store', 'wine', 'outdoor', 'copyshop', 'sports', 'deli', 'tobacco', 'art', 'tea') THEN shop WHEN shop IN ('no', 'vacant', 'closed', 'disused', 'empty') OR shop IS NULL THEN NULL ELSE 'other' END, - 'leisure_' || CASE WHEN leisure IN ('swimming_pool', 'water_park', 'miniature_golf', 'golf_course', 'sports_centre', 'stadium', 'track', + 'leisure_' || CASE WHEN leisure IN ('swimming_pool', 'water_park', 'miniature_golf', 'golf_course', 'fitness_centre', 'sports_centre', 'stadium', 'track', 'pitch','playground', 'park', 'recreation_ground', 'common', 'garden', 'nature_reserve', 'marina', 'slipway', 'picnic_table', 'dog_park') THEN leisure ELSE NULL END, 'power_' || CASE WHEN power IN ('plant', 'station', 'generator', 'sub_station', 'substation') THEN power ELSE NULL END, From 7b65edabfb4ef9ddf408437fed1cb90a5fd6c6be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ko=C4=87?= Date: Fri, 13 Jan 2017 23:19:37 +0100 Subject: [PATCH 05/23] Adding rendering of landuse=plant_nursery --- amenity-points.mss | 4 +++- landcover.mss | 16 +++++++++++++++- project.mml | 8 ++++---- symbols/generating_patterns/plant_nursery.md | 5 +++++ symbols/generating_patterns/plant_nursery.svg | 9 +++++++++ symbols/plant_nursery.png | Bin 0 -> 507 bytes 6 files changed, 36 insertions(+), 6 deletions(-) create mode 100644 symbols/generating_patterns/plant_nursery.md create mode 100644 symbols/generating_patterns/plant_nursery.svg create mode 100644 symbols/plant_nursery.png diff --git a/amenity-points.mss b/amenity-points.mss index 5bf7787298..bc071d53f2 100644 --- a/amenity-points.mss +++ b/amenity-points.mss @@ -1542,6 +1542,7 @@ [feature = 'landuse_quarry'], [feature = 'landuse_vineyard'], [feature = 'landuse_orchard'], + [feature = 'landuse_plant_nursery'], [feature = 'landuse_cemetery'], [feature = 'amenity_grave_yard'], [feature = 'landuse_residential'], @@ -1616,7 +1617,8 @@ text-fill: darken(@quarry, 60%); } [feature = 'landuse_vineyard'], - [feature = 'landuse_orchard'] { + [feature = 'landuse_orchard'], + [feature = 'landuse_plant_nursery'] { text-fill: darken(@orchard, 50%); } [feature = 'landuse_cemetery'], diff --git a/landcover.mss b/landcover.mss index 0d11dcf827..56d8863624 100644 --- a/landcover.mss +++ b/landcover.mss @@ -5,7 +5,7 @@ @forest: #add19e; // Lch(80,30,135) @forest-text: #46673b; // Lch(40,30,135) @park: #c8facc; // Lch(94,30,145) also recreation_ground -@orchard: #aedfa3; +@orchard: #aedfa3; // also vineyard, plant_nursery // --- "Base" landuses --- @@ -145,6 +145,20 @@ } } + [feature = 'landuse_plant_nursery'] { + [zoom >= 10] { + polygon-fill: @orchard; + [way_pixels >= 4] { polygon-gamma: 0.75; } + [way_pixels >= 64] { polygon-gamma: 0.3; } + } + [zoom >= 14] { + polygon-pattern-file: url('symbols/plant_nursery.png'); + polygon-pattern-alignment: global; + [way_pixels >= 4] { polygon-pattern-gamma: 0.75; } + [way_pixels >= 64] { polygon-pattern-gamma: 0.3; } + } + } + [feature = 'landuse_cemetery'], [feature = 'amenity_grave_yard'] { [zoom >= 10] { diff --git a/project.mml b/project.mml index 3edfd16a1f..9479c8da9a 100644 --- a/project.mml +++ b/project.mml @@ -139,7 +139,7 @@ Layer: ('landuse_' || (CASE WHEN landuse IN ('quarry', 'vineyard', 'orchard', 'cemetery', 'residential', 'garages', 'meadow', 'grass', 'allotments', 'forest', 'farmyard', 'farm', 'farmland', 'greenhouse_horticulture', 'recreation_ground', 'village_green', 'retail', 'industrial', 'railway', 'commercial', - 'brownfield', 'landfill', 'construction') THEN landuse ELSE NULL END)) AS landuse, + 'brownfield', 'landfill', 'construction', 'plant_nursery') THEN landuse ELSE NULL END)) AS landuse, ('leisure_' || (CASE WHEN leisure IN ('swimming_pool', 'playground', 'park', 'recreation_ground', 'common', 'garden', 'golf_course', 'miniature_golf', 'picnic_table', 'sports_centre', 'stadium', 'pitch', 'track', 'dog_park') THEN leisure ELSE NULL END)) AS leisure, @@ -2083,7 +2083,7 @@ Layer: 'landuse_' || CASE WHEN landuse IN ('reservoir', 'basin', 'recreation_ground', 'village_green', 'quarry', 'vineyard', 'orchard', 'cemetery', 'residential', 'garages', 'meadow', 'grass', 'allotments', 'forest', 'farmyard', 'farm', 'farmland', 'greenhouse_horticulture', 'retail', 'industrial', 'railway', 'commercial', 'brownfield', 'landfill', - 'construction', 'military') THEN landuse ELSE NULL END, + 'construction', 'military', 'plant_nursery') THEN landuse ELSE NULL END, 'man_made_' || CASE WHEN man_made IN ('lighthouse', 'windmill', 'mast', 'water_tower', 'pier', 'breakwater', 'groyne', 'obelisk') THEN man_made ELSE NULL END, 'natural_' || CASE WHEN "natural" IN ('wood', 'water', 'mud', 'wetland', 'marsh', 'bay', 'spring', 'scree', 'shingle', 'bare_rock', 'sand', 'heath', 'grassland', 'scrub', 'beach', 'shoal', 'reef', 'glacier') THEN "natural" ELSE NULL END, @@ -2210,7 +2210,7 @@ Layer: 'landuse_' || CASE WHEN landuse IN ('reservoir', 'basin', 'recreation_ground', 'village_green', 'quarry', 'vineyard', 'orchard', 'cemetery', 'residential', 'garages', 'meadow', 'grass', 'allotments', 'forest', 'farmyard', 'farm', 'farmland', 'greenhouse_horticulture', 'retail', 'industrial', 'railway', 'commercial', 'brownfield', 'landfill', - 'construction', 'military') THEN landuse ELSE NULL END, + 'construction', 'military', 'plant_nursery') THEN landuse ELSE NULL END, 'man_made_' || CASE WHEN man_made IN ('lighthouse', 'windmill', 'mast', 'water_tower', 'obelisk') THEN man_made ELSE NULL END, 'natural_' || CASE WHEN "natural" IN ('wood', 'peak', 'volcano', 'saddle', 'cave_entrance', 'water', 'mud', 'wetland', 'marsh', 'bay', 'spring', 'scree', 'shingle', 'bare_rock', 'sand', 'heath', 'grassland', 'scrub', 'beach', 'glacier', 'tree') @@ -2250,7 +2250,7 @@ Layer: OR leisure IS NOT NULL OR landuse IN ('reservoir', 'basin', 'recreation_ground', 'village_green', 'quarry', 'vineyard', 'orchard', 'cemetery', 'residential', 'garages', 'meadow', 'grass', 'allotments', 'forest', 'farmyard', 'farm', 'farmland', 'greenhouse_horticulture', - 'retail', 'industrial', 'railway', 'commercial', 'brownfield', 'landfill', 'construction', 'military') + 'retail', 'industrial', 'railway', 'commercial', 'brownfield', 'landfill', 'construction', 'military', 'plant_nursery') OR man_made IN ('lighthouse', 'windmill', 'mast', 'water_tower', 'cross', 'obelisk') OR "natural" IS NOT NULL OR place IN ('island', 'islet') diff --git a/symbols/generating_patterns/plant_nursery.md b/symbols/generating_patterns/plant_nursery.md new file mode 100644 index 0000000000..8c2cd3477f --- /dev/null +++ b/symbols/generating_patterns/plant_nursery.md @@ -0,0 +1,5 @@ +This pattern is generated by jsdotpattern script through this link: + +http://www.imagico.de/map/jsdotpattern.php#x,128,jdp32360;gv,6,32,32;rd,1,0,0,pixel,0.125,4,4,0,jdp23814,749d6c,aedea3; + +Since exported SVG file is not properly handled by Mapnik, it was converted to PNG file with alpha channel. diff --git a/symbols/generating_patterns/plant_nursery.svg b/symbols/generating_patterns/plant_nursery.svg new file mode 100644 index 0000000000..27491ca438 --- /dev/null +++ b/symbols/generating_patterns/plant_nursery.svg @@ -0,0 +1,9 @@ + + + + + + + + + Created with Snap \ No newline at end of file diff --git a/symbols/plant_nursery.png b/symbols/plant_nursery.png new file mode 100644 index 0000000000000000000000000000000000000000..90b46aa98b021104f08b9fda1fba405c242a8469 GIT binary patch literal 507 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSY)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmPtBd-_>x9R18B@7IV9iA?ZAr-gY-Z^=M`;I2afm7+6>W{_JWE;4A^M1s2R|{A&K1 zK@Y6t&UR)8mIej|hC@smEo;rS8-c( z6u!lD;%}b(1;!YVDIaFv-~(CFAnWk%HlqR)&}j^Yj3S4w&7SH26n2Pa*m?ggvsD8( z$do$a+l&u@v;spClSbWLrxjrHI0DWd_%*u})s!2IUl<`Fz@(ti@aVd3i`N3M8CQAM v?2lwG0EWR0#wYt^8I-_w%WnXNz=8wJyefw>4@wywBS3j3^P6 Date: Thu, 19 Jan 2017 14:07:37 +0100 Subject: [PATCH 06/23] remove rendering for landuse=farm --- landcover.mss | 3 +-- project.mml | 8 ++++---- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/landcover.mss b/landcover.mss index 0d11dcf827..96207903bc 100644 --- a/landcover.mss +++ b/landcover.mss @@ -17,7 +17,7 @@ @commercial-line: #d1b2b0; // Lch(75,12,25) @industrial: #ebdbe8; // Lch(89,9,330) (Also used for railway) @industrial-line: #c6b3c3; // Lch(75,11,330) (Also used for railway-line) -@farmland: #fbecd7; // Lch(94,12,80) (Also used for farm) +@farmland: #fbecd7; // Lch(94,12,80) @farmland-line: #d6c4ab; // Lch(80,15,80) @farmyard: #f5dcba; // Lch(89,20,80) @farmyard-line: #d1b48c; // Lch(75,25,80) @@ -282,7 +282,6 @@ [way_pixels >= 64] { polygon-gamma: 0.3; } } - [feature = 'landuse_farm'], [feature = 'landuse_farmland'], [feature = 'landuse_greenhouse_horticulture'] { [zoom >= 10] { diff --git a/project.mml b/project.mml index 33e487d27c..5dfa7d6b2c 100644 --- a/project.mml +++ b/project.mml @@ -137,7 +137,7 @@ Layer: 'hospital', 'kindergarten', 'grave_yard', 'prison', 'place_of_worship', 'clinic') THEN amenity ELSE NULL END)) AS amenity, ('landuse_' || (CASE WHEN landuse IN ('quarry', 'vineyard', 'orchard', 'cemetery', 'residential', 'garages', 'meadow', 'grass', - 'allotments', 'forest', 'farmyard', 'farm', 'farmland', 'greenhouse_horticulture', + 'allotments', 'forest', 'farmyard', 'farmland', 'greenhouse_horticulture', 'recreation_ground', 'village_green', 'retail', 'industrial', 'railway', 'commercial', 'brownfield', 'landfill', 'construction') THEN landuse ELSE NULL END)) AS landuse, ('leisure_' || (CASE WHEN leisure IN ('swimming_pool', 'playground', 'park', 'recreation_ground', 'common', 'garden', @@ -2086,7 +2086,7 @@ Layer: 'picnic_table', 'dog_park') THEN leisure ELSE NULL END, 'power_' || CASE WHEN power IN ('plant', 'station', 'generator', 'sub_station', 'substation') THEN power ELSE NULL END, 'landuse_' || CASE WHEN landuse IN ('reservoir', 'basin', 'recreation_ground', 'village_green', 'quarry', 'vineyard', 'orchard', 'cemetery', - 'residential', 'garages', 'meadow', 'grass', 'allotments', 'forest', 'farmyard', 'farm', 'farmland', + 'residential', 'garages', 'meadow', 'grass', 'allotments', 'forest', 'farmyard', 'farmland', 'greenhouse_horticulture', 'retail', 'industrial', 'railway', 'commercial', 'brownfield', 'landfill', 'construction', 'military') THEN landuse ELSE NULL END, 'man_made_' || CASE WHEN man_made IN ('lighthouse', 'windmill', 'mast', 'water_tower', 'pier', 'breakwater', 'groyne', 'obelisk') THEN man_made ELSE NULL END, @@ -2213,7 +2213,7 @@ Layer: 'slipway', 'picnic_table', 'dog_park') THEN leisure ELSE NULL END, 'power_' || CASE WHEN power IN ('plant', 'station', 'generator', 'sub_station', 'substation') THEN power ELSE NULL END, 'landuse_' || CASE WHEN landuse IN ('reservoir', 'basin', 'recreation_ground', 'village_green', 'quarry', 'vineyard', 'orchard', 'cemetery', - 'residential', 'garages', 'meadow', 'grass', 'allotments', 'forest', 'farmyard', 'farm', 'farmland', + 'residential', 'garages', 'meadow', 'grass', 'allotments', 'forest', 'farmyard', 'farmland', 'greenhouse_horticulture', 'retail', 'industrial', 'railway', 'commercial', 'brownfield', 'landfill', 'construction', 'military') THEN landuse ELSE NULL END, 'man_made_' || CASE WHEN man_made IN ('lighthouse', 'windmill', 'mast', 'water_tower', 'obelisk') THEN man_made ELSE NULL END, @@ -2254,7 +2254,7 @@ Layer: OR shop IS NOT NULL OR leisure IS NOT NULL OR landuse IN ('reservoir', 'basin', 'recreation_ground', 'village_green', 'quarry', 'vineyard', 'orchard', 'cemetery', 'residential', - 'garages', 'meadow', 'grass', 'allotments', 'forest', 'farmyard', 'farm', 'farmland', 'greenhouse_horticulture', + 'garages', 'meadow', 'grass', 'allotments', 'forest', 'farmyard', 'farmland', 'greenhouse_horticulture', 'retail', 'industrial', 'railway', 'commercial', 'brownfield', 'landfill', 'construction', 'military') OR man_made IN ('lighthouse', 'windmill', 'mast', 'water_tower', 'cross', 'obelisk') OR "natural" IS NOT NULL From e86d139498cf204a1ef346e321119ff7e5b09b44 Mon Sep 17 00:00:00 2001 From: Richard Fairhurst Date: Wed, 8 Feb 2017 08:29:45 +0000 Subject: [PATCH 07/23] Fix tyop --- CARTOGRAPHY.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CARTOGRAPHY.md b/CARTOGRAPHY.md index e93597c8fd..68543ed2f2 100644 --- a/CARTOGRAPHY.md +++ b/CARTOGRAPHY.md @@ -18,7 +18,7 @@ This style has multiple purposes: * It's an important feedback mechanism for mappers to validate their edits and helps to prevent unfavorable fragmentation of tag use. * It's a major part of the public face of OpenStreetMap, for many people the map on osm.org rendered with this style _is_ OpenStreetMap. * It's used in many map applications as a general purpose map. -* It's an examplar stylesheet for rendering OSM data. +* It's an exemplar stylesheet for rendering OSM data. There is no ranking of these purposes. To allow serving all of them and to avoid satisfying only some at the cost of the others the following main goals From b6b3bdf880f3fce63b4e2d4af7e7cac9410c0adb Mon Sep 17 00:00:00 2001 From: imagico Date: Sat, 18 Feb 2017 12:38:35 +0100 Subject: [PATCH 08/23] changing pattern for wetland=fen and adding base color --- landcover.mss | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/landcover.mss b/landcover.mss index 0d11dcf827..d0dd04cfdd 100644 --- a/landcover.mss +++ b/landcover.mss @@ -454,6 +454,7 @@ } [feature = 'wetland_wet_meadow'], + [feature = 'wetland_fen'], [feature = 'wetland_marsh'] { [zoom >= 10] { polygon-fill: @grass; @@ -586,8 +587,7 @@ [zoom >= 14] { [int_wetland = 'marsh'], [int_wetland = 'saltmarsh'], - [int_wetland = 'wet_meadow'], - [int_wetland = 'fen'] { + [int_wetland = 'wet_meadow'] { polygon-pattern-file: url('symbols/wetland_marsh.png'); polygon-pattern-alignment: global; } @@ -604,6 +604,7 @@ polygon-pattern-alignment: global; } [int_wetland = 'bog'], + [int_wetland = 'fen'], [int_wetland = 'string_bog'] { polygon-pattern-file: url('symbols/wetland_bog.png'); polygon-pattern-alignment: global; From 0998cdc284fc32b75bff245b7795fbafe5072819 Mon Sep 17 00:00:00 2001 From: imagico Date: Sat, 18 Feb 2017 13:51:52 +0100 Subject: [PATCH 09/23] better outline color for societal amenities, adding outline for stadium --- landcover.mss | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/landcover.mss b/landcover.mss index 0d11dcf827..db0b06a105 100644 --- a/landcover.mss +++ b/landcover.mss @@ -474,7 +474,7 @@ polygon-fill: @societal_amenities; [zoom >= 13] { line-width: 0.3; - line-color: brown; + line-color: darken(@societal_amenities, 35%); } } [way_pixels >= 4] { polygon-gamma: 0.75; } @@ -534,6 +534,10 @@ polygon-fill: @stadium; [way_pixels >= 4] { polygon-gamma: 0.75; } [way_pixels >= 64] { polygon-gamma: 0.3; } + [zoom >= 13] { + line-width: 0.3; + line-color: darken(@stadium, 35%); + } } } From f9c77cfcbc07174c85c1f959e9095ec73c5bf4bc Mon Sep 17 00:00:00 2001 From: imagico Date: Sun, 19 Feb 2017 21:40:07 +0100 Subject: [PATCH 10/23] removing waterway=canal area rendering --- project.mml | 2 +- water.mss | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/project.mml b/project.mml index 33e487d27c..81af171485 100644 --- a/project.mml +++ b/project.mml @@ -241,7 +241,7 @@ Layer: way_area/NULLIF(!pixel_width!::real*!pixel_height!::real,0) AS way_pixels FROM planet_osm_polygon WHERE - (waterway IN ('dock', 'riverbank', 'canal') + (waterway IN ('dock', 'riverbank') OR landuse IN ('reservoir', 'basin') OR "natural" IN ('water', 'glacier')) AND building IS NULL diff --git a/water.mss b/water.mss index f4f2d6c4a9..c4a0e3de8b 100644 --- a/water.mss +++ b/water.mss @@ -25,8 +25,7 @@ } } - [waterway = 'dock'], - [waterway = 'canal'] { + [waterway = 'dock'] { [zoom >= 9]::waterway { polygon-fill: @water-color; [way_pixels >= 4] { From 8e6a8c306f00653a0a75206270d1b487661d524b Mon Sep 17 00:00:00 2001 From: Lukas Sommer Date: Wed, 22 Feb 2017 20:40:29 +0000 Subject: [PATCH 11/23] Typography for roads.mss --- roads.mss | 70 ++++++++++++++++++++++++++++++++++--------------------- 1 file changed, 43 insertions(+), 27 deletions(-) diff --git a/roads.mss b/roads.mss index 6e638beab8..4ffa313d1c 100644 --- a/roads.mss +++ b/roads.mss @@ -267,9 +267,14 @@ @track-oneway-arrow-color: darken(@track-fill, 15%); @bridleway-oneway-arrow-color: darken(@track-fill, 10%); -@shield-size: 9; -@shield-size-z16: 10; -@shield-size-z18: 11; +// Shield’s line wrap is based on OpenStreetMap data and not on line-wrap-width, +// but lines are typically rather short, so we use narrow line spacing. +@shield-size: 10; +@shield-line-spacing: -1.50; // -0.15 em +@shield-size-z16: 11; +@shield-line-spacing-z16: -1.65; // -0.15 em +@shield-size-z18: 12; +@shield-line-spacing-z18: -1.80; // -0.15 em @shield-spacing: 760; @shield-min-distance: 40; @shield-font: @book-fonts; @@ -2397,19 +2402,21 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ ref/text-halo-radius: @standard-halo-radius * 1.5; [zoom >= 12] { name/text-name: "[name]"; - name/text-size: 9; + name/text-size: 10; name/text-fill: @junction-text-color; - name/text-dy: -9; + name/text-dy: -10; name/text-face-name: @oblique-fonts; name/text-halo-radius: @standard-halo-radius; name/text-wrap-character: ";"; - name/text-wrap-width: 2; + name/text-wrap-width: 2; // effectively break after every wrap character + name/text-line-spacing: -1.5; // -0.15 em name/text-min-distance: 2; } [zoom >= 15] { - ref/text-size: 12; + ref/text-size: 11; name/text-size: 11; - name/text-dy: -10; + name/text-dy: -11; + name/text-line-spacing: -1.65; // -0.15 em } } } @@ -2423,10 +2430,12 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ text-face-name: @book-fonts; text-halo-radius: @standard-halo-radius; text-halo-fill: @standard-halo-fill; - text-wrap-width: 30; + text-wrap-width: 30; // 3.0 em + text-line-spacing: -1.5; // -0.15 em text-min-distance: 2; [zoom >= 17] { text-size: 11; + text-line-spacing: -1.65; // -0.15 em /* Offset name on traffic_signals on zoomlevels where they are displayed in order not to hide the text */ [highway = 'traffic_signals'] { @@ -2441,7 +2450,9 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ [man_made = 'bridge'] { [zoom >= 12][way_pixels > 62.5] { text-name: "[name]"; - text-size: 8; + text-size: 10; + text-wrap-width: 30; // 3 em + text-line-spacing: -1.2; // -0.15 em text-fill: black; text-face-name: @book-fonts; text-halo-radius: @standard-halo-radius; @@ -2450,17 +2461,25 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ text-wrap-width: 30; text-placement: interior; [way_pixels > 250] { - text-size: 9; + text-size: 11; + text-wrap-width: 33; // 3 em + text-line-spacing: -1.35; // -0.15 em } [way_pixels > 1000] { - text-size: 11; + text-size: 12; + text-wrap-width: 36; // 3 em + text-line-spacing: -1.65; // -0.15 em text-halo-radius: @standard-halo-radius * 1.5; } [way_pixels > 4000] { - text-size: 12; + text-size: 13; + text-wrap-width: 39; // 3 em + text-line-spacing: -1.80; // -0.15 em } [way_pixels > 16000] { - text-size: 13; + text-size: 14; + text-wrap-width: 42; // 3 em + text-line-spacing: -1.95; // -0.15 em text-halo-radius: 2; } } @@ -2589,6 +2608,7 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ [highway = 'secondary'][zoom >= 12] { shield-name: "[refs]"; shield-size: @shield-size; + shield-line-spacing: @shield-line-spacing; shield-placement: line; shield-spacing: @shield-spacing; shield-min-distance: @shield-min-distance; @@ -2626,12 +2646,15 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ [zoom >= 13] { shield-name: "[refs]"; shield-size: @shield-size; + shield-line-spacing: @shield-line-spacing; [zoom >= 16] { shield-size: @shield-size-z16; + shield-line-spacing: @shield-line-spacing-z16; } [zoom >= 18] { shield-size: @shield-size-z18; + shield-line-spacing: @shield-line-spacing-z18; } shield-placement: line; @@ -2910,19 +2933,12 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ #roads-area-text-name { [way_pixels > 3000], [zoom >= 17] { - [zoom >= 15] { - text-name: "[name]"; - text-size: 8; - text-face-name: @book-fonts; - text-placement: interior; - text-wrap-width: 30; - } - [zoom >= 16] { - text-size: 9; - } - [zoom >= 17] { - text-size: 11; - } + text-name: "[name]"; + text-size: 11; + text-face-name: @book-fonts; + text-placement: interior; + text-wrap-width: 30; // 2.7 em + text-line-spacing: -1.7; // -0.15 em } } From 00b4fd84dcedbd9fd8f6594f5b47def84ca6530b Mon Sep 17 00:00:00 2001 From: jnachtigall Date: Thu, 16 Mar 2017 10:39:40 +0100 Subject: [PATCH 12/23] Fixed link to openstreetmap-carto-de repo --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 7b63a212f8..82d0a2994e 100644 --- a/README.md +++ b/README.md @@ -89,7 +89,7 @@ maps using Mapnik, many based on this project. Some alternatives are: * [OSM-Bright](https://github.com/mapbox/osm-bright) * [XML-based stylesheets](https://trac.openstreetmap.org/browser/subversion/applications/rendering/mapnik) * [osmfr-cartocss](https://github.com/cquest/osmfr-cartocss) -* [openstreetmap-carto-german](https://github.com/woodpeck/openstreetmap-carto-german) +* [openstreetmap-carto-german](https://github.com/giggls/openstreetmap-carto-de) # Maintainers From 2d9ee3efb0ef28e53cd403af8983bb18ef5625a7 Mon Sep 17 00:00:00 2001 From: nebulon42 Date: Wed, 22 Mar 2017 21:27:45 +0100 Subject: [PATCH 13/23] add rendering for aerialway=mixed_lift (same as gondola), fixes #347 --- aerialways.mss | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/aerialways.mss b/aerialways.mss index 7cd915416c..0a0e5cf7c0 100644 --- a/aerialways.mss +++ b/aerialways.mss @@ -1,6 +1,7 @@ #aerialways { [aerialway = 'cable_car'], - [aerialway = 'gondola'] { + [aerialway = 'gondola'], + [aerialway = 'mixed_lift'] { [zoom >= 12] { line/line-width: 1; line/line-join: round; From 79fe434d010b1f0da35f6c07896b0e0cddc10522 Mon Sep 17 00:00:00 2001 From: nebulon42 Date: Wed, 22 Mar 2017 22:52:47 +0100 Subject: [PATCH 14/23] fix minzoom for waterway bridges, fixes #2562 --- project.mml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/project.mml b/project.mml index 93237ca7a3..340d31f0b2 100644 --- a/project.mml +++ b/project.mml @@ -1124,7 +1124,7 @@ Layer: ORDER BY z_order ) AS waterway_bridges properties: - minzoom: 15 + minzoom: 12 - id: bridges name: bridges class: bridges-fill bridges-casing access From 1f6fa0d3a82992b3015b447d79b23361733675dc Mon Sep 17 00:00:00 2001 From: nebulon42 Date: Thu, 23 Mar 2017 22:39:30 +0100 Subject: [PATCH 15/23] remove redundant tertiary_link from road names --- roads.mss | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/roads.mss b/roads.mss index 4ffa313d1c..911619c1c4 100644 --- a/roads.mss +++ b/roads.mss @@ -2818,8 +2818,7 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ text-size: 12; } } - [highway = 'tertiary'], - [highway = 'tertiary_link'] { + [highway = 'tertiary'] { [zoom >= 14] { text-name: "[name]"; text-size: 9; From 1a6638205a1beee0839ca5ddabaa2b3a71404714 Mon Sep 17 00:00:00 2001 From: Lukas Sommer Date: Sat, 25 Mar 2017 18:34:49 +0000 Subject: [PATCH 16/23] Typography for addressing.mss --- addressing.mss | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/addressing.mss b/addressing.mss index 7a525c4b49..ccc8ff57f8 100644 --- a/addressing.mss +++ b/addressing.mss @@ -21,14 +21,17 @@ } text-placement: interior; text-min-distance: 1; - text-wrap-width: 20; text-face-name: @book-fonts; text-fill: @address-color; text-halo-radius: @standard-halo-radius; text-halo-fill: @standard-halo-fill; text-size: 10; + text-wrap-width: 20; // 2.0 em + text-line-spacing: -1.5; // -0.15 em [zoom >= 20] { text-size: 11; + text-wrap-width: 22; // 2.0 em + text-line-spacing: -1.65; // -0.15 em } } } @@ -41,11 +44,12 @@ no official postal addresses) */ [zoom >= 17] { text-name: "[name]"; text-placement: interior; - text-wrap-width: 20; text-face-name: @book-fonts; text-fill: #444; text-halo-radius: @standard-halo-radius; text-halo-fill: @standard-halo-fill; text-size: 11; + text-wrap-width: 22; // 2.0 em + text-line-spacing: -1.65; // -0.15 em } } From 261f50e4e2e026e468e56cb64d4bf090a20b1c23 Mon Sep 17 00:00:00 2001 From: Lukas Sommer Date: Sat, 25 Mar 2017 22:46:41 +0000 Subject: [PATCH 17/23] Typography for water.mss --- water.mss | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/water.mss b/water.mss index c4a0e3de8b..c3b26fe298 100644 --- a/water.mss +++ b/water.mss @@ -2,13 +2,6 @@ @glacier: #ddecec; @glacier-line: #9cf; -@water-font-size: 10; -@water-font-size-big: 12; -@water-font-size-bigger: 15; -@water-wrap-width-size: 25; -@water-wrap-width-size-big: 35; -@water-wrap-width-size-bigger: 45; - #water-areas { [natural = 'glacier']::natural { [zoom >= 6] { @@ -291,15 +284,23 @@ [zoom >= 10][way_pixels > 3000], [zoom >= 17] { text-name: "[name]"; - text-size: @water-font-size; - text-wrap-width: @water-wrap-width-size; + text-size: 10; + text-wrap-width: 25; // 2.5 em + text-line-spacing: -1.5; // -0.15 em [way_pixels > 12000] { - text-size: @water-font-size-big; - text-wrap-width: @water-wrap-width-size-big; + text-size: 12; + text-wrap-width: 37; // 3.1 em + text-line-spacing: -1.6; // -0.13 em } [way_pixels > 48000] { - text-size: @water-font-size-bigger; - text-wrap-width: @water-wrap-width-size-bigger; + text-size: 15; + text-wrap-width: 59; // 3.9 em + text-line-spacing: -1.5; // -0.10 em + } + [way_pixels > 192000] { + text-size: 19; + text-wrap-width: 95; // 5.0 em + text-line-spacing: -0.95; // -0.05 em } text-fill: @water-text; text-face-name: @oblique-fonts; From e49b820c6d1b95f0c2b36850a016fa69b49df7ce Mon Sep 17 00:00:00 2001 From: nebulon42 Date: Thu, 23 Mar 2017 20:13:08 +0100 Subject: [PATCH 18/23] replace text-dy logic with combined name and ref rendering for motorway junctions --- roads.mss | 37 +++++++++++++++++-------------------- 1 file changed, 17 insertions(+), 20 deletions(-) diff --git a/roads.mss b/roads.mss index 4ffa313d1c..ed59f4b64b 100644 --- a/roads.mss +++ b/roads.mss @@ -2394,29 +2394,26 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ #junctions { [highway = 'motorway_junction'] { [zoom >= 11] { - ref/text-name: "[ref]"; - ref/text-size: 10; - ref/text-fill: @junction-text-color; - ref/text-min-distance: 2; - ref/text-face-name: @oblique-fonts; - ref/text-halo-radius: @standard-halo-radius * 1.5; + text-name: "[ref]"; + text-size: 10; + text-fill: @junction-text-color; + text-min-distance: 2; + text-face-name: @oblique-fonts; + text-halo-radius: @standard-halo-radius; + text-wrap-character: ";"; + text-wrap-width: 2; // effectively break after every wrap character + text-line-spacing: -1.5; // -0.15 em [zoom >= 12] { - name/text-name: "[name]"; - name/text-size: 10; - name/text-fill: @junction-text-color; - name/text-dy: -10; - name/text-face-name: @oblique-fonts; - name/text-halo-radius: @standard-halo-radius; - name/text-wrap-character: ";"; - name/text-wrap-width: 2; // effectively break after every wrap character - name/text-line-spacing: -1.5; // -0.15 em - name/text-min-distance: 2; + ["name" != null]["ref" = null] { + text-name: "[name]"; + } + ["name" != null]["ref" != null] { + text-name: [name] + "\n" + [ref]; + } } [zoom >= 15] { - ref/text-size: 11; - name/text-size: 11; - name/text-dy: -11; - name/text-line-spacing: -1.65; // -0.15 em + text-size: 11; + text-line-spacing: -1.65; // -0.15 em } } } From 702fcb5a9bc3dd541ebadd039bc48258f0dfaba0 Mon Sep 17 00:00:00 2001 From: nebulon42 Date: Thu, 23 Mar 2017 23:16:44 +0100 Subject: [PATCH 19/23] use parameters of road type for text rendering of roads under construction, fixes #2477 --- project.mml | 2 +- roads.mss | 60 ++++++++++++++++++++++++++++++++--------------------- 2 files changed, 37 insertions(+), 25 deletions(-) diff --git a/project.mml b/project.mml index 340d31f0b2..0a3a3dc964 100644 --- a/project.mml +++ b/project.mml @@ -1953,7 +1953,7 @@ Layer: way, CASE WHEN substr(highway, length(highway)-3, 4) = 'link' THEN substr(highway, 0, length(highway)-4) ELSE highway END, CASE WHEN (tunnel = 'yes' OR tunnel = 'building_passage' OR covered = 'yes') THEN 'yes' ELSE 'no' END AS tunnel, - CASE WHEN construction IN ('service', 'footway', 'cycleway', 'bridleway', 'path', 'track') THEN 'yes' ELSE 'no' END AS int_construction_minor, + construction, name, CASE WHEN oneway IN ('yes', '-1') THEN oneway diff --git a/roads.mss b/roads.mss index 7a8bd3be8f..08d6dd82e2 100644 --- a/roads.mss +++ b/roads.mss @@ -2761,7 +2761,10 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ #roads-text-name { [highway = 'motorway'], [highway = 'trunk'], - [highway = 'primary'] { + [highway = 'primary'], + [highway = 'construction'][construction = 'motorway'], + [highway = 'construction'][construction = 'trunk'], + [highway = 'construction'][construction = 'primary'] { [zoom >= 13] { text-name: "[name]"; text-size: 8; @@ -2790,7 +2793,8 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ text-size: 12; } } - [highway = 'secondary'] { + [highway = 'secondary'], + [highway = 'construction'][construction = 'secondary'] { [zoom >= 13] { text-name: "[name]"; text-size: 8; @@ -2815,7 +2819,8 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ text-size: 12; } } - [highway = 'tertiary'] { + [highway = 'tertiary'], + [highway = 'construction'][construction = 'tertiary'] { [zoom >= 14] { text-name: "[name]"; text-size: 9; @@ -2834,29 +2839,32 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ text-size: 12; } } - [highway = 'construction'] { - [int_construction_minor = 'no'][zoom >= 13], - [int_construction_minor = 'yes'][zoom >= 14] { - text-name: "[name]"; - text-size: 9; - text-fill: black; - text-spacing: 300; - text-clip: false; - text-placement: line; - text-halo-radius: @standard-halo-radius; - text-halo-fill: @standard-halo-fill; - text-face-name: @book-fonts; - [zoom >= 17] { - text-size: 11; - } - [zoom >= 19] { - text-size: 12; - } + [highway = 'construction'][construction = null][zoom >= 16] { + text-name: "[name]"; + text-size: 9; + text-fill: black; + text-spacing: 300; + text-clip: false; + text-placement: line; + text-halo-radius: @standard-halo-radius; + text-halo-fill: @standard-halo-fill; + text-face-name: @book-fonts; + + [zoom >= 17] { + text-size: 11; + text-spacing: 400; + } + [zoom >= 19] { + text-size: 12; + text-spacing: 400; } } [highway = 'residential'], [highway = 'unclassified'], - [highway = 'road'] { + [highway = 'road'], + [highway = 'construction'][construction = 'residential'], + [highway = 'construction'][construction = 'unclassified'], + [highway = 'construction'][construction = 'road'] { [zoom >= 15] { text-name: "[name]"; text-size: 8; @@ -2882,7 +2890,9 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ } [highway = 'raceway'], - [highway = 'service'] { + [highway = 'service'], + [highway = 'construction'][construction = 'raceway'], + [highway = 'construction'][construction = 'service'] { [zoom >= 16] { text-name: "[name]"; text-size: 9; @@ -2901,7 +2911,9 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ } [highway = 'living_street'], - [highway = 'pedestrian'] { + [highway = 'pedestrian'], + [highway = 'construction'][construction = 'living_street'], + [highway = 'construction'][construction = 'pedestrian'] { [zoom >= 15] { text-name: "[name]"; text-size: 8; From c702b2ab9168a234878592b973727a181069bd29 Mon Sep 17 00:00:00 2001 From: Lukas Sommer Date: Sun, 9 Apr 2017 09:43:31 +0000 Subject: [PATCH 20/23] Documentation update --- INSTALL.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 9077eeceb1..da0adefe03 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -43,11 +43,19 @@ The repeated www.naturalearthdata.com in the Natural Earth shapefiles is correct Put these shapefiles at `path/to/openstreetmap-carto/data`. ## Fonts -The stylesheet uses Noto Sans, an openly licensed font from Google with support for multiple scripts. The "UI" version is used where available, with its vertical metrics which fit better with Latin text. Other fonts from the Noto family are used for some other languages. +The stylesheet uses Noto, an openly licensed font from Google with support for multiple scripts. The “UI” version is used where available, with its vertical metrics which fit better with Latin text. The stylesheet uses Noto’s “Sans” style where available. If not available, this stylesheet uses another appropriate style of the Noto family. DejaVu Sans is used as an optional fallback font for systems without Noto Sans. If all the Noto fonts are installed, it should never be used. -Unifont is used as a last resort fallback, with it's excellent coverage, common presence on machines, and ugly look. +Unifont is used as a last resort fallback, with it’s excellent coverage, common presence on machines, and ugly look. + +### Download + +Noto: http://www.google.com/get/noto/ and http://github.com/googlei18n?utf8=%E2%9C%93&q=noto +DejaVu: http://dejavu-fonts.org/ +Unifont: http://unifoundry.com/ + +### Download on Ubuntu/Debian On Ubuntu 16.04 or Debian Testing you can install the required fonts except Noto Emoji Regular with From e216c08d33d2dda685fdc63fe4bece6fa7d74c6e Mon Sep 17 00:00:00 2001 From: Lukas Sommer Date: Sat, 15 Apr 2017 10:38:13 +0000 Subject: [PATCH 21/23] Address requested changes --- INSTALL.md | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index da0adefe03..c9e1803db4 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -43,21 +43,15 @@ The repeated www.naturalearthdata.com in the Natural Earth shapefiles is correct Put these shapefiles at `path/to/openstreetmap-carto/data`. ## Fonts -The stylesheet uses Noto, an openly licensed font from Google with support for multiple scripts. The “UI” version is used where available, with its vertical metrics which fit better with Latin text. The stylesheet uses Noto’s “Sans” style where available. If not available, this stylesheet uses another appropriate style of the Noto family. +The stylesheet uses Noto, an openly licensed font family from Google with support for multiple scripts. The stylesheet uses Noto's "Sans" style where available. If not available, this stylesheet uses another appropriate style of the Noto family. The "UI" version is used where available, with its vertical metrics which fit better with Latin text. DejaVu Sans is used as an optional fallback font for systems without Noto Sans. If all the Noto fonts are installed, it should never be used. -Unifont is used as a last resort fallback, with it’s excellent coverage, common presence on machines, and ugly look. +Unifont is used as a last resort fallback, with it's excellent coverage, common presence on machines, and ugly look. -### Download +### Installation on Ubuntu/Debian -Noto: http://www.google.com/get/noto/ and http://github.com/googlei18n?utf8=%E2%9C%93&q=noto -DejaVu: http://dejavu-fonts.org/ -Unifont: http://unifoundry.com/ - -### Download on Ubuntu/Debian - -On Ubuntu 16.04 or Debian Testing you can install the required fonts except Noto Emoji Regular with +On Ubuntu 16.04 or Debian Testing you can download and install the required fonts except Noto Emoji Regular with ``` sudo apt-get install fonts-noto-cjk fonts-noto-hinted fonts-noto-unhinted ttf-unifont @@ -69,6 +63,16 @@ It might be useful to have a more recent version of the fonts for [rare non-lati DejaVu is packaged as `fonts-dejavu-core`. +### Installation on other operation systems + +The fonts can be downloaded here: + +* [Noto homepage](http://www.google.com/get/noto/) and [Noto github repositories](http://github.com/googlei18n?utf8=%E2%9C%93&q=noto) +* [DejaVu homepage](http://dejavu-fonts.org/) +* [Unifont homepage](http://unifoundry.com/) + +After the download, you have to install the font files in the usual way of your operation system. + ### Non-latin scripts For proper rendering of non-latin scripts, particularly those with complicated diacritics and tone marks the requirements are From f5f874f9b9fc341d3898b153729fc20023f6fdb0 Mon Sep 17 00:00:00 2001 From: Paul Norman Date: Sat, 15 Apr 2017 23:25:44 -0700 Subject: [PATCH 22/23] Add to changelog --- CHANGELOG.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index bce69672c5..dc56552d37 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,12 @@ ## [Unreleased](https://github.com/gravitystorm/openstreetmap-carto/compare/v3.1.0...master) +### Changes +- Render aeroway terminal buildings like other buildings +- Removed rendering of `landuse=farm` +- Added rendering for arts centre, fitness centre, plant nursery, mixed lift aerialways +- Rendering for fens changed +- Typography for point road-related features, addresses, and water features changed +- Removed rendering of `waterway=canal` as an area +- Take text properties of roads under construction from the type of road they will be ## [v3.1.0](https://github.com/gravitystorm/openstreetmap-carto/compare/v3.0.1...v3.1.0) - 2017-01-28 ### Changes From 4e6887f054077b3c4804cfbb27532f8d818c6b46 Mon Sep 17 00:00:00 2001 From: Paul Norman Date: Mon, 17 Apr 2017 15:24:35 -0700 Subject: [PATCH 23/23] Update changelog for v3.2.0 --- CHANGELOG.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index dc56552d37..1cc9ce6139 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,6 @@ -## [Unreleased](https://github.com/gravitystorm/openstreetmap-carto/compare/v3.1.0...master) +## [Unreleased](https://github.com/gravitystorm/openstreetmap-carto/compare/v3.2.0...master) + +## [v3.2.0](https://github.com/gravitystorm/openstreetmap-carto/compare/v3.1.0...v3.2.0) - 2017-04-17 ### Changes - Render aeroway terminal buildings like other buildings - Removed rendering of `landuse=farm`