{
  "version": 8,
  "id": "toner-epaper-4gray",
  "name": "Toner e-Paper 4Gray",
  "metadata": {
    "comment": "osm-toner.json 派生。Waveshare 2.7inch e-Paper V2 専用。色は4値固定: #ffffff(背景/陸地) #d0d0d0(水域/公園/面) #707070(minor road/railway/boundary/古い軌跡) #000000(major road/現在地/最小限の文字)。opacity による中間色生成は禁止。fill-pattern/POI/building/sprite icon は排除"
  },
  "sources": {
    "openmaptiles": {
      "type": "vector",
      "url": "pmtiles://https://yuiseki.dev/static/planet.pmtiles"
    },
    "overlay": {
      "type": "geojson",
      "data": { "type": "FeatureCollection", "features": [] }
    }
  },
  "glyphs": "https://yuiseki.dev/static/fonts/{fontstack}/{range}.pbf",
  "layers": [
    {
      "id": "background",
      "type": "background",
      "paint": { "background-color": "#ffffff" }
    },
    {
      "id": "landcover",
      "type": "fill",
      "source": "openmaptiles",
      "source-layer": "landcover",
      "filter": ["in", "class", "grass", "wood"],
      "paint": { "fill-color": "#d0d0d0" }
    },
    {
      "id": "park",
      "type": "fill",
      "source": "openmaptiles",
      "source-layer": "park",
      "filter": ["==", "$type", "Polygon"],
      "paint": { "fill-color": "#d0d0d0" }
    },
    {
      "id": "water",
      "type": "fill",
      "source": "openmaptiles",
      "source-layer": "water",
      "filter": ["all", ["!=", "brunnel", "tunnel"], ["==", "$type", "Polygon"]],
      "paint": { "fill-color": "#d0d0d0" }
    },
    {
      "id": "waterway",
      "type": "line",
      "source": "openmaptiles",
      "source-layer": "waterway",
      "paint": { "line-color": "#d0d0d0", "line-width": 1.5 }
    },
    {
      "id": "building",
      "type": "fill",
      "source": "openmaptiles",
      "source-layer": "building",
      "minzoom": 14,
      "paint": { "fill-color": "#d0d0d0" }
    },
    {
      "id": "building_outline",
      "type": "line",
      "source": "openmaptiles",
      "source-layer": "building",
      "minzoom": 16,
      "paint": {
        "line-color": "#707070",
        "line-width": 0.8,
        "line-dasharray": [1.5, 1.5]
      }
    },
    {
      "id": "boundary_admin",
      "type": "line",
      "source": "openmaptiles",
      "source-layer": "boundary",
      "filter": ["in", "admin_level", 2, 4],
      "paint": {
        "line-color": "#707070",
        "line-width": 1,
        "line-dasharray": [3, 2]
      }
    },
    {
      "id": "rail",
      "type": "line",
      "source": "openmaptiles",
      "source-layer": "transportation",
      "minzoom": 11,
      "filter": ["==", "class", "rail"],
      "paint": { "line-color": "#707070", "line-width": 1 }
    },
    {
      "id": "rail_hatch",
      "type": "line",
      "source": "openmaptiles",
      "source-layer": "transportation",
      "minzoom": 13,
      "filter": ["==", "class", "rail"],
      "paint": {
        "line-color": "#707070",
        "line-width": 4,
        "line-dasharray": [0.1, 4]
      }
    },
    {
      "id": "road_minor",
      "type": "line",
      "source": "openmaptiles",
      "source-layer": "transportation",
      "minzoom": 12,
      "filter": [
        "all",
        ["==", "$type", "LineString"],
        ["in", "class", "minor", "service", "tertiary"]
      ],
      "layout": { "line-cap": "round", "line-join": "round" },
      "paint": {
        "line-color": "#707070",
        "line-width": { "base": 1.4, "stops": [[12, 0.5], [16, 2]] }
      }
    },
    {
      "id": "road_major",
      "type": "line",
      "source": "openmaptiles",
      "source-layer": "transportation",
      "filter": [
        "all",
        ["==", "$type", "LineString"],
        ["in", "class", "primary", "secondary", "trunk"]
      ],
      "layout": { "line-cap": "round", "line-join": "round" },
      "paint": {
        "line-color": "#000000",
        "line-width": { "base": 1.4, "stops": [[10, 0.8], [16, 3]] }
      }
    },
    {
      "id": "road_highway",
      "type": "line",
      "source": "openmaptiles",
      "source-layer": "transportation",
      "filter": [
        "all",
        ["==", "$type", "LineString"],
        ["==", "class", "motorway"]
      ],
      "layout": { "line-cap": "round", "line-join": "round" },
      "paint": {
        "line-color": "#000000",
        "line-width": { "base": 1.4, "stops": [[8, 1], [16, 4]] }
      }
    },
    {
      "id": "overlay_track_old",
      "type": "line",
      "source": "overlay",
      "filter": ["==", "kind", "track"],
      "layout": { "line-cap": "round", "line-join": "round" },
      "paint": { "line-color": "#707070", "line-width": 2 }
    },
    {
      "id": "place_label_town",
      "type": "symbol",
      "source": "openmaptiles",
      "source-layer": "place",
      "minzoom": 9,
      "filter": ["all", ["==", "$type", "Point"], ["==", "class", "town"]],
      "layout": {
        "text-field": "{name}",
        "text-font": ["Noto Sans Regular"],
        "text-size": 12,
        "text-max-width": 8
      },
      "paint": {
        "text-color": "#000000",
        "text-halo-color": "#ffffff",
        "text-halo-width": 2
      }
    },
    {
      "id": "place_label_city",
      "type": "symbol",
      "source": "openmaptiles",
      "source-layer": "place",
      "filter": ["all", ["==", "$type", "Point"], ["==", "class", "city"]],
      "layout": {
        "text-field": "{name}",
        "text-font": ["Noto Sans Bold"],
        "text-size": 14,
        "text-max-width": 8
      },
      "paint": {
        "text-color": "#000000",
        "text-halo-color": "#ffffff",
        "text-halo-width": 2
      }
    },
    {
      "id": "overlay_pi5",
      "type": "circle",
      "source": "overlay",
      "filter": ["==", "kind", "pi5"],
      "paint": {
        "circle-radius": 7,
        "circle-color": "#ffffff",
        "circle-stroke-color": "#000000",
        "circle-stroke-width": 3
      }
    },
    {
      "id": "overlay_current",
      "type": "circle",
      "source": "overlay",
      "filter": ["==", "kind", "current"],
      "paint": {
        "circle-radius": 6,
        "circle-color": "#000000",
        "circle-stroke-color": "#ffffff",
        "circle-stroke-width": 2
      }
    },
    {
      "id": "overlay_label",
      "type": "symbol",
      "source": "overlay",
      "filter": ["has", "name"],
      "layout": {
        "text-field": "{name}",
        "text-font": ["Noto Sans Bold"],
        "text-size": 11,
        "text-offset": [0, 1.4],
        "text-anchor": "top"
      },
      "paint": {
        "text-color": "#000000",
        "text-halo-color": "#ffffff",
        "text-halo-width": 2
      }
    }
  ]
}
