@@ -3,6 +3,7 @@ import { getBaseUrl, normalizeBaseUrl } from '@/utils/base-url';
33
44export const VALHALLA_SOURCE_ID = 'valhalla-tiles' ;
55export const VALHALLA_EDGES_LAYER_ID = 'valhalla-edges' ;
6+ export const VALHALLA_SHORTCUTS_LAYER_ID = 'valhalla-shortcuts' ;
67export const VALHALLA_NODES_LAYER_ID = 'valhalla-nodes' ;
78
89// Pre-encoded JSON: {"tile":{"z":{z},"x":{x},"y":{y}}}
@@ -67,6 +68,50 @@ export const VALHALLA_EDGES_LAYER: LayerSpecification = {
6768 } ,
6869} ;
6970
71+ // Shortcuts is now a separate tile layer.
72+ // and It uses the same line style as edges.
73+ export const VALHALLA_SHORTCUTS_LAYER : LayerSpecification = {
74+ id : VALHALLA_SHORTCUTS_LAYER_ID ,
75+ type : 'line' ,
76+ source : VALHALLA_SOURCE_ID ,
77+ 'source-layer' : 'shortcuts' ,
78+ minzoom : 7 ,
79+ maxzoom : 22 ,
80+ filter : [ 'all' ] ,
81+ layout : { visibility : 'visible' } ,
82+ paint : {
83+ 'line-color' : [
84+ 'match' ,
85+ [ 'get' , 'tile_level' ] ,
86+ 0 ,
87+ '#ff0000' ,
88+ 1 ,
89+ '#ff8800' ,
90+ 2 ,
91+ '#ffdd00' ,
92+ '#ff00ff' ,
93+ ] ,
94+ 'line-width' : [
95+ 'interpolate' ,
96+ [ 'exponential' , 1.5 ] ,
97+ [ 'zoom' ] ,
98+ 12 ,
99+ [ 'match' , [ 'get' , 'tile_level' ] , 0 , 3 , 1 , 2 , 2 , 1 , 2 ] ,
100+ 14 ,
101+ [ 'match' , [ 'get' , 'tile_level' ] , 0 , 4 , 1 , 3 , 2 , 2 , 3 ] ,
102+ 16 ,
103+ [ 'match' , [ 'get' , 'tile_level' ] , 0 , 6 , 1 , 4 , 2 , 3 , 4 ] ,
104+ 18 ,
105+ [ 'match' , [ 'get' , 'tile_level' ] , 0 , 8 , 1 , 6 , 2 , 4 , 6 ] ,
106+ 20 ,
107+ [ 'match' , [ 'get' , 'tile_level' ] , 0 , 10 , 1 , 8 , 2 , 6 , 8 ] ,
108+ 22 ,
109+ [ 'match' , [ 'get' , 'tile_level' ] , 0 , 12 , 1 , 10 , 2 , 8 , 10 ] ,
110+ ] ,
111+ 'line-opacity' : 0.8 ,
112+ } ,
113+ } ;
114+
70115export const VALHALLA_NODES_LAYER : LayerSpecification = {
71116 id : VALHALLA_NODES_LAYER_ID ,
72117 type : 'circle' ,
@@ -85,5 +130,6 @@ export const VALHALLA_NODES_LAYER: LayerSpecification = {
85130
86131export const VALHALLA_LAYERS : LayerSpecification [ ] = [
87132 VALHALLA_EDGES_LAYER ,
133+ VALHALLA_SHORTCUTS_LAYER ,
88134 VALHALLA_NODES_LAYER ,
89135] ;
0 commit comments