X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.maps.server%2Fserver%2Ftm2%2Fmapbox-studio-light.tm2%2Fstyle.mss;fp=org.simantics.maps.server%2Fserver%2Ftm2%2Fmapbox-studio-light.tm2%2Fstyle.mss;h=80bd0a11b5e4fca3e069cb4dd9ae209d3366cf11;hb=2529be6d456deeb07c128603ce4971f1dc29b695;hp=0000000000000000000000000000000000000000;hpb=2636fc31c16c23711cf2b06a4ae8537bba9c1d35;p=simantics%2Fdistrict.git diff --git a/org.simantics.maps.server/server/tm2/mapbox-studio-light.tm2/style.mss b/org.simantics.maps.server/server/tm2/mapbox-studio-light.tm2/style.mss new file mode 100644 index 00000000..80bd0a11 --- /dev/null +++ b/org.simantics.maps.server/server/tm2/mapbox-studio-light.tm2/style.mss @@ -0,0 +1,126 @@ +// Languages: name (local), name_en, name_fr, name_es, name_de +@name: '[name]'; + +// Fonts // +@sans: 'Arial Unicode MS Regular'; +@sans_bold: 'Arial Unicode MS Bold'; + +/* +This style is designed to be easily recolored by adjusting the color +variables below. For predicatable feature relationships, +maintain or invert existing value (light to dark) scale. +*/ + +// Color palette // +@road: #fff; +@land: #eee; + +@fill1: #fff; +@fill2: #bbb; +@fill3: #777; +@fill4: #000; + +@text: #777; + +Map { background-color: @land; } + +// Political boundaries // +#boundary[admin_level=2] { + line-join: round; + line-color: mix(@fill3,@fill2,50); + line-width: 1; + [zoom>=5] { line-width: 1.4; } + [zoom>=6] { line-width: 1.8; } + [zoom>=8] { line-width: 2; } + [zoom>=10] { line-width: 3; } + [disputed=1] { line-dasharray: 4,4; } +} + +#boundary[admin_level>2][admin_level<=4] { + line-join: round; + line-color: @fill2; + line-width: 1; + line-dasharray: 3,2; + [zoom>=6] { line-width: 1.5; } + [zoom>=8] { line-width: 1.8; } +} + +// Land Features // +#landuse[class='cemetery'], +#park, +#landcover[class='wood'], +#landcover[class='wetland'] { + polygon-fill: darken(@land,3); + [zoom>=15] { polygon-fill:mix(@land,@fill4,95); } +} + +#landuse[class='pitch'], +#landcover[class='sand'] { + polygon-fill: mix(@land,@fill4,90); +} + +#landuse[class='hospital'], +#landuse[class='industrial'], +#landuse[class='school'] { + polygon-fill: mix(@land,@fill1,95); +} + +#building { + polygon-fill: mix(@fill2,@land,25); + [zoom>=16]{ polygon-fill: mix(@fill2,@land,50);} +} + +#aeroway { + ['mapnik::geometry_type'=3][class!='apron'] { + polygon-fill: mix(@fill2,@land,25); + [zoom>=16]{ polygon-fill: mix(@fill2,@land,50);} + } + ['mapnik::geometry_type'=2] { + line-color: mix(@fill2,@land,25); + line-width: 1; + [zoom>=13][class='runway'] { line-width: 4; } + [zoom>=16] { + [class='runway'] { line-width: 6; } + line-width: 3; + line-color: mix(@fill2,@land,50); + } + } +} + +// Water Features // +#water { + ::shadow { + polygon-fill: mix(@land,@fill4,75); + } + ::fill { + // a fill and overlay comp-op lighten the polygon- + // fill from ::shadow. + polygon-fill: @land; + comp-op: soft-light; + // blurring reveals the polygon fill from ::shadow around + // the edges of the water + image-filters: agg-stack-blur(10,10); + } +} + +// Water color is calculated by sampling the resulting color from +// the soft-light comp-op in the #water layer style above. +@water: #d1d1d1; + +#waterway { + [class='river'], + [class='canal'] { + line-color: @water; + line-width: 0.5; + [zoom>=12] { line-width: 1; } + [zoom>=14] { line-width: 2; } + [zoom>=16] { line-width: 3; } + } + [class='stream'] { + line-color: @water; + line-width: 0.5; + [zoom>=14] { line-width: 1; } + [zoom>=16] { line-width: 2; } + [zoom>=18] { line-width: 3; } + } +}