Files
enduro-trails/src/web/style.json
Slava eda66eeb6c
Some checks failed
CI / lint (push) Has been cancelled
CI / test (push) Has been cancelled
CI / build (push) Has been cancelled
feat: migrate prototype to canonical structure
- Move app.py to src/api/main.py (STATIC_DIR from env)
- Move static/ to src/web/
- Update Dockerfile and docker-compose.yml
- Add download_srtm.sh script
- Clean up debug/deploy scripts

Refs: multi-agent F0-3
2026-05-15 13:45:42 +03:00

137 lines
3.8 KiB
JSON

{
"version": 8,
"name": "Enduro Trails Light",
"metadata": {},
"center": [37.6, 55.75],
"zoom": 7,
"bearing": 0,
"pitch": 0,
"sources": {
"trails-tiles": {
"type": "vector",
"tiles": ["/api/tiles/{z}/{x}/{y}.mvt"],
"minzoom": 5,
"maxzoom": 16
},
"osm-raster": {
"type": "raster",
"tiles": ["https://tile.openstreetmap.org/{z}/{x}/{y}.png"],
"tileSize": 256,
"attribution": "© OpenStreetMap contributors"
}
},
"glyphs": "https://fonts.openmaptiles.org/{fontstack}/{range}.pbf",
"layers": [
{
"id": "background",
"type": "background",
"paint": { "background-color": "#f0ede6" }
},
{
"id": "osm-base",
"type": "raster",
"source": "osm-raster",
"paint": {
"raster-opacity": 1.0,
"raster-saturation": -0.4,
"raster-contrast": 0.25,
"raster-brightness-min": 0,
"raster-brightness-max": 0.9
}
},
{
"id": "trails-asphalt",
"type": "line",
"source": "trails-tiles",
"source-layer": "trails",
"minzoom": 6,
"filter": ["in", "highway", "primary", "secondary", "tertiary", "residential"],
"paint": {
"line-color": "#bbbbbb",
"line-width": ["interpolate", ["linear"], ["zoom"], 8, 0.5, 10, 1, 14, 2],
"line-opacity": 0.0
},
"layout": { "line-cap": "round", "line-join": "round", "visibility": "none" }
},
{
"id": "trails-track",
"type": "line",
"source": "trails-tiles",
"source-layer": "trails",
"minzoom": 6,
"filter": ["==", "highway", "track"],
"paint": {
"line-color": [
"match", ["get", "tracktype"],
"grade1", "#FFD700",
"grade2", "#FFD700",
"grade3", "#FF4400",
"grade4", "#FF4400",
"grade5", "#FF4400",
"#FF4400"
],
"line-width": ["interpolate", ["linear"], ["zoom"], 6, 0.5, 8, 1.2, 10, 2, 12, 3.5, 16, 6],
"line-opacity": 0.9
},
"layout": { "line-cap": "round", "line-join": "round" }
},
{
"id": "trails-path-bridleway",
"type": "line",
"source": "trails-tiles",
"source-layer": "trails",
"minzoom": 8,
"filter": ["in", "highway", "path", "bridleway", "footway"],
"paint": {
"line-color": "#cc0000",
"line-width": ["interpolate", ["linear"], ["zoom"], 7, 0.5, 10, 1.5, 12, 2, 16, 3],
"line-opacity": 0.85,
"line-dasharray": [3, 2]
},
"layout": { "line-cap": "butt", "line-join": "round" }
},
{
"id": "poi-circles",
"type": "circle",
"source": "trails-tiles",
"source-layer": "poi",
"paint": {
"circle-radius": ["interpolate", ["linear"], ["zoom"], 8, 2, 12, 6, 16, 10],
"circle-color": [
"match", ["get", "poi_type"],
"natural=peak", "#e63946",
"natural=water", "#1d7fc4",
"tourism=viewpoint", "#2a9d2a",
"historic=ruins", "#9b59b6",
"natural=cave_entrance", "#e67e22",
"ford=yes", "#0099cc",
"#888888"
],
"circle-stroke-color": "#ffffff",
"circle-stroke-width": 1.5,
"circle-opacity": 0.9
}
},
{
"id": "poi-labels",
"type": "symbol",
"source": "trails-tiles",
"source-layer": "poi",
"minzoom": 11,
"layout": {
"text-field": ["get", "name"],
"text-font": ["Open Sans Regular"],
"text-size": 11,
"text-offset": [0, 1.2],
"text-anchor": "top",
"text-optional": true
},
"paint": {
"text-color": "#333333",
"text-halo-color": "#ffffff",
"text-halo-width": 1.5
}
}
]
}