diff --git a/INSTALL.md b/INSTALL.md index e52a8cf1bd..d58eb7cdc9 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -80,4 +80,8 @@ If you aren't using TileMill, you can compile the CartoCSS stylesheets into Mapn * curl, unzip for downloading and decompressing files * shapeindex (a companion utility to Mapnik found in the mapnik-utils package) for indexing downloaded shapefiles +### Development dependencies + +* Python and Ruby to run helper scripts * [PyYAML](http://pyyaml.org/wiki/PyYAML) if editing the MML (layer definition) file (packaged as `python-yaml` on Ubuntu, or installed with `pip install pyyaml`) +* [Color Math](https://github.com/gtaylor/python-colormath) and [numpy](http://www.numpy.org/) if running generate_road_colors.py helper script (may be obtained with `pip install colormath numpy`) \ No newline at end of file diff --git a/preview.png b/preview.png index fb53b01ea7..f2667cd691 100644 Binary files a/preview.png and b/preview.png differ diff --git a/project.mml b/project.mml index f6598b0c3a..f32e1c6fcf 100644 --- a/project.mml +++ b/project.mml @@ -601,7 +601,7 @@ ], "properties": { "group-by": "layernotnull", - "minzoom": 10 + "minzoom": 9 }, "advanced": {} }, @@ -835,7 +835,7 @@ ], "id": "roads-casing", "properties": { - "minzoom": 10 + "minzoom": 9 }, "advanced": {} }, @@ -1018,7 +1018,7 @@ ], "properties": { "group-by": "layernotnull", - "minzoom": 10 + "minzoom": 9 }, "advanced": {} }, diff --git a/project.yaml b/project.yaml index 87033322a1..64bb9e8f25 100644 --- a/project.yaml +++ b/project.yaml @@ -607,7 +607,7 @@ Layer: ) AS tunnels properties: group-by: "layernotnull" - minzoom: 10 + minzoom: 9 advanced: {} - id: "citywalls" name: "citywalls" @@ -890,7 +890,7 @@ Layer: CASE WHEN int_surface IN ('unpaved') THEN 0 ELSE 2 END ) AS roads_casing properties: - minzoom: 10 + minzoom: 9 advanced: {} - id: "highway-area-fill" name: "highway-area-fill" @@ -1275,7 +1275,7 @@ Layer: ) AS bridges properties: group-by: "layernotnull" - minzoom: 10 + minzoom: 9 advanced: {} - id: "guideways" name: "guideways" diff --git a/roads.mss b/roads.mss index 98c285140b..a7a0cd53cd 100644 --- a/roads.mss +++ b/roads.mss @@ -1,15 +1,15 @@ /* For the main linear features, such as roads and railways. */ -@motorway-fill: #89a4cb; -@trunk-fill: #94d494; -@trunk-fill-alternative: #97d397; -@primary-fill: #dd9f9f; -@secondary-fill: #f9d6aa; -@tertiary-fill: #f8f8ba; +//road colors for major roads were generated with scripts/generate_road_colors.py +@motorway-fill: #e892a2; // Lch(70,35,10), error 0.5 +@trunk-fill: #f9b29c; // Lch(79,33,42), error 0.7 +@primary-fill: #fcd6a4; // Lch(88,31,74), error 1.7 +@secondary-fill: #f7fabf; // Lch(97,29,106), error 1.7 +@tertiary-fill: #ffffff; @residential-fill: #ffffff; @service-fill: @residential-fill; -@living-street-fill: #ccc; -@pedestrian-fill: #ededed; +@living-street-fill: #ededed; +@pedestrian-fill: #dddde8; @raceway-fill: pink; @road-fill: #ddd; @path-fill: black; @@ -23,16 +23,22 @@ @taxiway-fill: @aeroway-fill; @helipad-fill: @aeroway-fill; +@motorway-low-zoom: #e66e89; // Lch(62,50,10), error 0.7 +@trunk-low-zoom: #fa9476; // Lch(72,50,42), error 0.8 +@primary-low-zoom: #f8c171; // Lch(82,50,74), error 2.1 +@secondary-low-zoom: #e6ef89; // Lch(92,50,106), error 2.2 + @default-casing: white; -@motorway-casing: #7788a1; -@trunk-casing: #7eae7e; -@primary-casing: #c57b7e; -@secondary-casing: #cca16a; -@tertiary-casing: #c6c68a; +@motorway-casing: #dc2a67; // Lch(50,70,10), error 1.1 +@trunk-casing: #c84e2f; // Lch(50,65,42), error 0.7 +@primary-casing: #a06b00; // Lch(50,60,74), error 1.6 +@secondary-casing: #707d05; // Lch(50,55,106), error 1.9 +@tertiary-casing: #8f8f8f; @residential-casing: #bbb; +@road-casing: @residential-casing; @service-casing: @residential-casing; -@living-street-casing: #999; -@pedestrian-casing: @residential-casing; +@living-street-casing: @residential-casing; +@pedestrian-casing: #999; @path-casing: @default-casing; @footway-casing: @default-casing; @steps-casing: @default-casing; @@ -40,16 +46,24 @@ @bridleway-casing: @default-casing; @track-casing: @default-casing; +@motorway-low-zoom-casing: #c24e6b; // Lch(50,50,10), error 0.8 +@trunk-low-zoom-casing: #cf6649; // Lch(56,55,42), error 0.9 +@primary-low-zoom-casing: #c38a27; // Lch(62,60,74), error 2.1 +@secondary-low-zoom-casing: #9eae23; // Lch(68,65,106), error 2.3 + +@unimportant-road: @residential-casing; + @residential-construction: #aaa; @service-construction: #aaa; @destination-marking: #c2e0ff; @private-marking: #efa9a9; +@private-marking-for-red: #C26363; @tunnel-casing: grey; @bridge-casing: black; -@motorway-tunnel-fill: lighten(@motorway-fill, 25%); +@motorway-tunnel-fill: lighten(@motorway-fill, 10%); @trunk-tunnel-fill: lighten(@trunk-fill, 10%); @primary-tunnel-fill: lighten(@primary-fill, 10%); @secondary-tunnel-fill: lighten(@secondary-fill, 5%); @@ -57,18 +71,43 @@ @residential-tunnel-fill: darken(@residential-fill, 5%); @living-street-tunnel-fill: lighten(@living-street-fill, 10%); +@motorway-width-z5: 0.5; +@trunk-width-z5: 0.4; + +@motorway-width-z7: 0.8; +@trunk-width-z7: 0.6; + +@motorway-width-z8: 1; +@trunk-width-z8: 1; +@primary-width-z8: 1; + +@motorway-width-z9: 1.4; +@trunk-width-z9: 1.4; +@primary-width-z9: 1.4; +@secondary-width-z9: 1; + +@motorway-width-z10: 1.9; +@trunk-width-z10: 1.9; +@primary-width-z10: 1.8; +@secondary-width-z10: 1; + +@motorway-width-z11: 2.0; +@trunk-width-z11: 1.9; +@primary-width-z11: 1.8; +@secondary-width-z11: 1; + @motorway-width-z12: 3.5; @motorway-link-width-z12: 1.5; @trunk-width-z12: 3.5; @primary-width-z12: 3.5; -@secondary-width-z12: 3; -@tertiary-width-z12: 3; - -@motorway-width-z13: 7; -@motorway-link-width-z13: 4.5; -@trunk-width-z13: 7; -@primary-width-z13: 7; -@secondary-width-z13: 7; +@secondary-width-z12: 3.5; +@tertiary-width-z12: 2.5; + +@motorway-width-z13: 6; +@motorway-link-width-z13: 4; +@trunk-width-z13: 6; +@primary-width-z13: 5; +@secondary-width-z13: 5; @tertiary-width-z13: 5; @residential-width-z13: 3; @living-street-width-z13: 2; @@ -82,21 +121,23 @@ @track-grade2-width-z13: 0.5; @steps-width-z13: 0.7; -@tertiary-width-z14: 7.5; -@residential-width-z14: 4.5; -@living-street-width-z14: 4; -@pedestrian-width-z14: 4; -@service-width-z14: 2.5; +@secondary-width-z14: 5; +@tertiary-width-z14: 5; +@residential-width-z14: 3; +@living-street-width-z14: 3; +@pedestrian-width-z14: 3; +@road-width-z14: 2; +@service-width-z14: 2; -@motorway-width-z15: 12.8; +@motorway-width-z15: 10; @motorway-link-width-z15: 7.8; -@trunk-width-z15: 12.8; -@primary-width-z15: 12.8; -@secondary-width-z15: 12.8; -@tertiary-width-z15: 11.2; -@residential-width-z15: 8.3; -@living-street-width-z15: 6; -@pedestrian-width-z15: 6; +@trunk-width-z15: 10; +@primary-width-z15: 10; +@secondary-width-z15: 9; +@tertiary-width-z15: 9; +@residential-width-z15: 5; +@living-street-width-z15: 5; +@pedestrian-width-z15: 5; @bridleway-width-z15: 1.2; @footway-width-z15: 1; @cycleway-width-z15: 0.9; @@ -106,24 +147,39 @@ @track-grade2-width-z15: 0.75; @steps-width-z15: 3; -@residential-width-z16: 11.2; -@living-street-width-z16: 9; -@pedestrian-width-z16: 9; -@service-width-z16: 6; -@minor-service-width-z16: 4; +@secondary-width-z16: 10; +@tertiary-width-z16: 10; +@residential-width-z16: 6; +@living-street-width-z16: 6; +@pedestrian-width-z16: 6; +@road-width-z16: 3.5; +@service-width-z16: 3.5; +@minor-service-width-z16: 2; @footway-width-z16: 1.3; @cycleway-width-z16: 0.9; @motorway-width-z17: 18; -@motorway-link-width-z17: 11.5; +@motorway-link-width-z17: 12; @trunk-width-z17: 18; @primary-width-z17: 18; @secondary-width-z17: 18; -@tertiary-width-z17: 15.5; -@residential-width-z17: 15.5; -@living-street-width-z17: 14; -@pedestrian-width-z17: 14; +@tertiary-width-z17: 18; +@residential-width-z17: 12; +@living-street-width-z17: 12; +@pedestrian-width-z17: 12; +@road-width-z17: 7; @service-width-z17: 7; +@minor-service-width-z17: 3.5; + +@motorway-width-z18: 20; +@motorway-link-width-z18: 12; +@trunk-width-z18: 20; +@primary-width-z18: 20; +@secondary-width-z18: 20; +@tertiary-width-z18: 20; +@road-width-z18: 8; +@service-width-z18: 8; +@minor-service-width-z18: 4.25; @footway-width-z18: 1.3; @cycleway-width-z18: 1; @@ -131,43 +187,109 @@ @footway-width-z19: 1.6; @cycleway-width-z19: 1.3; -@casing-width-z12: 0.5; + +@major-casing-width-z11: 0.3; + +@casing-width-z12: 0.1; +@secondary-casing-width-z12: 0.3; +@major-casing-width-z12: 0.5; + @casing-width-z13: 0.5; @residential-casing-width-z13: 0.5; -@casing-width-z14: 0.5; -@casing-width-z15: 0.7; -@casing-width-z16: 0.7; -@casing-width-z17: 1; +@secondary-casing-width-z13: 0.35; +@major-casing-width-z13: 0.5; + +@casing-width-z14: 0.55; +@secondary-casing-width-z14: 0.35; +@major-casing-width-z14: 0.6; + +@casing-width-z15: 0.6; +@secondary-casing-width-z15: 0.7; +@major-casing-width-z15: 0.7; -@bridge-casing-width-z12: 0.5; +@casing-width-z16: 0.6; +@secondary-casing-width-z16: 0.7; +@major-casing-width-z16: 0.7; + +@casing-width-z17: 0.8; +@secondary-casing-width-z17: 1; +@major-casing-width-z17: 1; + +@casing-width-z18: 0.8; +@secondary-casing-width-z18: 1; +@major-casing-width-z18: 1; + +@bridge-casing-width-z12: 0.1; +@major-bridge-casing-width-z12: 0.5; @bridge-casing-width-z13: 0.5; +@major-bridge-casing-width-z13: 0.5; @bridge-casing-width-z14: 0.5; +@major-bridge-casing-width-z14: 0.6; @bridge-casing-width-z15: 0.75; +@major-bridge-casing-width-z15: 0.75; @bridge-casing-width-z16: 0.75; -@bridge-casing-width-z17: 0.75; +@major-bridge-casing-width-z16: 0.75; +@bridge-casing-width-z17: 0.8; +@major-bridge-casing-width-z17: 1; +@bridge-casing-width-z18: 0.8; +@major-bridge-casing-width-z18: 1; @paths-background-width: 1; @paths-bridge-casing-width: 0.5; @paths-tunnel-casing-width: 1; -@oneway-arrow-color: #6c70d5; -@junction-text-color: #6666ff; +@oneway-arrow-color: #404040; +@junction-text-color: #960000; +@halo-color-for-minor-road: white; .roads-casing, .bridges-casing, .tunnels-casing { ::casing { + [zoom = 9][feature = 'highway_secondary'] { + line-color: @halo-color-for-minor-road; + line-width: 2.2; + line-opacity: 0.4; + line-join: round; + //Missing line-cap: round; is intentional. It would cause rendering glow multiple times in some places - what as result of partial transparency would cause differences in rendering + //Also, bridges - including bridge casings - are rendered on top of roads. Enabling line-cap: round would result in glow from bridges rendered on top of road around bridges. + } + [zoom = 10][feature = 'highway_secondary'], + [zoom = 11][feature = 'highway_secondary'] { + line-color: @halo-color-for-minor-road; + line-width: 2.7; + line-opacity: 0.4; + line-join: round; + //Missing line-cap: round; is intentional. It would cause rendering glow multiple times in some places - what as result of partial transparency would cause differences in rendering + //Also, bridges - including bridge casings - are rendered on top of roads. Enabling line-cap: round would result in glow from bridges rendered on top of road around bridges. + } + [zoom = 10][feature = 'highway_tertiary'], + [zoom = 11][feature = 'highway_tertiary'], + [zoom = 12][feature = 'highway_unclassified'] { + line-color: @halo-color-for-minor-road; + line-width: 2.2; + line-opacity: 0.3; + line-join: round; + //Missing line-cap: round; is intentional. It would cause rendering glow multiple times in some places - what as result of partial transparency would cause differences in rendering + //Also, bridges - including bridge casings are rendered on top of roads. Enabling line-cap: round would result in glow from bridges rendered on top of road around bridges. + } + [zoom >= 12] { [feature = 'highway_motorway'] { line-width: @motorway-width-z12; [zoom >= 13] { line-width: @motorway-width-z13; } [zoom >= 15] { line-width: @motorway-width-z15; } [zoom >= 17] { line-width: @motorway-width-z17; } + [zoom >= 18] { line-width: @motorway-width-z18; } [link = 'yes'] { line-width: @motorway-link-width-z12; [zoom >= 13] { line-width: @motorway-link-width-z13; } [zoom >= 15] { line-width: @motorway-link-width-z15; } [zoom >= 17] { line-width: @motorway-link-width-z17; } + [zoom >= 18] { line-width: @motorway-link-width-z18; } + } + line-color: @motorway-low-zoom-casing; + [zoom >= 13] { + line-color: @motorway-casing; } - line-color: @motorway-casing; .roads-casing { line-join: round; line-cap: round; @@ -184,11 +306,15 @@ [feature = 'highway_trunk'] { [zoom >= 12] { - line-color: @trunk-casing; + line-color: @trunk-low-zoom-casing; + [zoom >= 13] { + line-color: @trunk-casing; + } line-width: @trunk-width-z12; [zoom >= 13] { line-width: @trunk-width-z13; } [zoom >= 15] { line-width: @trunk-width-z15; } [zoom >= 17] { line-width: @trunk-width-z17; } + [zoom >= 18] { line-width: @trunk-width-z18; } .roads-casing { line-join: round; line-cap: round; @@ -205,11 +331,15 @@ [feature = 'highway_primary'] { [zoom >= 12] { - line-color: @primary-casing; + line-color: @primary-low-zoom-casing; + [zoom >= 13] { + line-color: @primary-casing; + } line-width: @primary-width-z12; [zoom >= 13] { line-width: @primary-width-z13; } [zoom >= 15] { line-width: @primary-width-z15; } [zoom >= 17] { line-width: @primary-width-z17; } + [zoom >= 18] { line-width: @primary-width-z18; } .roads-casing { line-join: round; line-cap: round; @@ -226,11 +356,17 @@ [feature = 'highway_secondary'] { [zoom >= 12] { - line-color: @secondary-casing; + line-color: @secondary-low-zoom-casing; + [zoom >= 13] { + line-color: @secondary-casing; + } line-width: @secondary-width-z12; [zoom >= 13] { line-width: @secondary-width-z13; } + [zoom >= 14] { line-width: @secondary-width-z14; } [zoom >= 15] { line-width: @secondary-width-z15; } + [zoom >= 16] { line-width: @secondary-width-z16; } [zoom >= 17] { line-width: @secondary-width-z17; } + [zoom >= 18] { line-width: @secondary-width-z18; } .roads-casing { line-join: round; line-cap: round; @@ -254,7 +390,9 @@ [zoom >= 13] { line-width: @tertiary-width-z13; } [zoom >= 14] { line-width: @tertiary-width-z14; } [zoom >= 15] { line-width: @tertiary-width-z15; } + [zoom >= 16] { line-width: @tertiary-width-z16; } [zoom >= 17] { line-width: @tertiary-width-z17; } + [zoom >= 18] { line-width: @tertiary-width-z18; } .roads-casing { line-join: round; line-cap: round; @@ -272,8 +410,7 @@ } [feature = 'highway_residential'], - [feature = 'highway_unclassified'], - [feature = 'highway_road'] { + [feature = 'highway_unclassified'] { [zoom >= 13] { line-color: @residential-casing; line-width: @residential-width-z13; @@ -297,6 +434,27 @@ } } + [feature = 'highway_road'] { + [zoom >= 14] { + line-color: @road-casing; + line-width: @road-width-z14; + [zoom >= 16] { line-width: @road-width-z16; } + [zoom >= 17] { line-width: @road-width-z17; } + [zoom >= 18] { line-width: @road-width-z18; } + .roads-casing { + line-join: round; + line-cap: round; + } + .tunnels-casing { + line-dasharray: 4,2; + } + .bridges-casing { + line-color: @bridge-casing; + line-join: round; + } + } + } + [feature = 'highway_service'] { [zoom >= 14][service = 'INT-normal'], [zoom >= 16][service = 'INT-minor'] { @@ -305,15 +463,20 @@ line-width: @service-width-z14; [zoom >= 16] { line-width: @service-width-z16; } [zoom >= 17] { line-width: @service-width-z17; } + [zoom >= 18] { line-width: @service-width-z18; } } [service = 'INT-minor'] { line-width: @minor-service-width-z16; + [zoom >= 17] { line-width: @minor-service-width-z17; } + [zoom >= 18] { line-width: @minor-service-width-z18; } } .roads-casing { line-join: round; line-cap: round; } - .tunnels-casing { line-dasharray: 4,2; } + .tunnels-casing { + line-dasharray: 4,2; + } .bridges-casing { line-color: @bridge-casing; line-join: round; @@ -575,7 +738,7 @@ } } - [feature = 'railway_disused'], + [feature = 'railway_disused'][zoom >= 15], [feature = 'railway_construction'], [feature = 'railway_miniature'][zoom >= 15], [feature = 'railway_INT-preserved-ssy'][zoom >= 14] { @@ -788,7 +951,7 @@ } } - [feature = 'railway_disused'], + [feature = 'railway_disused'][zoom >= 15], [feature = 'railway_construction'], [feature = 'railway_miniature'][zoom >= 15], [feature = 'railway_INT-preserved-ssy'][zoom >= 14] { @@ -881,9 +1044,7 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ line-color: @secondary-fill; } [construction = 'tertiary'], - [construction = 'tertiary_link'] { - line-color: @tertiary-fill; - } + [construction = 'tertiary_link'], [construction = 'residential'], [construction = 'unclassified'], [construction = 'living_street'] { @@ -939,37 +1100,43 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ [feature = 'highway_motorway'] { [zoom >= 5] { - line-color: @motorway-fill; - line-width: 0.5; - } - [zoom >= 7] { line-width: 1; } - [zoom >= 9] { line-width: 1.4; } - [zoom >= 10] { line-width: 2; } - [zoom >= 11] { line-width: 2.5; } + line-color: @motorway-low-zoom; + line-width: @motorway-width-z5; + } + [zoom >= 7] { line-width: @motorway-width-z7; } + [zoom >= 8] { line-width: @motorway-width-z8; } + [zoom >= 9] { line-width: @motorway-width-z9; } + [zoom >= 10] { line-width: @motorway-width-z10; } + [zoom >= 11] { line-width: @motorway-width-z11; } [zoom >= 12] { - line-width: @motorway-width-z12 - 2 * @casing-width-z12; - [zoom >= 13] { line-width: @motorway-width-z13 - 2 * @casing-width-z13; } - [zoom >= 15] { line-width: @motorway-width-z15 - 2 * @casing-width-z15; } - [zoom >= 17] { line-width: @motorway-width-z17 - 2 * @casing-width-z17; } + line-color: @motorway-fill; + line-width: @motorway-width-z12 - 2 * @major-casing-width-z12; + [zoom >= 13] { line-width: @motorway-width-z13 - 2 * @major-casing-width-z13; } + [zoom >= 15] { line-width: @motorway-width-z15 - 2 * @major-casing-width-z15; } + [zoom >= 17] { line-width: @motorway-width-z17 - 2 * @major-casing-width-z17; } + [zoom >= 18] { line-width: @motorway-width-z18 - 2 * @major-casing-width-z18; } [link = 'yes'] { line-width: @motorway-link-width-z12 - 2 * @casing-width-z12; [zoom >= 13] { line-width: @motorway-link-width-z13 - 2 * @casing-width-z13; } [zoom >= 15] { line-width: @motorway-link-width-z15 - 2 * @casing-width-z15; } [zoom >= 17] { line-width: @motorway-link-width-z17 - 2 * @casing-width-z17; } + [zoom >= 18] { line-width: @motorway-link-width-z18 - 2 * @casing-width-z18; } } .tunnels-fill { line-color: @motorway-tunnel-fill; } .bridges-fill { - line-width: @motorway-width-z12 - 2 * @bridge-casing-width-z12; - [zoom >= 13] { line-width: @motorway-width-z13 - 2 * @bridge-casing-width-z13; } - [zoom >= 15] { line-width: @motorway-width-z15 - 2 * @bridge-casing-width-z15; } - [zoom >= 17] { line-width: @motorway-width-z17 - 2 * @bridge-casing-width-z17; } + line-width: @motorway-width-z12 - 2 * @major-bridge-casing-width-z12; + [zoom >= 13] { line-width: @motorway-width-z13 - 2 * @major-bridge-casing-width-z13; } + [zoom >= 15] { line-width: @motorway-width-z15 - 2 * @major-bridge-casing-width-z15; } + [zoom >= 17] { line-width: @motorway-width-z17 - 2 * @major-bridge-casing-width-z17; } + [zoom >= 18] { line-width: @motorway-width-z18 - 2 * @major-bridge-casing-width-z18; } [link = 'yes'] { line-width: @motorway-link-width-z12 - 2 * @bridge-casing-width-z12; [zoom >= 13] { line-width: @motorway-link-width-z13 - 2 * @bridge-casing-width-z13; } [zoom >= 15] { line-width: @motorway-link-width-z15 - 2 * @bridge-casing-width-z15; } [zoom >= 17] { line-width: @motorway-link-width-z17 - 2 * @bridge-casing-width-z17; } + [zoom >= 18] { line-width: @motorway-link-width-z18 - 2 * @bridge-casing-width-z18; } } } line-cap: round; @@ -979,29 +1146,30 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ [feature = 'highway_trunk'] { [zoom >= 5] { - line-width: 0.4; - line-color: @trunk-fill; - } - [zoom >= 7] { - line-width: 1; - line-color: @trunk-fill-alternative; - } - [zoom >= 9] { line-width: 2; } - [zoom >= 11] { line-width: 2.5; } + line-width: @trunk-width-z5; + line-color: @trunk-low-zoom; + } + [zoom >= 7] { line-width: @trunk-width-z7; } + [zoom >= 8] { line-width: @trunk-width-z8; } + [zoom >= 9] { line-width: @trunk-width-z9; } + [zoom >= 10] { line-width: @trunk-width-z10; } + [zoom >= 11] { line-width: @trunk-width-z11; } [zoom >= 12] { line-color: @trunk-fill; - line-width: @trunk-width-z12 - 2 * @casing-width-z12; - [zoom >= 13] { line-width: @trunk-width-z13 - 2 * @casing-width-z13; } - [zoom >= 15] { line-width: @trunk-width-z15 - 2 * @casing-width-z15; } - [zoom >= 17] { line-width: @trunk-width-z17 - 2 * @casing-width-z17; } + line-width: @trunk-width-z12 - 2 * @major-casing-width-z12; + [zoom >= 13] { line-width: @trunk-width-z13 - 2 * @major-casing-width-z13; } + [zoom >= 15] { line-width: @trunk-width-z15 - 2 * @major-casing-width-z15; } + [zoom >= 17] { line-width: @trunk-width-z17 - 2 * @major-casing-width-z17; } + [zoom >= 18] { line-width: @trunk-width-z18 - 2 * @major-casing-width-z18; } .tunnels-fill { line-color: @trunk-tunnel-fill; } .bridges-fill { - line-width: @trunk-width-z12 - 2 * @bridge-casing-width-z12; - [zoom >= 13] { line-width: @trunk-width-z13 - 2 * @bridge-casing-width-z13; } - [zoom >= 15] { line-width: @trunk-width-z15 - 2 * @bridge-casing-width-z15; } - [zoom >= 17] { line-width: @trunk-width-z17 - 2 * @bridge-casing-width-z17; } + line-width: @trunk-width-z12 - 2 * @major-bridge-casing-width-z12; + [zoom >= 13] { line-width: @trunk-width-z13 - 2 * @major-bridge-casing-width-z13; } + [zoom >= 15] { line-width: @trunk-width-z15 - 2 * @major-bridge-casing-width-z15; } + [zoom >= 17] { line-width: @trunk-width-z17 - 2 * @major-bridge-casing-width-z17; } + [zoom >= 18] { line-width: @trunk-width-z18 - 2 * @major-bridge-casing-width-z18; } } line-cap: round; line-join: round; @@ -1009,26 +1177,29 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ } [feature = 'highway_primary'] { - [zoom >= 7] { - line-width: 0.5; - line-color: @primary-fill; + [zoom >= 8] { + line-width: @primary-width-z8; + line-color: @primary-low-zoom; } - [zoom >= 9] { line-width: 1.2; } - [zoom >= 10] { line-width: 2; } - [zoom >= 11] { line-width: 2.5; } + [zoom >= 9] { line-width: @primary-width-z9; } + [zoom >= 10] { line-width: @primary-width-z10; } + [zoom >= 11] { line-width: @primary-width-z11; } [zoom >= 12] { - line-width: @primary-width-z12 - 2 * @casing-width-z12; - [zoom >= 13] { line-width: @primary-width-z13 - 2 * @casing-width-z13; } - [zoom >= 15] { line-width: @primary-width-z15 - 2 * @casing-width-z15; } - [zoom >= 17] { line-width: @primary-width-z17 - 2 * @casing-width-z17; } + line-color: @primary-fill; + line-width: @primary-width-z12 - 2 * @major-casing-width-z12; + [zoom >= 13] { line-width: @primary-width-z13 - 2 * @major-casing-width-z13; } + [zoom >= 15] { line-width: @primary-width-z15 - 2 * @major-casing-width-z15; } + [zoom >= 17] { line-width: @primary-width-z17 - 2 * @major-casing-width-z17; } + [zoom >= 18] { line-width: @primary-width-z18 - 2 * @major-casing-width-z18; } .tunnels-fill { line-color: @primary-tunnel-fill; } .bridges-fill { - line-width: @primary-width-z12 - 2 * @bridge-casing-width-z12; - [zoom >= 13] { line-width: @primary-width-z13 - 2 * @bridge-casing-width-z13; } - [zoom >= 15] { line-width: @primary-width-z15 - 2 * @bridge-casing-width-z15; } - [zoom >= 17] { line-width: @primary-width-z17 - 2 * @bridge-casing-width-z17; } + line-width: @primary-width-z12 - 2 * @major-bridge-casing-width-z12; + [zoom >= 13] { line-width: @primary-width-z13 - 2 * @major-bridge-casing-width-z13; } + [zoom >= 15] { line-width: @primary-width-z15 - 2 * @major-bridge-casing-width-z15; } + [zoom >= 17] { line-width: @primary-width-z17 - 2 * @major-bridge-casing-width-z17; } + [zoom >= 18] { line-width: @primary-width-z18 - 2 * @major-bridge-casing-width-z18; } } line-cap: round; line-join: round; @@ -1037,33 +1208,46 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ [feature = 'highway_secondary'] { [zoom >= 9] { - line-width: 1; - line-color: @secondary-fill; + line-color: @unimportant-road; + line-width: @secondary-width-z9; } - [zoom >= 11] { line-width: 2; } - [zoom >= 12] { - line-width: @secondary-width-z12 - 2 * @casing-width-z12; - [zoom >= 13] { line-width: @secondary-width-z13 - 2 * @casing-width-z13; } - [zoom >= 15] { line-width: @secondary-width-z15 - 2 * @casing-width-z15; } - [zoom >= 17] { line-width: @secondary-width-z17 - 2 * @casing-width-z17; } - .tunnels-fill { - line-color: @secondary-tunnel-fill; - } - .bridges-fill { - line-width: @secondary-width-z12 - 2 * @bridge-casing-width-z12; - [zoom >= 13] { line-width: @secondary-width-z13 - 2 * @bridge-casing-width-z13; } - [zoom >= 15] { line-width: @secondary-width-z15 - 2 * @bridge-casing-width-z15; } - [zoom >= 17] { line-width: @secondary-width-z17 - 2 * @bridge-casing-width-z17; } - } + [zoom >=10] { + line-color: @unimportant-road; + line-width: @secondary-width-z10; + } + [zoom >= 11] { line-width: @secondary-width-z11; } + [zoom >= 12] { + line-color: @secondary-fill; + line-width: @secondary-width-z12 - 2 * @secondary-casing-width-z12; line-cap: round; line-join: round; + [zoom >= 13] { + [zoom >= 13] { line-width: @secondary-width-z13 - 2 * @secondary-casing-width-z13; } + [zoom >= 14] { line-width: @secondary-width-z14 - 2 * @secondary-casing-width-z14; } + [zoom >= 15] { line-width: @secondary-width-z15 - 2 * @secondary-casing-width-z15; } + [zoom >= 16] { line-width: @secondary-width-z16 - 2 * @secondary-casing-width-z16; } + [zoom >= 17] { line-width: @secondary-width-z17 - 2 * @secondary-casing-width-z17; } + [zoom >= 18] { line-width: @secondary-width-z18 - 2 * @secondary-casing-width-z18; } + .tunnels-fill { + line-color: @secondary-tunnel-fill; + } + .bridges-fill { + line-width: @secondary-width-z12 - 2 * @bridge-casing-width-z12; + [zoom >= 13] { line-width: @secondary-width-z13 - 2 * @major-bridge-casing-width-z13; } + [zoom >= 14] { line-width: @secondary-width-z14 - 2 * @major-bridge-casing-width-z14; } + [zoom >= 15] { line-width: @secondary-width-z15 - 2 * @major-bridge-casing-width-z15; } + [zoom >= 16] { line-width: @secondary-width-z16 - 2 * @major-bridge-casing-width-z16; } + [zoom >= 17] { line-width: @secondary-width-z17 - 2 * @major-bridge-casing-width-z17; } + [zoom >= 18] { line-width: @secondary-width-z18 - 2 * @major-bridge-casing-width-z18; } + } + } } } [feature = 'highway_tertiary'] { [zoom >= 10] { - line-color: @residential-casing; - line-width: 1; + line-color: @unimportant-road; + line-width: 0.55; } [zoom >= 12] { line-color: @tertiary-fill; @@ -1071,7 +1255,9 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ [zoom >= 13] { line-width: @tertiary-width-z13 - 2 * @casing-width-z13; } [zoom >= 14] { line-width: @tertiary-width-z14 - 2 * @casing-width-z14; } [zoom >= 15] { line-width: @tertiary-width-z15 - 2 * @casing-width-z15; } + [zoom >= 16] { line-width: @tertiary-width-z16 - 2 * @casing-width-z16; } [zoom >= 17] { line-width: @tertiary-width-z17 - 2 * @casing-width-z17; } + [zoom >= 18] { line-width: @tertiary-width-z18 - 2 * @casing-width-z18; } .tunnels-fill { line-color: @tertiary-tunnel-fill; } @@ -1080,7 +1266,9 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ [zoom >= 13] { line-width: @tertiary-width-z13 - 2 * @bridge-casing-width-z13; } [zoom >= 14] { line-width: @tertiary-width-z14 - 2 * @bridge-casing-width-z14; } [zoom >= 15] { line-width: @tertiary-width-z15 - 2 * @bridge-casing-width-z15; } + [zoom >= 16] { line-width: @tertiary-width-z16 - 2 * @bridge-casing-width-z16; } [zoom >= 17] { line-width: @tertiary-width-z17 - 2 * @bridge-casing-width-z17; } + [zoom >= 18] { line-width: @tertiary-width-z18 - 2 * @bridge-casing-width-z18; } } line-cap: round; line-join: round; @@ -1090,11 +1278,11 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ [feature = 'highway_residential'], [feature = 'highway_unclassified'] { [zoom = 12][feature = 'highway_residential'] { - line-color: @residential-casing; + line-color: @unimportant-road; line-width: 0.4; } [zoom = 12][feature = 'highway_unclassified'] { - line-color: @residential-casing; + line-color: @unimportant-road; line-width: 1; } [zoom >= 13] { @@ -1121,42 +1309,6 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ } } - [feature = 'highway_road'] { - [zoom >= 10] { - line-color: @residential-casing; - line-width: 1; - } - [zoom >= 13] { - .roads-fill, .bridges-fill { - line-color: @road-fill; - } - .tunnels-fill { - line-color: @residential-tunnel-fill; - } - .roads-fill { - line-width: 2; - [zoom >= 14] { line-width: 3; } - [zoom >= 15] { line-width: 6.5; } - [zoom >= 16] { line-width: 9.4; } - [zoom >= 17] { line-width: 13; } - } - .bridges-fill { - line-width: 3.5; - [zoom >= 14] { line-width: 7.5; } - [zoom >= 15] { line-width: 9.5; } - [zoom >= 17] { line-width: 14; } - } - .tunnels-fill { - line-width: 2; - [zoom >= 14] { line-width: 3.5; } - [zoom >= 15] { line-width: 9.5; } - [zoom >= 17] { line-width: 14; } - } - line-cap: round; - line-join: round; - } - } - [feature = 'highway_living_street'] { [zoom >= 13] { line-width: @living-street-width-z13 - 2 * @casing-width-z13; @@ -1182,10 +1334,38 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ } } + [feature = 'highway_road'] { + [zoom >= 10] { + line-width: 1; + line-color: @unimportant-road; + line-join: round; + line-cap: round; + } + [zoom >= 14] { + line-width: @road-width-z14 - 2 * @casing-width-z14; + [zoom >= 16] { line-width: @road-width-z16 - 2 * @casing-width-z16; } + [zoom >= 17] { line-width: @road-width-z17 - 2 * @casing-width-z17; } + [zoom >= 18] { line-width: @road-width-z18 - 2 * @casing-width-z18; } + .roads-fill { + line-color: @road-fill; + } + .bridges-fill { + line-width: @road-width-z14 - 2 * @bridge-casing-width-z14; + [zoom >= 16] { line-width: @road-width-z16 - 2 * @bridge-casing-width-z16; } + [zoom >= 17] { line-width: @road-width-z17 - 2 * @bridge-casing-width-z17; } + [zoom >= 18] { line-width: @road-width-z18 - 2 * @bridge-casing-width-z18; } + line-color: @road-fill; + } + .tunnels-fill { + line-color: @road-fill; + } + } + } + [feature = 'highway_service'] { [zoom >= 13][service = 'INT-normal'] { line-width: 1; - line-color: @residential-casing; + line-color: @unimportant-road; } [zoom >= 14][service = 'INT-normal'], [zoom >= 16][service = 'INT-minor'] { @@ -1194,9 +1374,12 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ line-width: @service-width-z14 - 2 * @casing-width-z14; [zoom >= 16] { line-width: @service-width-z16 - 2 * @casing-width-z16; } [zoom >= 17] { line-width: @service-width-z17 - 2 * @casing-width-z17; } + [zoom >= 18] { line-width: @service-width-z18 - 2 * @casing-width-z18; } } [service = 'INT-minor'] { line-width: @minor-service-width-z16 - 2 * @casing-width-z16; + [zoom >= 17] { line-width: @minor-service-width-z17 - 2 * @casing-width-z17; } + [zoom >= 18] { line-width: @minor-service-width-z18 - 2 * @casing-width-z18; } } line-join: round; line-cap: round; @@ -1208,9 +1391,12 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ line-width: @service-width-z14 - 2 * @bridge-casing-width-z14; [zoom >= 16] { line-width: @service-width-z16 - 2 * @bridge-casing-width-z16; } [zoom >= 17] { line-width: @service-width-z17 - 2 * @bridge-casing-width-z17; } + [zoom >= 18] { line-width: @service-width-z18 - 2 * @bridge-casing-width-z18; } } [service = 'INT-minor'] { line-width: @minor-service-width-z16 - 2 * @bridge-casing-width-z16; + [zoom >= 17] { line-width: @minor-service-width-z17 - 2 * @bridge-casing-width-z17; } + [zoom >= 18] { line-width: @minor-service-width-z18 - 2 * @bridge-casing-width-z18; } } } } @@ -1528,15 +1714,10 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ [feature = 'railway_rail'][zoom >= 7], [feature = 'railway_INT-spur-siding-yard'][zoom >= 13] { [zoom < 13] { - line-color: #aaa; - [feature = 'railway_rail'] { - line-width: 0.6; - [zoom >= 9] { line-width: 1; } - [zoom >= 10] { line-width: 2; } - } - [feature = 'railway_INT-spur-siding-yard'] { - line-width: 1; - } + line-color: #787878; + line-width: 0.5; + [zoom >= 8] { line-width: 0.8; } + [zoom >= 12] { line-width: 0.9; } line-join: round; .roads_low_zoom[int_tunnel = 'yes'], .tunnels-fill { line-dasharray: 5,2; @@ -1544,56 +1725,42 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ } [zoom >= 13] { .roads-fill, .bridges-fill { - dark/line-color: #999999; - [feature = 'railway_rail'] { dark/line-width: 3; } - [feature = 'railway_INT-spur-siding-yard'] { dark/line-width: 2; } - [feature = 'railway_rail'] { dark/line-join: round; } - [feature = 'railway_INT-spur-siding-yard'] .bridges-fill { dark/line-join: round; } + dark/line-join: round; light/line-color: white; - [feature = 'railway_rail'] { light/line-width: 1; } - [feature = 'railway_INT-spur-siding-yard'] { light/line-width: 0.8; } - [feature = 'railway_rail'] { light/line-dasharray: 8,12; } - [feature = 'railway_INT-spur-siding-yard'] { light/line-dasharray: 0,8,11,1; } light/line-join: round; - [feature = 'railway_rail'][zoom >= 14] { light/line-dasharray: 0,11,8,1; } + [feature = 'railway_rail'] { + dark/line-color: #787878; + dark/line-width: 3; + light/line-width: 1; + light/line-dasharray: 8,8; + [zoom >= 15] { + light/line-dasharray: 0,8,8,1; + } + [zoom >= 19] { + dark/line-width: 4; + light/line-width: 2; + } + } + [feature = 'railway_INT-spur-siding-yard'] { + dark/line-width: 2; + dark/line-color: #aaa; + light/line-width: 0.8; + light/line-dasharray: 0,8,8,1; + } } .tunnels-fill { - a/line-width: 3; - b/line-width: 3; - c/line-width: 3; - d/line-width: 3; - e/line-width: 3; - f/line-width: 3; - g/line-width: 3; - a/line-color: #ffffff; - b/line-color: #fdfdfd; - c/line-color: #ececec; - d/line-color: #cacaca; - e/line-color: #afafaf; - f/line-color: #a1a1a1; - g/line-color: #9b9b9b; - a/line-dasharray: 1,9; - b/line-dasharray: 0,1,1,8; - c/line-dasharray: 0,2,1,7; - d/line-dasharray: 0,3,1,6; - e/line-dasharray: 0,4,1,5; - f/line-dasharray: 0,5,1,4; - g/line-dasharray: 0,6,1,3; - a/line-join: round; - b/line-join: round; - c/line-join: round; - d/line-join: round; - e/line-join: round; - f/line-join: round; - g/line-join: round; + line-color: #787878; + line-width: 2.8; + line-dasharray: 6,4; + line-clip: false; [feature = 'railway_INT-spur-siding-yard'] { - a/line-width: 2; - b/line-width: 2; - c/line-width: 2; - d/line-width: 2; - e/line-width: 2; - f/line-width: 2; - g/line-width: 2; + line-color: #aaa; + line-width: 1.9; + line-dasharray: 3,3; + } + [feature = 'railway_rail'][zoom >= 19] { + line-dasharray: 8,6; + line-width: 3.8; } } } @@ -1726,13 +1893,28 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ } } - [feature = 'railway_disused'], [feature = 'railway_construction'] { [zoom >= 13] { line-color: grey; line-width: 2; line-dasharray: 2,4; line-join: round; + [zoom >= 14] { + line-dasharray: 2,3; + } + [zoom >= 15] { + line-width: 3; + line-dasharray: 3,3; + } + } + } + + [feature = 'railway_disused'] { + [zoom >= 15] { + line-color: #aaa; + line-width: 2; + line-dasharray: 2,4; + line-join: round; } } @@ -1786,10 +1968,18 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ marker-fill: @tertiary-casing; marker-width: (@tertiary-width-z15 - 2 * @casing-width-z15) * 1.8 + 2 * @casing-width-z15; marker-height: (@tertiary-width-z15 - 2 * @casing-width-z15) * 1.8 + 2 * @casing-width-z15; + [zoom >= 16] { + marker-width: (@tertiary-width-z16 - 2 * @casing-width-z16) * 1.8 + 2 * @casing-width-z16; + marker-height: (@tertiary-width-z16 - 2 * @casing-width-z16) * 1.8 + 2 * @casing-width-z16; + } [zoom >= 17] { marker-width: (@tertiary-width-z17 - 2 * @casing-width-z17) * 1.8 + 2 * @casing-width-z17; marker-height: (@tertiary-width-z17 - 2 * @casing-width-z17) * 1.8 + 2 * @casing-width-z17; } + [zoom >= 18] { + marker-width: (@tertiary-width-z18 - 2 * @casing-width-z18) * 1.8 + 2 * @casing-width-z18; + marker-height: (@tertiary-width-z18 - 2 * @casing-width-z18) * 1.8 + 2 * @casing-width-z18; + } marker-allow-overlap: true; marker-ignore-placement: true; marker-line-width: 0; @@ -2114,26 +2304,37 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ [feature = 'highway_tertiary'], [feature = 'highway_unclassified'], [feature = 'highway_residential'], - [feature = 'highway_road'], [feature = 'highway_living_street'] { [zoom >= 15] { access/line-width: 6; access/line-color: @destination-marking; access/line-dasharray: 6,8; - access/line-cap: round; + access/line-opacity: 0.5; access/line-join: round; + access/line-cap: round; + } + } + [feature = 'highway_road'], + [feature = 'highway_service'][service = 'INT-normal'] { + [zoom >= 15] { + access/line-width: 3; + access/line-color: @destination-marking; + access/line-dasharray: 6,8; access/line-opacity: 0.5; + access/line-join: round; + access/line-cap: round; + [zoom >= 16] { access/line-width: 6; } } } - [feature = 'highway_service'][service = 'INT-normal'][zoom >= 15], - [feature = 'highway_service'][zoom >= 16] { - access/line-width: 3; - access/line-color: @destination-marking; - access/line-dasharray: 6,8; - access/line-cap: round; - access/line-join: round; - access/line-opacity: 0.5; - [zoom >= 16] { access/line-width: 6; } + [feature = 'highway_service'][service = 'INT-minor'] { + [zoom >= 16] { + access/line-width: 2.5; + access/line-color: @destination-marking; + access/line-dasharray: 6,8; + access/line-opacity: 0.5; + access/line-join: round; + access/line-cap: round; + } } } [access = 'no'] { @@ -2144,31 +2345,58 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */ [feature = 'highway_tertiary'], [feature = 'highway_unclassified'], [feature = 'highway_residential'], + [feature = 'highway_living_street'] { + [zoom >= 15] { + access/line-width: 6; + access/line-color: @private-marking; + access/line-dasharray: 6,8; + access/line-opacity: 0.5; + access/line-join: round; + access/line-cap: round; + [feature = 'highway_motorway'], + [feature = 'highway_trunk'], + [feature = 'highway_primary'] { + access/line-color: @private-marking-for-red; + } + } + } [feature = 'highway_road'], - [feature = 'highway_living_street'], [feature = 'highway_track'], - [feature = 'highway_path'], + [feature = 'highway_service'][service = 'INT-normal'] { + [zoom >= 15] { + access/line-width: 3; + access/line-color: @private-marking; + access/line-dasharray: 6,8; + access/line-opacity: 0.5; + access/line-join: round; + access/line-cap: round; + [zoom >= 16] { access/line-width: 6; } + } + } [feature = 'highway_footway'], + [feature = 'highway_path'], [feature = 'highway_cycleway'], - [feature = 'highway_bridleway'] { + [feature = 'highway_bridleway'], + [feature = 'highway_steps'] { [zoom >= 15] { - access/line-width: 6; + access/line-width: 5; access/line-color: @private-marking; access/line-dasharray: 6,8; access/line-opacity: 0.5; access/line-join: round; access/line-cap: round; - } + } } - [feature = 'highway_service'][service = 'INT-normal'][zoom >= 15], - [feature = 'highway_service'][zoom >= 16] { - access/line-width: 3; - access/line-color: @private-marking; - access/line-dasharray: 6,8; - access/line-opacity: 0.5; - access/line-join: round; - access/line-cap: round; - [zoom >= 16] { access/line-width: 6; } + + [feature = 'highway_service'][service = 'INT-minor'][zoom >= 16] { + [zoom >= 15] { + access/line-width: 2.5; + access/line-color: @private-marking; + access/line-dasharray: 6,8; + access/line-opacity: 0.5; + access/line-join: round; + access/line-cap: round; + } } } } diff --git a/scripts/create_standard_shields b/scripts/create_standard_shields index be84c50dac..96cb70a1b4 100755 --- a/scripts/create_standard_shields +++ b/scripts/create_standard_shields @@ -18,11 +18,20 @@ widths=' 10:75.75 11:80.75' -colours='motorway:#7788a1 -trunk:#87ab87 -primary:#bb7b7f -secondary:#c6ad84 -tertiary:#c4c68f' +#shield colors were generated with scripts/generate_road_colors.py +colours='motorway:#d18996 +trunk:#da9b88 +primary:#d5b284 +secondary:#c6ca90 +tertiary:#c6c6c6' + +# motorway: Lch(65,30,10), error 0.5 +# trunk: Lch(70,30,42), error 0.7 +# primary: Lch(75,30,74), error 1.6 +# secondary: Lch(80,30,106), error 1.8 +# tertiary: Lch(80,0,0), error 0.1 + + xoffset=1.25 diff --git a/scripts/generate_road_colours.py b/scripts/generate_road_colours.py new file mode 100644 index 0000000000..7c0bd4a8f4 --- /dev/null +++ b/scripts/generate_road_colours.py @@ -0,0 +1,94 @@ +from colormath.color_conversions import convert_color +from colormath.color_objects import LabColor, LCHabColor, sRGBColor +from colormath.color_diff import delta_e_cie2000 +import numpy + +from collections import OrderedDict, namedtuple + +class Color: + def __init__(self, lch_tuple): + self.m_lch = LCHabColor(*lch_tuple) + + def lch(self): + return "Lch({:.0f},{:.0f},{:.0f})".format(*(self.m_lch.get_value_tuple())) + + def rgb(self): + rgb = convert_color(self.m_lch, sRGBColor) + if (rgb.rgb_r != rgb.clamped_rgb_r or rgb.rgb_g != rgb.clamped_rgb_g or rgb.rgb_b != rgb.clamped_rgb_b): + raise Exception("Colour {} is outside sRGB".format(self.lch())) + return rgb.get_rgb_hex() + + def rgb_error(self): + return delta_e_cie2000(convert_color(self.m_lch, LabColor), + convert_color(sRGBColor.new_from_rgb_hex(self.rgb()), LabColor)) + +road_classes = ["motorway", "trunk", "primary", "secondary"] +colour_divisions = len(road_classes) - 1 +hues = OrderedDict() + +# The minimum and maximum hue for the road colours +# Because hue is a circle, it may be needed to add/subtract 360 to the min or +# max when changing them + +min_h = 10 +max_h = 106 +delta_h = (max_h - min_h) / colour_divisions + +h = min_h +for name in road_classes: + hues[name] = h + h = (h + delta_h) % 360 + +print hues +# A class to hold information for each line +ColourInfo = namedtuple("ColourInfo", ["start_l", "end_l", "start_c", "end_c"]) + +line_colour_infos = OrderedDict() + +# The saturation and lightness for each type of line +line_colour_infos["fill"] = ColourInfo(start_l = 70, end_l = 97, start_c = 35, end_c = 29) +line_colour_infos["low-zoom"] = ColourInfo(start_l = 62, end_l = 92, start_c = 50, end_c = 50) + +line_colour_infos["casing"] = ColourInfo(start_l = 50, end_l = 50, start_c = 70, end_c = 55) +line_colour_infos["low-zoom-casing"] = ColourInfo(start_l = 50, end_l = 70, start_c = 50, end_c = 65) + +# Colours for the MSS +colours = OrderedDict() + +for line_name, line_colour_info in line_colour_infos.iteritems(): + c = line_colour_info.start_c + delta_c = (line_colour_info.end_c - line_colour_info.start_c) / colour_divisions + l = line_colour_info.start_l + delta_l = (line_colour_info.end_l - line_colour_info.start_l) / colour_divisions + + for name in road_classes: + colours[name + "-" + line_name] = Color((l, c, hues[name])) + c += delta_c + l += delta_l + +for name, colour in colours.iteritems(): + print "@{name}: {rgb}; // {lch}, error {delta:.1f}".format(name = name, rgb = colour.rgb(), lch = colour.lch(), delta = colour.rgb_error()) + +# Generate colours for the shields +shield_colour_info = ColourInfo(start_l = 65, end_l = 80, start_c = 30, end_c = 30) +shield_colours = OrderedDict() + + +c = shield_colour_info.start_c +delta_c = (shield_colour_info.end_c - shield_colour_info.start_c) / colour_divisions +l = shield_colour_info.start_l +delta_l = (shield_colour_info.end_l - shield_colour_info.start_l) / colour_divisions + +for name in road_classes: + shield_colours[name] = Color((l, c, hues[name])) + c += delta_c + l += delta_l + +shield_colours["tertiary"] = Color((shield_colour_info.end_l, 0, 0)) + +print "\n\nRoad shield information\n\n" +for name, colour in shield_colours.iteritems(): + print "{name}:{rgb}".format(name = name, rgb = colour.rgb()) + +for name, colour in shield_colours.iteritems(): + print "# {name}: {lch}, error {delta:.1f}".format(name = name, lch = colour.lch(), delta = colour.rgb_error()) \ No newline at end of file diff --git a/scripts/regenerate_shields.sh b/scripts/regenerate_shields.sh new file mode 100755 index 0000000000..2280b9f76f --- /dev/null +++ b/scripts/regenerate_shields.sh @@ -0,0 +1,2 @@ +./create_standard_shields +mv *.svg ../symbols/shields diff --git a/symbols/shields/motorway_10x1.svg b/symbols/shields/motorway_10x1.svg index 729806511c..d136907397 100644 --- a/symbols/shields/motorway_10x1.svg +++ b/symbols/shields/motorway_10x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_10x2.svg b/symbols/shields/motorway_10x2.svg index 14861c425c..63604ea27a 100644 --- a/symbols/shields/motorway_10x2.svg +++ b/symbols/shields/motorway_10x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_10x3.svg b/symbols/shields/motorway_10x3.svg index 28fcf9edde..223d6e7197 100644 --- a/symbols/shields/motorway_10x3.svg +++ b/symbols/shields/motorway_10x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_10x4.svg b/symbols/shields/motorway_10x4.svg index 8432563c26..6cf49eddd8 100644 --- a/symbols/shields/motorway_10x4.svg +++ b/symbols/shields/motorway_10x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_11x1.svg b/symbols/shields/motorway_11x1.svg index 98115cf202..84c667b62e 100644 --- a/symbols/shields/motorway_11x1.svg +++ b/symbols/shields/motorway_11x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_11x2.svg b/symbols/shields/motorway_11x2.svg index d1445220fb..2863e29082 100644 --- a/symbols/shields/motorway_11x2.svg +++ b/symbols/shields/motorway_11x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_11x3.svg b/symbols/shields/motorway_11x3.svg index 0ce904a49f..5a8b3d8214 100644 --- a/symbols/shields/motorway_11x3.svg +++ b/symbols/shields/motorway_11x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_11x4.svg b/symbols/shields/motorway_11x4.svg index 89e18493d4..789b99a073 100644 --- a/symbols/shields/motorway_11x4.svg +++ b/symbols/shields/motorway_11x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_1x1.svg b/symbols/shields/motorway_1x1.svg index 52b0f77cb9..0cea6a435d 100644 --- a/symbols/shields/motorway_1x1.svg +++ b/symbols/shields/motorway_1x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_1x2.svg b/symbols/shields/motorway_1x2.svg index c5a54e474d..7fbb048388 100644 --- a/symbols/shields/motorway_1x2.svg +++ b/symbols/shields/motorway_1x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_1x3.svg b/symbols/shields/motorway_1x3.svg index 1f27cdd4ce..2f871e5e49 100644 --- a/symbols/shields/motorway_1x3.svg +++ b/symbols/shields/motorway_1x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_1x4.svg b/symbols/shields/motorway_1x4.svg index b25e0057ba..acd6b12d35 100644 --- a/symbols/shields/motorway_1x4.svg +++ b/symbols/shields/motorway_1x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_2x1.svg b/symbols/shields/motorway_2x1.svg index 4377bf022a..a7c8d68501 100644 --- a/symbols/shields/motorway_2x1.svg +++ b/symbols/shields/motorway_2x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_2x2.svg b/symbols/shields/motorway_2x2.svg index bc932a6175..26716a084f 100644 --- a/symbols/shields/motorway_2x2.svg +++ b/symbols/shields/motorway_2x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_2x3.svg b/symbols/shields/motorway_2x3.svg index 259359cf38..8735930fd9 100644 --- a/symbols/shields/motorway_2x3.svg +++ b/symbols/shields/motorway_2x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_2x4.svg b/symbols/shields/motorway_2x4.svg index 13aa6c3896..6c754d44bf 100644 --- a/symbols/shields/motorway_2x4.svg +++ b/symbols/shields/motorway_2x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_3x1.svg b/symbols/shields/motorway_3x1.svg index f005d07954..f56f4111a9 100644 --- a/symbols/shields/motorway_3x1.svg +++ b/symbols/shields/motorway_3x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_3x2.svg b/symbols/shields/motorway_3x2.svg index 35e7fc603f..a33a8a6df4 100644 --- a/symbols/shields/motorway_3x2.svg +++ b/symbols/shields/motorway_3x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_3x3.svg b/symbols/shields/motorway_3x3.svg index e3e706d2cf..7ecb6e3dd2 100644 --- a/symbols/shields/motorway_3x3.svg +++ b/symbols/shields/motorway_3x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_3x4.svg b/symbols/shields/motorway_3x4.svg index cbe8e310d0..94cbe8793c 100644 --- a/symbols/shields/motorway_3x4.svg +++ b/symbols/shields/motorway_3x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_4x1.svg b/symbols/shields/motorway_4x1.svg index 0ca29fe594..9a1df365de 100644 --- a/symbols/shields/motorway_4x1.svg +++ b/symbols/shields/motorway_4x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_4x2.svg b/symbols/shields/motorway_4x2.svg index 637acf85fc..c5f316ea09 100644 --- a/symbols/shields/motorway_4x2.svg +++ b/symbols/shields/motorway_4x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_4x3.svg b/symbols/shields/motorway_4x3.svg index 78abfc378d..cf17bc74de 100644 --- a/symbols/shields/motorway_4x3.svg +++ b/symbols/shields/motorway_4x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_4x4.svg b/symbols/shields/motorway_4x4.svg index fdce2ebe15..4728394d8c 100644 --- a/symbols/shields/motorway_4x4.svg +++ b/symbols/shields/motorway_4x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_5x1.svg b/symbols/shields/motorway_5x1.svg index f5bbf52aaa..c3a2749704 100644 --- a/symbols/shields/motorway_5x1.svg +++ b/symbols/shields/motorway_5x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_5x2.svg b/symbols/shields/motorway_5x2.svg index ca963cbd1e..05939b7cae 100644 --- a/symbols/shields/motorway_5x2.svg +++ b/symbols/shields/motorway_5x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_5x3.svg b/symbols/shields/motorway_5x3.svg index fcba797d67..83f2b5f033 100644 --- a/symbols/shields/motorway_5x3.svg +++ b/symbols/shields/motorway_5x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_5x4.svg b/symbols/shields/motorway_5x4.svg index 7a8c7734cc..921be6e0f6 100644 --- a/symbols/shields/motorway_5x4.svg +++ b/symbols/shields/motorway_5x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_6x1.svg b/symbols/shields/motorway_6x1.svg index b777c68f43..b5c5753c8d 100644 --- a/symbols/shields/motorway_6x1.svg +++ b/symbols/shields/motorway_6x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_6x2.svg b/symbols/shields/motorway_6x2.svg index 950ba9b99b..0d1e8644c9 100644 --- a/symbols/shields/motorway_6x2.svg +++ b/symbols/shields/motorway_6x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_6x3.svg b/symbols/shields/motorway_6x3.svg index 1501526357..69bd2ca74c 100644 --- a/symbols/shields/motorway_6x3.svg +++ b/symbols/shields/motorway_6x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_6x4.svg b/symbols/shields/motorway_6x4.svg index 55397cbf97..6084dd629a 100644 --- a/symbols/shields/motorway_6x4.svg +++ b/symbols/shields/motorway_6x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_7x1.svg b/symbols/shields/motorway_7x1.svg index 358e5904e0..1c25bf0987 100644 --- a/symbols/shields/motorway_7x1.svg +++ b/symbols/shields/motorway_7x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_7x2.svg b/symbols/shields/motorway_7x2.svg index b93b4fcb79..ef3aa63ea3 100644 --- a/symbols/shields/motorway_7x2.svg +++ b/symbols/shields/motorway_7x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_7x3.svg b/symbols/shields/motorway_7x3.svg index 219e8e5480..cde55fef0e 100644 --- a/symbols/shields/motorway_7x3.svg +++ b/symbols/shields/motorway_7x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_7x4.svg b/symbols/shields/motorway_7x4.svg index 0c74453fed..6299594ad5 100644 --- a/symbols/shields/motorway_7x4.svg +++ b/symbols/shields/motorway_7x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_8x1.svg b/symbols/shields/motorway_8x1.svg index dc507ad458..f03a479ea6 100644 --- a/symbols/shields/motorway_8x1.svg +++ b/symbols/shields/motorway_8x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_8x2.svg b/symbols/shields/motorway_8x2.svg index 14cdafeb05..6364971105 100644 --- a/symbols/shields/motorway_8x2.svg +++ b/symbols/shields/motorway_8x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_8x3.svg b/symbols/shields/motorway_8x3.svg index 9e683140d7..a3476e7146 100644 --- a/symbols/shields/motorway_8x3.svg +++ b/symbols/shields/motorway_8x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_8x4.svg b/symbols/shields/motorway_8x4.svg index 869fbe93a8..2140c4c839 100644 --- a/symbols/shields/motorway_8x4.svg +++ b/symbols/shields/motorway_8x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_9x1.svg b/symbols/shields/motorway_9x1.svg index 46f21a82f4..0dcf1b76b7 100644 --- a/symbols/shields/motorway_9x1.svg +++ b/symbols/shields/motorway_9x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_9x2.svg b/symbols/shields/motorway_9x2.svg index d03181ab7f..e13ad53e07 100644 --- a/symbols/shields/motorway_9x2.svg +++ b/symbols/shields/motorway_9x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_9x3.svg b/symbols/shields/motorway_9x3.svg index b338ec96d4..a8ddbe6236 100644 --- a/symbols/shields/motorway_9x3.svg +++ b/symbols/shields/motorway_9x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/motorway_9x4.svg b/symbols/shields/motorway_9x4.svg index 26e2b195de..c92a6fa81b 100644 --- a/symbols/shields/motorway_9x4.svg +++ b/symbols/shields/motorway_9x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_10x1.svg b/symbols/shields/primary_10x1.svg index 9203a6d7fb..587974de42 100644 --- a/symbols/shields/primary_10x1.svg +++ b/symbols/shields/primary_10x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_10x2.svg b/symbols/shields/primary_10x2.svg index 31e7faf9d4..f35e62f877 100644 --- a/symbols/shields/primary_10x2.svg +++ b/symbols/shields/primary_10x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_10x3.svg b/symbols/shields/primary_10x3.svg index 5300559e2f..00fe7b1fcb 100644 --- a/symbols/shields/primary_10x3.svg +++ b/symbols/shields/primary_10x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_10x4.svg b/symbols/shields/primary_10x4.svg index 8f5cdb79df..b9db4a5132 100644 --- a/symbols/shields/primary_10x4.svg +++ b/symbols/shields/primary_10x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_11x1.svg b/symbols/shields/primary_11x1.svg index 44d4587042..d899532eb8 100644 --- a/symbols/shields/primary_11x1.svg +++ b/symbols/shields/primary_11x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_11x2.svg b/symbols/shields/primary_11x2.svg index 4cee0e8a9f..0f9a6f8487 100644 --- a/symbols/shields/primary_11x2.svg +++ b/symbols/shields/primary_11x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_11x3.svg b/symbols/shields/primary_11x3.svg index 06a1708fe6..3538e73cf8 100644 --- a/symbols/shields/primary_11x3.svg +++ b/symbols/shields/primary_11x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_11x4.svg b/symbols/shields/primary_11x4.svg index 6922ac3d4b..51e55c6a2b 100644 --- a/symbols/shields/primary_11x4.svg +++ b/symbols/shields/primary_11x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_1x1.svg b/symbols/shields/primary_1x1.svg index aeed30869c..59f95db44e 100644 --- a/symbols/shields/primary_1x1.svg +++ b/symbols/shields/primary_1x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_1x2.svg b/symbols/shields/primary_1x2.svg index 430b01ca4d..17086e6b9c 100644 --- a/symbols/shields/primary_1x2.svg +++ b/symbols/shields/primary_1x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_1x3.svg b/symbols/shields/primary_1x3.svg index bb986a07fa..104118a4b5 100644 --- a/symbols/shields/primary_1x3.svg +++ b/symbols/shields/primary_1x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_1x4.svg b/symbols/shields/primary_1x4.svg index ffb1da0ec8..9ecb455f2a 100644 --- a/symbols/shields/primary_1x4.svg +++ b/symbols/shields/primary_1x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_2x1.svg b/symbols/shields/primary_2x1.svg index 1b127d498a..45158d9de9 100644 --- a/symbols/shields/primary_2x1.svg +++ b/symbols/shields/primary_2x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_2x2.svg b/symbols/shields/primary_2x2.svg index 781e422dda..70a268b081 100644 --- a/symbols/shields/primary_2x2.svg +++ b/symbols/shields/primary_2x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_2x3.svg b/symbols/shields/primary_2x3.svg index e94cfb357f..601bddd908 100644 --- a/symbols/shields/primary_2x3.svg +++ b/symbols/shields/primary_2x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_2x4.svg b/symbols/shields/primary_2x4.svg index 39207499e9..e38b2b88ab 100644 --- a/symbols/shields/primary_2x4.svg +++ b/symbols/shields/primary_2x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_3x1.svg b/symbols/shields/primary_3x1.svg index 3d92a4a4a9..d34456d7dd 100644 --- a/symbols/shields/primary_3x1.svg +++ b/symbols/shields/primary_3x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_3x2.svg b/symbols/shields/primary_3x2.svg index 61744981b0..996ae71016 100644 --- a/symbols/shields/primary_3x2.svg +++ b/symbols/shields/primary_3x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_3x3.svg b/symbols/shields/primary_3x3.svg index 081902d58f..4e261a27aa 100644 --- a/symbols/shields/primary_3x3.svg +++ b/symbols/shields/primary_3x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_3x4.svg b/symbols/shields/primary_3x4.svg index 58f9cfd1fb..80cdaed036 100644 --- a/symbols/shields/primary_3x4.svg +++ b/symbols/shields/primary_3x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_4x1.svg b/symbols/shields/primary_4x1.svg index b32c626520..2980438f9f 100644 --- a/symbols/shields/primary_4x1.svg +++ b/symbols/shields/primary_4x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_4x2.svg b/symbols/shields/primary_4x2.svg index 4faf4247f3..dabe1ada13 100644 --- a/symbols/shields/primary_4x2.svg +++ b/symbols/shields/primary_4x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_4x3.svg b/symbols/shields/primary_4x3.svg index ecc09fa878..b3f3d2d1f5 100644 --- a/symbols/shields/primary_4x3.svg +++ b/symbols/shields/primary_4x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_4x4.svg b/symbols/shields/primary_4x4.svg index c5a12a529c..9d098528df 100644 --- a/symbols/shields/primary_4x4.svg +++ b/symbols/shields/primary_4x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_5x1.svg b/symbols/shields/primary_5x1.svg index af059cac0d..3645872632 100644 --- a/symbols/shields/primary_5x1.svg +++ b/symbols/shields/primary_5x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_5x2.svg b/symbols/shields/primary_5x2.svg index a59bc0d6c1..b1c9720bca 100644 --- a/symbols/shields/primary_5x2.svg +++ b/symbols/shields/primary_5x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_5x3.svg b/symbols/shields/primary_5x3.svg index 0a2d4b6000..1bc4e8500d 100644 --- a/symbols/shields/primary_5x3.svg +++ b/symbols/shields/primary_5x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_5x4.svg b/symbols/shields/primary_5x4.svg index 34aaabfbeb..1ed145d990 100644 --- a/symbols/shields/primary_5x4.svg +++ b/symbols/shields/primary_5x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_6x1.svg b/symbols/shields/primary_6x1.svg index aa972b7902..75c7e9e492 100644 --- a/symbols/shields/primary_6x1.svg +++ b/symbols/shields/primary_6x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_6x2.svg b/symbols/shields/primary_6x2.svg index c4647357a7..1f7d33c74c 100644 --- a/symbols/shields/primary_6x2.svg +++ b/symbols/shields/primary_6x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_6x3.svg b/symbols/shields/primary_6x3.svg index 96aebabf5d..f601975add 100644 --- a/symbols/shields/primary_6x3.svg +++ b/symbols/shields/primary_6x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_6x4.svg b/symbols/shields/primary_6x4.svg index e1360fd990..2c6e2530a7 100644 --- a/symbols/shields/primary_6x4.svg +++ b/symbols/shields/primary_6x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_7x1.svg b/symbols/shields/primary_7x1.svg index c521b7c10e..6110ea612f 100644 --- a/symbols/shields/primary_7x1.svg +++ b/symbols/shields/primary_7x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_7x2.svg b/symbols/shields/primary_7x2.svg index 84ce6098da..24f28a7ddc 100644 --- a/symbols/shields/primary_7x2.svg +++ b/symbols/shields/primary_7x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_7x3.svg b/symbols/shields/primary_7x3.svg index 08a9a48f9b..046432d24f 100644 --- a/symbols/shields/primary_7x3.svg +++ b/symbols/shields/primary_7x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_7x4.svg b/symbols/shields/primary_7x4.svg index cf56cc611f..40e709b2de 100644 --- a/symbols/shields/primary_7x4.svg +++ b/symbols/shields/primary_7x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_8x1.svg b/symbols/shields/primary_8x1.svg index 513e298a6d..d367b8aa08 100644 --- a/symbols/shields/primary_8x1.svg +++ b/symbols/shields/primary_8x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_8x2.svg b/symbols/shields/primary_8x2.svg index c12b3f5e11..02fd7f1c97 100644 --- a/symbols/shields/primary_8x2.svg +++ b/symbols/shields/primary_8x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_8x3.svg b/symbols/shields/primary_8x3.svg index f0fba8a20f..19e25a8362 100644 --- a/symbols/shields/primary_8x3.svg +++ b/symbols/shields/primary_8x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_8x4.svg b/symbols/shields/primary_8x4.svg index 06c8705d99..4077401598 100644 --- a/symbols/shields/primary_8x4.svg +++ b/symbols/shields/primary_8x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_9x1.svg b/symbols/shields/primary_9x1.svg index 6cdc553b14..7414aeda37 100644 --- a/symbols/shields/primary_9x1.svg +++ b/symbols/shields/primary_9x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_9x2.svg b/symbols/shields/primary_9x2.svg index 1a89a3c6ab..3d8e953329 100644 --- a/symbols/shields/primary_9x2.svg +++ b/symbols/shields/primary_9x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_9x3.svg b/symbols/shields/primary_9x3.svg index 57c57e5f46..c8ba8cd1d3 100644 --- a/symbols/shields/primary_9x3.svg +++ b/symbols/shields/primary_9x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/primary_9x4.svg b/symbols/shields/primary_9x4.svg index 5f7c586c84..a1119878b7 100644 --- a/symbols/shields/primary_9x4.svg +++ b/symbols/shields/primary_9x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_10x1.svg b/symbols/shields/secondary_10x1.svg index 1e90714d13..2560a1f365 100644 --- a/symbols/shields/secondary_10x1.svg +++ b/symbols/shields/secondary_10x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_10x2.svg b/symbols/shields/secondary_10x2.svg index be0935a57a..8c35769dae 100644 --- a/symbols/shields/secondary_10x2.svg +++ b/symbols/shields/secondary_10x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_10x3.svg b/symbols/shields/secondary_10x3.svg index ac58ec9c11..61f9df631b 100644 --- a/symbols/shields/secondary_10x3.svg +++ b/symbols/shields/secondary_10x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_10x4.svg b/symbols/shields/secondary_10x4.svg index b9afbee022..0271ce0905 100644 --- a/symbols/shields/secondary_10x4.svg +++ b/symbols/shields/secondary_10x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_11x1.svg b/symbols/shields/secondary_11x1.svg index c7f25ecbcc..a6b76f59cb 100644 --- a/symbols/shields/secondary_11x1.svg +++ b/symbols/shields/secondary_11x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_11x2.svg b/symbols/shields/secondary_11x2.svg index e79d00604c..ccb5bd3e9c 100644 --- a/symbols/shields/secondary_11x2.svg +++ b/symbols/shields/secondary_11x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_11x3.svg b/symbols/shields/secondary_11x3.svg index 16f52e22fe..14aebd1bac 100644 --- a/symbols/shields/secondary_11x3.svg +++ b/symbols/shields/secondary_11x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_11x4.svg b/symbols/shields/secondary_11x4.svg index 620e924518..6cc3cc656d 100644 --- a/symbols/shields/secondary_11x4.svg +++ b/symbols/shields/secondary_11x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_1x1.svg b/symbols/shields/secondary_1x1.svg index 8cfc21ec35..e6021dbaaa 100644 --- a/symbols/shields/secondary_1x1.svg +++ b/symbols/shields/secondary_1x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_1x2.svg b/symbols/shields/secondary_1x2.svg index 92e601459f..4d3f5aebad 100644 --- a/symbols/shields/secondary_1x2.svg +++ b/symbols/shields/secondary_1x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_1x3.svg b/symbols/shields/secondary_1x3.svg index d12fdb6cc0..77f26e3e6d 100644 --- a/symbols/shields/secondary_1x3.svg +++ b/symbols/shields/secondary_1x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_1x4.svg b/symbols/shields/secondary_1x4.svg index d46d7a0117..71c2635266 100644 --- a/symbols/shields/secondary_1x4.svg +++ b/symbols/shields/secondary_1x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_2x1.svg b/symbols/shields/secondary_2x1.svg index 5c3bacff84..451a8c147b 100644 --- a/symbols/shields/secondary_2x1.svg +++ b/symbols/shields/secondary_2x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_2x2.svg b/symbols/shields/secondary_2x2.svg index 02a6797763..9f7b1c41f6 100644 --- a/symbols/shields/secondary_2x2.svg +++ b/symbols/shields/secondary_2x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_2x3.svg b/symbols/shields/secondary_2x3.svg index 997347a3e3..e8416f4fc7 100644 --- a/symbols/shields/secondary_2x3.svg +++ b/symbols/shields/secondary_2x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_2x4.svg b/symbols/shields/secondary_2x4.svg index 5070a311a6..c23576a526 100644 --- a/symbols/shields/secondary_2x4.svg +++ b/symbols/shields/secondary_2x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_3x1.svg b/symbols/shields/secondary_3x1.svg index 62614bb553..a472458be0 100644 --- a/symbols/shields/secondary_3x1.svg +++ b/symbols/shields/secondary_3x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_3x2.svg b/symbols/shields/secondary_3x2.svg index 0d67319aca..cc073817a4 100644 --- a/symbols/shields/secondary_3x2.svg +++ b/symbols/shields/secondary_3x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_3x3.svg b/symbols/shields/secondary_3x3.svg index 60c373916d..14b0038a1a 100644 --- a/symbols/shields/secondary_3x3.svg +++ b/symbols/shields/secondary_3x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_3x4.svg b/symbols/shields/secondary_3x4.svg index 1be64ee45e..8d48049a88 100644 --- a/symbols/shields/secondary_3x4.svg +++ b/symbols/shields/secondary_3x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_4x1.svg b/symbols/shields/secondary_4x1.svg index 1c4b49997d..1ed87719f7 100644 --- a/symbols/shields/secondary_4x1.svg +++ b/symbols/shields/secondary_4x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_4x2.svg b/symbols/shields/secondary_4x2.svg index aaa82459eb..4e15c0274e 100644 --- a/symbols/shields/secondary_4x2.svg +++ b/symbols/shields/secondary_4x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_4x3.svg b/symbols/shields/secondary_4x3.svg index 1ce851dc99..6355564203 100644 --- a/symbols/shields/secondary_4x3.svg +++ b/symbols/shields/secondary_4x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_4x4.svg b/symbols/shields/secondary_4x4.svg index 3b0d65a155..a4f75d2fee 100644 --- a/symbols/shields/secondary_4x4.svg +++ b/symbols/shields/secondary_4x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_5x1.svg b/symbols/shields/secondary_5x1.svg index b24ddedbca..a565cd7be2 100644 --- a/symbols/shields/secondary_5x1.svg +++ b/symbols/shields/secondary_5x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_5x2.svg b/symbols/shields/secondary_5x2.svg index 2c1a6ea40b..3f479e0962 100644 --- a/symbols/shields/secondary_5x2.svg +++ b/symbols/shields/secondary_5x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_5x3.svg b/symbols/shields/secondary_5x3.svg index 354d394ba3..8ac905793e 100644 --- a/symbols/shields/secondary_5x3.svg +++ b/symbols/shields/secondary_5x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_5x4.svg b/symbols/shields/secondary_5x4.svg index 42e86fa664..cffee3f7ed 100644 --- a/symbols/shields/secondary_5x4.svg +++ b/symbols/shields/secondary_5x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_6x1.svg b/symbols/shields/secondary_6x1.svg index 16182c530a..78e6ffd117 100644 --- a/symbols/shields/secondary_6x1.svg +++ b/symbols/shields/secondary_6x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_6x2.svg b/symbols/shields/secondary_6x2.svg index 4408687c0b..036d4d8fb3 100644 --- a/symbols/shields/secondary_6x2.svg +++ b/symbols/shields/secondary_6x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_6x3.svg b/symbols/shields/secondary_6x3.svg index d6afdf15b3..cc7f8fd716 100644 --- a/symbols/shields/secondary_6x3.svg +++ b/symbols/shields/secondary_6x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_6x4.svg b/symbols/shields/secondary_6x4.svg index b0ed2525e2..2f352b1593 100644 --- a/symbols/shields/secondary_6x4.svg +++ b/symbols/shields/secondary_6x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_7x1.svg b/symbols/shields/secondary_7x1.svg index 42c46054eb..58d3dc4300 100644 --- a/symbols/shields/secondary_7x1.svg +++ b/symbols/shields/secondary_7x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_7x2.svg b/symbols/shields/secondary_7x2.svg index 3e3e03772c..35114c1b40 100644 --- a/symbols/shields/secondary_7x2.svg +++ b/symbols/shields/secondary_7x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_7x3.svg b/symbols/shields/secondary_7x3.svg index 6b1eba9f02..9629797965 100644 --- a/symbols/shields/secondary_7x3.svg +++ b/symbols/shields/secondary_7x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_7x4.svg b/symbols/shields/secondary_7x4.svg index 876cd78a35..8ea88f4832 100644 --- a/symbols/shields/secondary_7x4.svg +++ b/symbols/shields/secondary_7x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_8x1.svg b/symbols/shields/secondary_8x1.svg index 4c0ed5fa8b..5bad14737d 100644 --- a/symbols/shields/secondary_8x1.svg +++ b/symbols/shields/secondary_8x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_8x2.svg b/symbols/shields/secondary_8x2.svg index 836251661f..988097fa48 100644 --- a/symbols/shields/secondary_8x2.svg +++ b/symbols/shields/secondary_8x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_8x3.svg b/symbols/shields/secondary_8x3.svg index 2922686c68..492e1a5d75 100644 --- a/symbols/shields/secondary_8x3.svg +++ b/symbols/shields/secondary_8x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_8x4.svg b/symbols/shields/secondary_8x4.svg index 237ae3de20..094827fa4e 100644 --- a/symbols/shields/secondary_8x4.svg +++ b/symbols/shields/secondary_8x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_9x1.svg b/symbols/shields/secondary_9x1.svg index 9664a1b98c..846a8ac2b9 100644 --- a/symbols/shields/secondary_9x1.svg +++ b/symbols/shields/secondary_9x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_9x2.svg b/symbols/shields/secondary_9x2.svg index 64ae0bbebe..651d027f1c 100644 --- a/symbols/shields/secondary_9x2.svg +++ b/symbols/shields/secondary_9x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_9x3.svg b/symbols/shields/secondary_9x3.svg index 3bc7c80596..3978a66569 100644 --- a/symbols/shields/secondary_9x3.svg +++ b/symbols/shields/secondary_9x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/secondary_9x4.svg b/symbols/shields/secondary_9x4.svg index 8713f8d4f6..eefe72ee1c 100644 --- a/symbols/shields/secondary_9x4.svg +++ b/symbols/shields/secondary_9x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_10x1.svg b/symbols/shields/tertiary_10x1.svg index 76ed8784e3..98a4a3f81a 100644 --- a/symbols/shields/tertiary_10x1.svg +++ b/symbols/shields/tertiary_10x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_10x2.svg b/symbols/shields/tertiary_10x2.svg index aff10b5b00..553328d6d2 100644 --- a/symbols/shields/tertiary_10x2.svg +++ b/symbols/shields/tertiary_10x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_10x3.svg b/symbols/shields/tertiary_10x3.svg index c5fc4a8d3c..46d5ee1847 100644 --- a/symbols/shields/tertiary_10x3.svg +++ b/symbols/shields/tertiary_10x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_10x4.svg b/symbols/shields/tertiary_10x4.svg index c8eddf79dd..c1b667f997 100644 --- a/symbols/shields/tertiary_10x4.svg +++ b/symbols/shields/tertiary_10x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_11x1.svg b/symbols/shields/tertiary_11x1.svg index 9cc4f46a5f..f5e3e1abbc 100644 --- a/symbols/shields/tertiary_11x1.svg +++ b/symbols/shields/tertiary_11x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_11x2.svg b/symbols/shields/tertiary_11x2.svg index 81c1c229fd..9c16402e7d 100644 --- a/symbols/shields/tertiary_11x2.svg +++ b/symbols/shields/tertiary_11x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_11x3.svg b/symbols/shields/tertiary_11x3.svg index 5b18b8504b..5031d0f744 100644 --- a/symbols/shields/tertiary_11x3.svg +++ b/symbols/shields/tertiary_11x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_11x4.svg b/symbols/shields/tertiary_11x4.svg index ac1fec90a7..5dc7a06e1c 100644 --- a/symbols/shields/tertiary_11x4.svg +++ b/symbols/shields/tertiary_11x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_1x1.svg b/symbols/shields/tertiary_1x1.svg index ca221bc308..18f9b5ff9c 100644 --- a/symbols/shields/tertiary_1x1.svg +++ b/symbols/shields/tertiary_1x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_1x2.svg b/symbols/shields/tertiary_1x2.svg index 49e201cd3b..7d329870e1 100644 --- a/symbols/shields/tertiary_1x2.svg +++ b/symbols/shields/tertiary_1x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_1x3.svg b/symbols/shields/tertiary_1x3.svg index 8f2b51e27c..d1f2cb7e0a 100644 --- a/symbols/shields/tertiary_1x3.svg +++ b/symbols/shields/tertiary_1x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_1x4.svg b/symbols/shields/tertiary_1x4.svg index f5bffed918..a808bdb120 100644 --- a/symbols/shields/tertiary_1x4.svg +++ b/symbols/shields/tertiary_1x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_2x1.svg b/symbols/shields/tertiary_2x1.svg index 9c0c7a571f..e5caf5f835 100644 --- a/symbols/shields/tertiary_2x1.svg +++ b/symbols/shields/tertiary_2x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_2x2.svg b/symbols/shields/tertiary_2x2.svg index 141d76966d..7a4b38248c 100644 --- a/symbols/shields/tertiary_2x2.svg +++ b/symbols/shields/tertiary_2x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_2x3.svg b/symbols/shields/tertiary_2x3.svg index f82418a414..c8b2dc34c4 100644 --- a/symbols/shields/tertiary_2x3.svg +++ b/symbols/shields/tertiary_2x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_2x4.svg b/symbols/shields/tertiary_2x4.svg index 5d7eb09822..ce5f803d65 100644 --- a/symbols/shields/tertiary_2x4.svg +++ b/symbols/shields/tertiary_2x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_3x1.svg b/symbols/shields/tertiary_3x1.svg index 09d4ca6d9b..b57804ac5f 100644 --- a/symbols/shields/tertiary_3x1.svg +++ b/symbols/shields/tertiary_3x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_3x2.svg b/symbols/shields/tertiary_3x2.svg index 44a3df3d49..7899551799 100644 --- a/symbols/shields/tertiary_3x2.svg +++ b/symbols/shields/tertiary_3x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_3x3.svg b/symbols/shields/tertiary_3x3.svg index 57c476f5d4..5d0f7f4baf 100644 --- a/symbols/shields/tertiary_3x3.svg +++ b/symbols/shields/tertiary_3x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_3x4.svg b/symbols/shields/tertiary_3x4.svg index 607d0c4929..74a0f80584 100644 --- a/symbols/shields/tertiary_3x4.svg +++ b/symbols/shields/tertiary_3x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_4x1.svg b/symbols/shields/tertiary_4x1.svg index e24d04aade..c213f3bdc8 100644 --- a/symbols/shields/tertiary_4x1.svg +++ b/symbols/shields/tertiary_4x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_4x2.svg b/symbols/shields/tertiary_4x2.svg index 7f6907d998..bd17fb62e9 100644 --- a/symbols/shields/tertiary_4x2.svg +++ b/symbols/shields/tertiary_4x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_4x3.svg b/symbols/shields/tertiary_4x3.svg index a5e7f88392..3c2ccfa9b1 100644 --- a/symbols/shields/tertiary_4x3.svg +++ b/symbols/shields/tertiary_4x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_4x4.svg b/symbols/shields/tertiary_4x4.svg index 23892d87c7..b90aa5bad5 100644 --- a/symbols/shields/tertiary_4x4.svg +++ b/symbols/shields/tertiary_4x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_5x1.svg b/symbols/shields/tertiary_5x1.svg index e92206b4a0..1deb0f2f58 100644 --- a/symbols/shields/tertiary_5x1.svg +++ b/symbols/shields/tertiary_5x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_5x2.svg b/symbols/shields/tertiary_5x2.svg index 7cd283d107..98bcc5f0f4 100644 --- a/symbols/shields/tertiary_5x2.svg +++ b/symbols/shields/tertiary_5x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_5x3.svg b/symbols/shields/tertiary_5x3.svg index cf2718ac74..2dc0590095 100644 --- a/symbols/shields/tertiary_5x3.svg +++ b/symbols/shields/tertiary_5x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_5x4.svg b/symbols/shields/tertiary_5x4.svg index 0d69012a20..53ae0ff7fe 100644 --- a/symbols/shields/tertiary_5x4.svg +++ b/symbols/shields/tertiary_5x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_6x1.svg b/symbols/shields/tertiary_6x1.svg index 17699260e6..2dafa69cc4 100644 --- a/symbols/shields/tertiary_6x1.svg +++ b/symbols/shields/tertiary_6x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_6x2.svg b/symbols/shields/tertiary_6x2.svg index 1d4f5acd63..34740cd51f 100644 --- a/symbols/shields/tertiary_6x2.svg +++ b/symbols/shields/tertiary_6x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_6x3.svg b/symbols/shields/tertiary_6x3.svg index a207a3c182..dcdbd472a6 100644 --- a/symbols/shields/tertiary_6x3.svg +++ b/symbols/shields/tertiary_6x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_6x4.svg b/symbols/shields/tertiary_6x4.svg index 0248947cc8..d9c6622d48 100644 --- a/symbols/shields/tertiary_6x4.svg +++ b/symbols/shields/tertiary_6x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_7x1.svg b/symbols/shields/tertiary_7x1.svg index 3f47242362..90a28d0999 100644 --- a/symbols/shields/tertiary_7x1.svg +++ b/symbols/shields/tertiary_7x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_7x2.svg b/symbols/shields/tertiary_7x2.svg index d6baacc572..d49466c92a 100644 --- a/symbols/shields/tertiary_7x2.svg +++ b/symbols/shields/tertiary_7x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_7x3.svg b/symbols/shields/tertiary_7x3.svg index aeb9b0a8b9..62a1cc1a1d 100644 --- a/symbols/shields/tertiary_7x3.svg +++ b/symbols/shields/tertiary_7x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_7x4.svg b/symbols/shields/tertiary_7x4.svg index 3dd39e3c97..371d80b450 100644 --- a/symbols/shields/tertiary_7x4.svg +++ b/symbols/shields/tertiary_7x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_8x1.svg b/symbols/shields/tertiary_8x1.svg index e7877cba72..642995c1fd 100644 --- a/symbols/shields/tertiary_8x1.svg +++ b/symbols/shields/tertiary_8x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_8x2.svg b/symbols/shields/tertiary_8x2.svg index 9d4ea49d70..687811eeaf 100644 --- a/symbols/shields/tertiary_8x2.svg +++ b/symbols/shields/tertiary_8x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_8x3.svg b/symbols/shields/tertiary_8x3.svg index 3d2821f9ee..df7f3dbbe5 100644 --- a/symbols/shields/tertiary_8x3.svg +++ b/symbols/shields/tertiary_8x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_8x4.svg b/symbols/shields/tertiary_8x4.svg index 111b9bc262..14e0b6b6d2 100644 --- a/symbols/shields/tertiary_8x4.svg +++ b/symbols/shields/tertiary_8x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_9x1.svg b/symbols/shields/tertiary_9x1.svg index e943c7047f..ea93073899 100644 --- a/symbols/shields/tertiary_9x1.svg +++ b/symbols/shields/tertiary_9x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_9x2.svg b/symbols/shields/tertiary_9x2.svg index 16489073db..035602b6b1 100644 --- a/symbols/shields/tertiary_9x2.svg +++ b/symbols/shields/tertiary_9x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_9x3.svg b/symbols/shields/tertiary_9x3.svg index ed1b4a11fe..089c87742f 100644 --- a/symbols/shields/tertiary_9x3.svg +++ b/symbols/shields/tertiary_9x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/tertiary_9x4.svg b/symbols/shields/tertiary_9x4.svg index c5069273d4..369a74df6d 100644 --- a/symbols/shields/tertiary_9x4.svg +++ b/symbols/shields/tertiary_9x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_10x1.svg b/symbols/shields/trunk_10x1.svg index 09faf43854..0a44c3f1c0 100644 --- a/symbols/shields/trunk_10x1.svg +++ b/symbols/shields/trunk_10x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_10x2.svg b/symbols/shields/trunk_10x2.svg index 912c42c533..28380bef86 100644 --- a/symbols/shields/trunk_10x2.svg +++ b/symbols/shields/trunk_10x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_10x3.svg b/symbols/shields/trunk_10x3.svg index 343834f074..40985891cf 100644 --- a/symbols/shields/trunk_10x3.svg +++ b/symbols/shields/trunk_10x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_10x4.svg b/symbols/shields/trunk_10x4.svg index e681955179..02944118ca 100644 --- a/symbols/shields/trunk_10x4.svg +++ b/symbols/shields/trunk_10x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_11x1.svg b/symbols/shields/trunk_11x1.svg index f519e7c6a3..f04c0f1399 100644 --- a/symbols/shields/trunk_11x1.svg +++ b/symbols/shields/trunk_11x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_11x2.svg b/symbols/shields/trunk_11x2.svg index ea9b8af272..bd2166de4e 100644 --- a/symbols/shields/trunk_11x2.svg +++ b/symbols/shields/trunk_11x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_11x3.svg b/symbols/shields/trunk_11x3.svg index 7a0bc0596a..8a9565682e 100644 --- a/symbols/shields/trunk_11x3.svg +++ b/symbols/shields/trunk_11x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_11x4.svg b/symbols/shields/trunk_11x4.svg index 4d4cf4bb6c..bf75ec0c64 100644 --- a/symbols/shields/trunk_11x4.svg +++ b/symbols/shields/trunk_11x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_1x1.svg b/symbols/shields/trunk_1x1.svg index 3f87f83158..1a3a6b342a 100644 --- a/symbols/shields/trunk_1x1.svg +++ b/symbols/shields/trunk_1x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_1x2.svg b/symbols/shields/trunk_1x2.svg index 98c44866e8..44cabea968 100644 --- a/symbols/shields/trunk_1x2.svg +++ b/symbols/shields/trunk_1x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_1x3.svg b/symbols/shields/trunk_1x3.svg index 3c68953d55..827bb98b67 100644 --- a/symbols/shields/trunk_1x3.svg +++ b/symbols/shields/trunk_1x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_1x4.svg b/symbols/shields/trunk_1x4.svg index e56905f4ef..c30b9cc8b2 100644 --- a/symbols/shields/trunk_1x4.svg +++ b/symbols/shields/trunk_1x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_2x1.svg b/symbols/shields/trunk_2x1.svg index 0b661501e2..1f1d60c713 100644 --- a/symbols/shields/trunk_2x1.svg +++ b/symbols/shields/trunk_2x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_2x2.svg b/symbols/shields/trunk_2x2.svg index c2b60aebe9..9877baeacc 100644 --- a/symbols/shields/trunk_2x2.svg +++ b/symbols/shields/trunk_2x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_2x3.svg b/symbols/shields/trunk_2x3.svg index d24f803ef2..c9f1be8514 100644 --- a/symbols/shields/trunk_2x3.svg +++ b/symbols/shields/trunk_2x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_2x4.svg b/symbols/shields/trunk_2x4.svg index 422f2dd846..84f15f15e5 100644 --- a/symbols/shields/trunk_2x4.svg +++ b/symbols/shields/trunk_2x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_3x1.svg b/symbols/shields/trunk_3x1.svg index 801adcd3e5..9273f67904 100644 --- a/symbols/shields/trunk_3x1.svg +++ b/symbols/shields/trunk_3x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_3x2.svg b/symbols/shields/trunk_3x2.svg index 8bd3a5b736..d09de74c25 100644 --- a/symbols/shields/trunk_3x2.svg +++ b/symbols/shields/trunk_3x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_3x3.svg b/symbols/shields/trunk_3x3.svg index 2ad03f3f3d..1f036aa8d6 100644 --- a/symbols/shields/trunk_3x3.svg +++ b/symbols/shields/trunk_3x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_3x4.svg b/symbols/shields/trunk_3x4.svg index ff6becb9a8..ecdf1295ca 100644 --- a/symbols/shields/trunk_3x4.svg +++ b/symbols/shields/trunk_3x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_4x1.svg b/symbols/shields/trunk_4x1.svg index b56d54c598..958daf7269 100644 --- a/symbols/shields/trunk_4x1.svg +++ b/symbols/shields/trunk_4x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_4x2.svg b/symbols/shields/trunk_4x2.svg index 68e452721c..4838ff4524 100644 --- a/symbols/shields/trunk_4x2.svg +++ b/symbols/shields/trunk_4x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_4x3.svg b/symbols/shields/trunk_4x3.svg index b1e899e77b..9365b81650 100644 --- a/symbols/shields/trunk_4x3.svg +++ b/symbols/shields/trunk_4x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_4x4.svg b/symbols/shields/trunk_4x4.svg index f330d27afa..7ba009129f 100644 --- a/symbols/shields/trunk_4x4.svg +++ b/symbols/shields/trunk_4x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_5x1.svg b/symbols/shields/trunk_5x1.svg index 5765608c98..db79926aea 100644 --- a/symbols/shields/trunk_5x1.svg +++ b/symbols/shields/trunk_5x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_5x2.svg b/symbols/shields/trunk_5x2.svg index 6ef419d104..ceadcca652 100644 --- a/symbols/shields/trunk_5x2.svg +++ b/symbols/shields/trunk_5x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_5x3.svg b/symbols/shields/trunk_5x3.svg index b41feabb9b..f8f7d9656d 100644 --- a/symbols/shields/trunk_5x3.svg +++ b/symbols/shields/trunk_5x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_5x4.svg b/symbols/shields/trunk_5x4.svg index eb416b48ad..2d1ec07f2a 100644 --- a/symbols/shields/trunk_5x4.svg +++ b/symbols/shields/trunk_5x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_6x1.svg b/symbols/shields/trunk_6x1.svg index b65e29d52a..614f46c852 100644 --- a/symbols/shields/trunk_6x1.svg +++ b/symbols/shields/trunk_6x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_6x2.svg b/symbols/shields/trunk_6x2.svg index 56a00ccc19..054e159f3d 100644 --- a/symbols/shields/trunk_6x2.svg +++ b/symbols/shields/trunk_6x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_6x3.svg b/symbols/shields/trunk_6x3.svg index b3253194ff..fd6c7a5307 100644 --- a/symbols/shields/trunk_6x3.svg +++ b/symbols/shields/trunk_6x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_6x4.svg b/symbols/shields/trunk_6x4.svg index 0b8e3f0cd5..a752375b39 100644 --- a/symbols/shields/trunk_6x4.svg +++ b/symbols/shields/trunk_6x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_7x1.svg b/symbols/shields/trunk_7x1.svg index fe0a215338..fbbe2b5974 100644 --- a/symbols/shields/trunk_7x1.svg +++ b/symbols/shields/trunk_7x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_7x2.svg b/symbols/shields/trunk_7x2.svg index cae79f339c..bf132dcab9 100644 --- a/symbols/shields/trunk_7x2.svg +++ b/symbols/shields/trunk_7x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_7x3.svg b/symbols/shields/trunk_7x3.svg index b68c25765c..b2c8fe5864 100644 --- a/symbols/shields/trunk_7x3.svg +++ b/symbols/shields/trunk_7x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_7x4.svg b/symbols/shields/trunk_7x4.svg index e98e374db5..e27a0aef24 100644 --- a/symbols/shields/trunk_7x4.svg +++ b/symbols/shields/trunk_7x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_8x1.svg b/symbols/shields/trunk_8x1.svg index fe6a8f040f..db507f901b 100644 --- a/symbols/shields/trunk_8x1.svg +++ b/symbols/shields/trunk_8x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_8x2.svg b/symbols/shields/trunk_8x2.svg index 225b563b21..e37ee1f2f8 100644 --- a/symbols/shields/trunk_8x2.svg +++ b/symbols/shields/trunk_8x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_8x3.svg b/symbols/shields/trunk_8x3.svg index 7ad16ac922..05be550feb 100644 --- a/symbols/shields/trunk_8x3.svg +++ b/symbols/shields/trunk_8x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_8x4.svg b/symbols/shields/trunk_8x4.svg index d8e01374b5..c8b04dc670 100644 --- a/symbols/shields/trunk_8x4.svg +++ b/symbols/shields/trunk_8x4.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_9x1.svg b/symbols/shields/trunk_9x1.svg index 80b5abaa02..ac0bc51ef8 100644 --- a/symbols/shields/trunk_9x1.svg +++ b/symbols/shields/trunk_9x1.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_9x2.svg b/symbols/shields/trunk_9x2.svg index f37cd3408f..67dcb337d5 100644 --- a/symbols/shields/trunk_9x2.svg +++ b/symbols/shields/trunk_9x2.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_9x3.svg b/symbols/shields/trunk_9x3.svg index c2202e43af..674677f7db 100644 --- a/symbols/shields/trunk_9x3.svg +++ b/symbols/shields/trunk_9x3.svg @@ -1,5 +1,5 @@ - + - + diff --git a/symbols/shields/trunk_9x4.svg b/symbols/shields/trunk_9x4.svg index 648e6d5e93..99097132ef 100644 --- a/symbols/shields/trunk_9x4.svg +++ b/symbols/shields/trunk_9x4.svg @@ -1,5 +1,5 @@ - + - +