aboutsummaryrefslogtreecommitdiffstats
path: root/examples/Styles/SatelliteStreets.elm
diff options
context:
space:
mode:
authorJakub Hampl <kopomir@gmail.com>2019-02-14 15:23:49 +0000
committerGitHub <noreply@github.com>2019-02-14 15:23:49 +0000
commit6bd5f8ccbd8c44c3311ef36b0e2de9ede4fa71ed (patch)
treede40a36d34cb734c2765a705506436f8b38e28a9 /examples/Styles/SatelliteStreets.elm
parentf0c36a3d49fad46e0fb6cafeb7a021dd5d775993 (diff)
New Style Generator (#8)
Diffstat (limited to 'examples/Styles/SatelliteStreets.elm')
-rw-r--r--examples/Styles/SatelliteStreets.elm2939
1 files changed, 2939 insertions, 0 deletions
diff --git a/examples/Styles/SatelliteStreets.elm b/examples/Styles/SatelliteStreets.elm
new file mode 100644
index 0000000..b51050d
--- /dev/null
+++ b/examples/Styles/SatelliteStreets.elm
@@ -0,0 +1,2939 @@
+module Styles.SatelliteStreets exposing (style)
+
+import Mapbox.Expression as E exposing (false, float, str, true)
+import Mapbox.Layer as Layer
+import Mapbox.Source as Source
+import Mapbox.Style as Style exposing (Style(..))
+
+
+style : Style
+style =
+ Style
+ { transition = Style.defaultTransition
+ , light = Style.defaultLight
+ , layers =
+ [ Layer.background "background" [ Layer.backgroundColor (E.rgba 4 7 14 1) ]
+ , Layer.raster "mapbox-mapbox-satellite" "mapbox://mapbox.satellite" []
+ , Layer.line "tunnel-secondary-tertiary case"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.matchesStr [ ( "secondary", true ), ( "tertiary", true ) ] false
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.rgba 255 255 255 1)
+ , Layer.lineOpacity
+ (E.zoom
+ |> E.interpolate (E.Exponential 1) [ ( 13, float 0 ), ( 13.5, float 0.5 ), ( 16, float 0.75 ), ( 18, float 0.35 ) ]
+ )
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 2 ) ])
+ , Layer.lineDasharray (E.floats [ 3, 3 ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineGapWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 12 ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-street_limited case"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "street_limited")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.rgba 255 255 255 1)
+ , Layer.lineOpacity
+ (E.zoom
+ |> E.interpolate (E.Exponential 1) [ ( 13, float 0 ), ( 13.5, float 0.5 ), ( 16, float 0.75 ), ( 18, float 0.35 ) ]
+ )
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 2 ) ])
+ , Layer.lineDasharray (E.floats [ 3, 3 ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineGapWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 12 ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-street case"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "street")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.rgba 242 232 232 1)
+ , Layer.lineOpacity
+ (E.zoom
+ |> E.interpolate (E.Exponential 1) [ ( 13, float 0 ), ( 13.5, float 0.5 ), ( 16, float 0.75 ), ( 18, float 0.35 ) ]
+ )
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 2 ) ])
+ , Layer.lineDasharray (E.floats [ 3, 3 ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineGapWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 32 ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-primary-case"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "primary")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.rgba 255 255 255 1)
+ , Layer.lineOpacity
+ (E.zoom
+ |> E.interpolate (E.Exponential 1) [ ( 13, float 0 ), ( 13.5, float 0.5 ), ( 16, float 0.75 ), ( 18, float 0.35 ) ]
+ )
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 2 ) ])
+ , Layer.lineDasharray (E.floats [ 3, 3 ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineGapWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 18 ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-trunk_link-case"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ , E.getProperty (str "type") |> E.isEqual (str "trunk_link")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.rgba 242 232 232 1)
+ , Layer.lineOpacity
+ (E.zoom
+ |> E.interpolate (E.Exponential 1) [ ( 13, float 0 ), ( 13.5, float 0.5 ), ( 16, float 0.75 ), ( 18, float 0.35 ) ]
+ )
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 2 ) ])
+ , Layer.lineDasharray (E.floats [ 3, 3 ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineGapWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 32 ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-motorway_link-case"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "motorway_link")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.rgba 255 255 255 1)
+ , Layer.lineOpacity
+ (E.zoom
+ |> E.interpolate (E.Exponential 1) [ ( 13, float 0 ), ( 13.5, float 0.5 ), ( 16, float 0.75 ), ( 18, float 0.35 ) ]
+ )
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 12, float 0.5 ), ( 16, float 2 ) ])
+ , Layer.lineDasharray (E.floats [ 3, 3 ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineGapWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 18 ) ])
+ , Layer.lineCap (E.zoom |> E.step E.lineCapRound [ ( 12, E.lineCapButt ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-trunk-case"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "trunk")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.rgba 255 255 255 1)
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 0.75 ), ( 16, float 0.5 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 16, float 2 ) ])
+ , Layer.lineDasharray (E.floats [ 3, 3 ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineGapWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 18 ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-motorway-case"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "motorway")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.rgba 255 255 255 1)
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 0.75 ), ( 16, float 0.5 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 16, float 2 ) ])
+ , Layer.lineDasharray (E.floats [ 3, 3 ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineGapWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 18 ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-path"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "path")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ , E.getProperty (str "type") |> E.notEqual (str "steps")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.rgba 219 219 219 1)
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 0.25 ), ( 15, float 0.4 ), ( 16, float 0.75 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 14, float 1 ), ( 18, float 2.5 ) ])
+ , Layer.lineDasharray
+ (E.zoom
+ |> E.step (E.floats [ 1, 0 ]) [ ( 15, E.floats [ 1.75, 1 ] ), ( 16, E.floats [ 1, 0.75 ] ), ( 17, E.floats [ 1, 0.5 ] ) ]
+ )
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-trunk_link"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ , E.getProperty (str "type") |> E.isEqual (str "trunk_link")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.rgba 242 232 232 1)
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 0.75 ), ( 16, float 0 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 12, float 0.75 ), ( 20, float 2 ) ])
+ , Layer.lineDasharray (E.floats [ 1, 0 ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineCap E.lineCapRound
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-motorway_link"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "motorway_link")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ ]
+ ]
+ )
+ , Layer.lineColor
+ (E.zoom
+ |> E.interpolate (E.Exponential 1) [ ( 5, E.rgba 163 131 96 1 ), ( 14.5, E.rgba 208 145 76 1 ), ( 18, E.rgba 209 210 208 1 ) ]
+ )
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 0.75 ), ( 16, float 0 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 18 ) ])
+ , Layer.lineDasharray (E.floats [ 1, 0 ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineCap E.lineCapRound
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-pedestrian case"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.minzoom 13
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "pedestrian")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.rgba 249 247 244 1)
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 0.75 ), ( 16, float 0.5 ) ])
+ , Layer.lineWidth (float 1)
+ , Layer.lineDasharray (E.zoom |> E.step (E.floats [ 1, 0 ]) [ ( 15, E.floats [ 1.5, 1 ] ), ( 16, E.floats [ 1, 2 ] ) ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineGapWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 14, float 0.5 ), ( 18, float 12 ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-service-link-track case"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.minzoom 14
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class")
+ |> E.matchesStr [ ( "link", true ), ( "service", true ), ( "track", true ) ] false
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ , E.getProperty (str "type") |> E.notEqual (str "trunk_link")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.zoom |> E.interpolate (E.Exponential 1) [ ( 7, E.rgba 143 141 141 1 ), ( 10, E.rgba 191 191 191 1 ) ])
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 0.75 ), ( 16, float 0.5 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 12 ) ])
+ , Layer.lineDasharray (E.floats [ 1, 0 ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-street_limited"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "street_limited")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.rgba 43 42 42 1)
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 12, float 0 ), ( 14, float 0.5 ), ( 16, float 0 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 10.5, float 0.5 ), ( 12, float 4 ) ])
+ , Layer.lineDasharray (E.floats [ 1, 0 ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-street"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "street")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.rgba 43 42 42 1)
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 12, float 0 ), ( 14, float 0.5 ), ( 16, float 0 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 10.5, float 0.5 ), ( 12, float 4 ) ])
+ , Layer.lineDasharray (E.floats [ 1, 0 ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-secondary-tertiary"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.matchesStr [ ( "secondary", true ), ( "tertiary", true ) ] false
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.rgba 43 42 42 1)
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1.2) [ ( 11.5, float 0 ), ( 12.5, float 0.65 ), ( 16, float 0 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 16, float 12 ) ])
+ , Layer.lineDasharray (E.floats [ 1, 0 ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineCap E.lineCapRound
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-primary"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "primary")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.rgba 212 210 210 1)
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 0.75 ), ( 16, float 0 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 18 ) ])
+ , Layer.lineDasharray (E.floats [ 1, 0 ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineCap (E.zoom |> E.step E.lineCapRound [ ( 12, E.lineCapButt ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.symbol "tunnel-oneway-arrows-blue-minor"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.minzoom 15
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class")
+ |> E.matchesStr [ ( "link", true ), ( "path", true ), ( "pedestrian", true ), ( "service", true ), ( "track", true ) ] false
+ , E.getProperty (str "oneway") |> E.isEqual (str "true")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ , E.getProperty (str "type") |> E.notEqual (str "trunk_link")
+ ]
+ ]
+ )
+ , Layer.iconImage (str "oneway-spaced-white-large")
+ ]
+ , Layer.symbol "tunnel-oneway-arrows-blue-major"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.minzoom 15
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class")
+ |> E.matchesStr
+ [ ( "primary", true )
+ , ( "secondary", true )
+ , ( "street", true )
+ , ( "street_limited", true )
+ , ( "tertiary", true )
+ ]
+ false
+ , E.getProperty (str "oneway") |> E.isEqual (str "true")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ , E.getProperty (str "type") |> E.notEqual (str "trunk_link")
+ ]
+ ]
+ )
+ , Layer.iconImage (str "oneway-spaced-white-large")
+ ]
+ , Layer.line "tunnel-trunk"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "trunk")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, E.rgba 206 193 68 1 ), ( 18, E.rgba 209 210 208 1 ) ])
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 0.75 ), ( 16, float 0 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 18 ) ])
+ , Layer.lineDasharray (E.floats [ 1, 0 ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineCap E.lineCapRound
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "tunnel-motorway"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "motorway")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ ]
+ ]
+ )
+ , Layer.lineColor
+ (E.zoom
+ |> E.interpolate (E.Exponential 1) [ ( 5, E.rgba 163 131 96 1 ), ( 14.5, E.rgba 208 145 76 1 ), ( 18, E.rgba 209 210 208 1 ) ]
+ )
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 0.75 ), ( 16, float 0 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 18, float 18 ) ])
+ , Layer.lineDasharray (E.floats [ 1, 0 ])
+ , Layer.lineBlur (float 0)
+ , Layer.lineCap E.lineCapRound
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.symbol "tunnel-oneway-arrows-white"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.minzoom 15
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class")
+ |> E.matchesStr [ ( "link", true ), ( "motorway", true ), ( "motorway_link", true ), ( "trunk", true ) ] false
+ , E.getProperty (str "oneway") |> E.isEqual (str "true")
+ , E.getProperty (str "structure") |> E.isEqual (str "tunnel")
+ , E.getProperty (str "type")
+ |> E.matchesStr [ ( "primary_link", false ), ( "secondary_link", false ), ( "tertiary_link", false ) ] true
+ ]
+ ]
+ )
+ , Layer.iconImage (str "oneway-spaced-white-large")
+ , Layer.symbolPlacement E.symbolPlacementLine
+ , Layer.symbolSpacing (float 150)
+ , Layer.iconPadding (float 2)
+ ]
+ , Layer.line "ferry"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter (E.all [ E.geometryType |> E.isEqual (str "LineString"), E.getProperty (str "type") |> E.isEqual (str "ferry") ])
+ , Layer.lineColor (E.rgba 219 219 219 1)
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 7.5, float 0 ), ( 8, float 0.15 ), ( 16, float 0.5 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 1 ), ( 18, float 2.5 ) ])
+ , Layer.lineDasharray (E.zoom |> E.step (E.floats [ 3.5, 2 ]) [ ( 14, E.floats [ 2, 1 ] ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "ferry, auto"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.getProperty (str "type") |> E.isEqual (str "ferry_auto")
+ ]
+ )
+ , Layer.lineColor (E.rgba 219 219 219 1)
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 7.5, float 0 ), ( 8, float 0.15 ), ( 16, float 0.5 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 1 ), ( 18, float 2.5 ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.symbol "ferry-label"
+ "composite"
+ [ Layer.sourceLayer "road_label"
+ , Layer.filter (E.getProperty (str "class") |> E.isEqual (str "ferry"))
+ , Layer.textColor (E.rgba 247 248 252 1)
+ , Layer.textOpacity (float 1)
+ , Layer.textHaloColor (E.rgba 7 7 7 1)
+ , Layer.textHaloBlur (float 0.5)
+ , Layer.textHaloWidth (float 1.75)
+ , Layer.textField (E.toFormattedText (E.getProperty (str "name_en")))
+ , Layer.textFont (E.strings [ "DIN Offc Pro Medium", "Arial Unicode MS Regular" ])
+ , Layer.textSize (E.zoom |> E.interpolate (E.Exponential 1) [ ( 16, float 11 ), ( 20, float 13 ) ])
+ , Layer.textLetterSpacing (float 0.01)
+ , Layer.textLineHeight (float 1.1)
+ , Layer.textMaxWidth (float 7)
+ , Layer.symbolPlacement E.symbolPlacementLine
+ ]
+ , Layer.line "road-link case"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "link")
+ , E.getProperty (str "structure") |> E.matchesStr [ ( "bridge", false ), ( "tunnel", false ) ] true
+ , E.getProperty (str "type") |> E.notEqual (str "trunk_link")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.zoom |> E.interpolate (E.Exponential 1) [ ( 7, E.rgba 143 141 141 1 ), ( 10, E.rgba 191 191 191 1 ) ])
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 1 ), ( 16, float 0 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 12, float 0.75 ), ( 20, float 2 ) ])
+ , Layer.lineGapWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 14, float 0.5 ), ( 18, float 12 ) ])
+ , Layer.lineCap (E.zoom |> E.step E.lineCapRound [ ( 12, E.lineCapButt ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "road-motorway_link-case"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.minzoom 10
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "motorway_link")
+ , E.getProperty (str "structure") |> E.matchesStr [ ( "bridge", false ), ( "tunnel", false ) ] true
+ ]
+ ]
+ )
+ , Layer.lineColor
+ (E.zoom
+ |> E.interpolate (E.Exponential 1) [ ( 9, E.rgba 66 65 65 1 ), ( 12, E.rgba 79 78 78 1 ), ( 15, E.rgba 64 63 63 1 ) ]
+ )
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 1 ), ( 16, float 0 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 12, float 0.5 ), ( 16, float 2 ) ])
+ , Layer.lineGapWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 12, float 0.5 ), ( 14, float 2 ) ])
+ , Layer.lineCap (E.zoom |> E.step E.lineCapRound [ ( 12, E.lineCapButt ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "road-primary-case"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.maxzoom 15
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "primary")
+ , E.getProperty (str "structure") |> E.matchesStr [ ( "bridge", false ), ( "tunnel", false ) ] true
+ ]
+ ]
+ )
+ , Layer.lineColor
+ (E.zoom
+ |> E.interpolate (E.Exponential 1) [ ( 11, E.rgba 43 42 42 1 ), ( 14, E.rgba 137 137 132 1 ), ( 18, E.rgba 33 32 32 1 ) ]
+ )
+ , Layer.lineOpacity
+ (E.zoom
+ |> E.interpolate (E.Exponential 1) [ ( 7, float 0 ), ( 10, float 0.5 ), ( 14, float 1 ), ( 16, float 0 ) ]
+ )
+ , Layer.lineGapWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 1 ), ( 12, float 2 ), ( 18, float 1 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 16, float 2 ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "road-trunk_link-case"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.minzoom 11
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "structure") |> E.matchesStr [ ( "bridge", false ), ( "tunnel", false ) ] true
+ , E.getProperty (str "type") |> E.isEqual (str "trunk_link")
+ ]
+ ]
+ )
+ , Layer.lineColor
+ (E.zoom
+ |> E.interpolate (E.Exponential 1) [ ( 9, E.rgba 66 65 65 1 ), ( 12, E.rgba 79 78 78 1 ), ( 15, E.rgba 64 63 63 1 ) ]
+ )
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 11, float 0.75 ), ( 12, float 0.65 ), ( 18, float 0 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 12, float 0.75 ), ( 14, float 2 ) ])
+ , Layer.lineGapWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 12, float 0.5 ), ( 14, float 2 ) ])
+ , Layer.lineCap (E.zoom |> E.step E.lineCapRound [ ( 12, E.lineCapButt ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "road-trunk-case"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "trunk")
+ , E.getProperty (str "structure") |> E.matchesStr [ ( "bridge", false ), ( "tunnel", false ) ] true
+ ]
+ ]
+ )
+ , Layer.lineGapWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 1 ), ( 12, float 2 ), ( 18, float 1 ) ])
+ , Layer.lineColor (E.zoom |> E.interpolate (E.Exponential 1) [ ( 9, E.rgba 66 65 65 1 ), ( 12, E.rgba 79 78 78 1 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1) [ ( 5, float 0.5 ), ( 18, float 2 ) ])
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 1 ), ( 16, float 0 ) ])
+ , Layer.lineCap (E.zoom |> E.step E.lineCapRound [ ( 11, E.lineCapButt ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "road-motorway-case"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "motorway")
+ , E.getProperty (str "structure") |> E.matchesStr [ ( "bridge", false ), ( "tunnel", false ) ] true
+ ]
+ ]
+ )
+ , Layer.lineGapWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 1 ), ( 12, float 2 ), ( 18, float 1 ) ])
+ , Layer.lineColor
+ (E.zoom
+ |> E.interpolate (E.Exponential 1) [ ( 9, E.rgba 66 65 65 1 ), ( 12, E.rgba 79 78 78 1 ), ( 15, E.rgba 64 63 63 1 ) ]
+ )
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 5, float 0.75 ), ( 16, float 2 ) ])
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 1 ), ( 16, float 0 ) ])
+ , Layer.lineCap (E.zoom |> E.step E.lineCapRound [ ( 11, E.lineCapButt ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "road-path"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "path")
+ , E.getProperty (str "structure") |> E.matchesStr [ ( "bridge", false ), ( "tunnel", false ) ] true
+ , E.getProperty (str "type")
+ |> E.matchesStr [ ( "crossing", false ), ( "piste", false ), ( "sidewalk", false ), ( "steps", false ) ] true
+ ]
+ ]
+ )
+ , Layer.lineColor (E.rgba 219 219 219 1)
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 14, float 1 ), ( 18, float 2.5 ) ])
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 0.25 ), ( 15, float 0.4 ), ( 16, float 0.75 ) ])
+ , Layer.lineDasharray
+ (E.zoom
+ |> E.step (E.floats [ 1, 0 ]) [ ( 15, E.floats [ 1.75, 1 ] ), ( 16, E.floats [ 1, 0.75 ] ), ( 17, E.floats [ 1, 0.5 ] ) ]
+ )
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "road-trunk_link"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.minzoom 11
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "structure") |> E.matchesStr [ ( "bridge", false ), ( "tunnel", false ) ] true
+ , E.getProperty (str "type") |> E.isEqual (str "trunk_link")
+ ]
+ ]
+ )
+ , Layer.lineColor (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, E.rgba 184 172 64 1 ), ( 18, E.rgba 209 210 208 1 ) ])
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 1 ), ( 16, float 0 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 12, float 0.5 ), ( 14, float 2 ) ])
+ , Layer.lineCap (E.zoom |> E.step E.lineCapRound [ ( 12, E.lineCapButt ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "road-motorway_link"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.minzoom 10
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+ , E.all
+ [ E.getProperty (str "class") |> E.isEqual (str "motorway_link")
+ , E.getProperty (str "structure") |> E.matchesStr [ ( "bridge", false ), ( "tunnel", false ) ] true
+ ]
+ ]
+ )
+ , Layer.lineColor
+ (E.zoom
+ |> E.interpolate (E.Exponential 1) [ ( 5, E.rgba 163 131 96 1 ), ( 14.5, E.rgba 208 145 76 1 ), ( 18, E.rgba 209 210 208 1 ) ]
+ )
+ , Layer.lineOpacity (E.zoom |> E.interpolate (E.Exponential 1) [ ( 14, float 1 ), ( 16, float 0 ) ])
+ , Layer.lineWidth (E.zoom |> E.interpolate (E.Exponential 1.5) [ ( 12, float 0.5 ), ( 14, float 2 ) ])
+ , Layer.lineCap (E.zoom |> E.step E.lineCapRound [ ( 12, E.lineCapButt ) ])
+ , Layer.lineJoin E.lineJoinRound
+ ]
+ , Layer.line "road-pedestrian"
+ "composite"
+ [ Layer.sourceLayer "road"
+ , Layer.minzoom 12
+ , Layer.filter
+ (E.all
+ [ E.geometryType |> E.isEqual (str "LineString")
+