diff --git a/STEP_RECORD.md b/STEP_RECORD.md index bbd7f01..105d481 100644 --- a/STEP_RECORD.md +++ b/STEP_RECORD.md @@ -1040,6 +1040,66 @@ Style 语义专项里仍最重要的是: - 灯/灯台图标和 flare 的具体表达 - 而不是先回头怀疑 HTML 或重新构建 20nm pbf +## Same Compare Page For Kyushu + +用户已明确: + +- 继续使用同一张 compare 页做视觉确认 +- 不新增新的 compare 页面 + +本轮已将: + +- [`src/pbf/navsea-compare-karatsu-20nm.html`](/root/sourceserver/pbf/src/pbf/navsea-compare-karatsu-20nm.html) + +升级为“同一张页面支持区域切换”。 + +当前行为: + +- 默认仍是: + - `唐津 20 海里` +- 同页新增: + - `九州` + +当前线上页面仍是: + +- `http://192.168.200.184/newpec/navsea-compare-karatsu-20nm.html` + +但现在支持: + +- 默认: + - `http://192.168.200.184/newpec/navsea-compare-karatsu-20nm.html` +- 九州模式: + - `http://192.168.200.184/newpec/navsea-compare-karatsu-20nm.html?profile=kyushu` + +页面可见版本号已提升为: + +- `20nm-r8-20260331-2208` + +本轮也已把九州 style 对齐到当前唐津 `r7`/`r8` 这套表达: + +- [`src/pbf/style.navsea-delivery-kyushu.json`](/root/sourceserver/pbf/src/pbf/style.navsea-delivery-kyushu.json) + +当前这份九州 style 的关键变化: + +- sprite 已不再沿用旧本地 sprite +- 直接对齐当前唐津 delivery style 的图层表达 +- 只保留: + - `name = NavSea Delivery Kyushu` + - 九州 tile URL: + - `http://192.168.200.184/pbf-delivery-kyushu-reencoded/{z}/{x}/{y}.pbf` + +线上已部署: + +- `/mnt/sda1/www/newpec/navsea-compare-karatsu-20nm.html` +- `/mnt/sda1/www/newpec/domain/style.navsea-delivery-kyushu.json` + +一句话理解: + +- 以后还是用同一个 compare URL +- 只是这张页面现在能切: + - 唐津 20 海里 + - 九州 + ## Quick Resume Prompt 下次开机如果要快速接上,可以先看这份文件,再按下面这句继续: diff --git a/src/pbf/navsea-compare-karatsu-20nm.html b/src/pbf/navsea-compare-karatsu-20nm.html index a928bca..41ac124 100644 --- a/src/pbf/navsea-compare-karatsu-20nm.html +++ b/src/pbf/navsea-compare-karatsu-20nm.html @@ -252,10 +252,17 @@
-
唐津 20 海里对比页
-
左侧是原始版 style.json,右侧是当前交付线使用的 delivery 样式 + 唐津 20 海里 delivery PBF。两边联动同步,点击任一对象可查看属性,适合直接肉眼排差异。
+
唐津 20 海里对比页
+
左侧是原始版 style.json,右侧是当前交付线使用的 delivery 样式 + 唐津 20 海里 delivery PBF。两边联动同步,点击任一对象可查看属性,适合直接肉眼排差异。
+
+ 区域: + +
版本: 加载中
@@ -273,7 +280,7 @@
右侧 · Delivery - 正式 delivery style + 唐津 20 海里 PBF + 正式 delivery style + 唐津 20 海里 PBF
@@ -305,20 +312,50 @@ diff --git a/src/pbf/style.navsea-delivery-kyushu.json b/src/pbf/style.navsea-delivery-kyushu.json new file mode 100644 index 0000000..7a5afbc --- /dev/null +++ b/src/pbf/style.navsea-delivery-kyushu.json @@ -0,0 +1,2197 @@ +{ + "version": 8, + "name": "NavSea Delivery Kyushu", + "sprite": "https://tile.mapple-on.jp/newpec-symbols-20251001/sprite", + "glyphs": "http://192.168.200.184/newpec/fonts/{fontstack}/{range}.pbf", + "sources": { + "mapple": { + "type": "raster", + "minzoom": 0, + "maxzoom": 19, + "tileSize": 256, + "tiles": [ + "https://cyberjapandata.gsi.go.jp/xyz/std/{z}/{x}/{y}.png" + ], + "attribution": "© 昭文社" + }, + "navsea_delivery": { + "type": "vector", + "minzoom": 0, + "maxzoom": 12, + "tiles": [ + "http://192.168.200.184/pbf-delivery-kyushu-reencoded/{z}/{x}/{y}.pbf" + ], + "attribution": "NavSea semantic vector tiles" + } + }, + "layers": [ + { + "id": "background", + "type": "background", + "paint": { + "background-color": "#f5f1e6" + } + }, + { + "id": "base-raster", + "type": "raster", + "source": "mapple", + "paint": { + "raster-opacity": 0.3, + "raster-saturation": -0.2, + "raster-contrast": 0.05 + } + }, + { + "id": "sea-area-fill", + "type": "fill", + "source": "navsea_delivery", + "source-layer": "baseline_area", + "filter": [ + "any", + [ + "match", + [ + "get", + "chart_fill_style" + ], + [ + "depth_zone_0-2m", + "depth_zone_0-5m", + "depth_zone_0-10m", + "depth_zone_0-20m", + "depth_zone_2-5m", + "depth_zone_2-10m", + "depth_zone_2-20m", + "depth_zone_5-10m", + "depth_zone_5-20m", + "depth_zone_10-20m", + "depth_zone_20-100m", + "depth_zone_20-200m", + "depth_zone_100-200m", + "depth_zone_200-500m", + "depth_zone_500-1000m", + "depth_zone_1000-2000m", + "depth_zone_2000-3000m", + "depth_zone_3000-4000m", + "depth_zone_4000-5000m", + "depth_zone_5000-6000m", + "depth_zone_6000-7000m", + "depth_zone_7000-8000m", + "depth_zone_8000-9000m", + "depth_zone_9000m以深", + "water_area" + ], + true, + false + ], + [ + "match", + [ + "get", + "canonical_object_type" + ], + [ + "0-2m", + "0-5m", + "0-10m", + "0-20m", + "2-5m", + "2-10m", + "2-20m", + "5-10m", + "5-20m", + "10-20m", + "20-100m", + "20-200m", + "100-200m", + "200-500m", + "500-1000m", + "1000-2000m", + "2000-3000m", + "3000-4000m", + "4000-5000m", + "5000-6000m", + "6000-7000m", + "7000-8000m", + "8000-9000m", + "9000m以深" + ], + true, + false + ] + ], + "paint": { + "fill-color": [ + "match", + [ + "get", + "canonical_object_type" + ], + "0-2m", + "rgba(240,250,255,1)", + "0-5m", + "rgba(240,250,255,1)", + "0-10m", + "rgba(230,250,255,1)", + "0-20m", + "rgba(220,250,251,1)", + "2-5m", + "rgba(240,250,255,1)", + "2-10m", + "rgba(230,250,255,1)", + "2-20m", + "rgba(220,250,255,1)", + "5-10m", + "rgba(230,250,255,1)", + "5-20m", + "rgba(220,250,255,1)", + "10-20m", + "rgba(220,250,255,1)", + "20-100m", + "rgba(200,240,255,1)", + "20-200m", + "rgba(200,230,255,1)", + "100-200m", + "rgba(200,230,255,1)", + "200-500m", + "rgba(180,220,255,1)", + "500-1000m", + "rgba(171,192,255,1)", + "1000-2000m", + "rgba(163,181,255,1)", + "2000-3000m", + "rgba(132,169,255,1)", + "3000-4000m", + "rgba(89,155,255,1)", + "4000-5000m", + "rgba(90,140,255,1)", + "5000-6000m", + "rgba(100,132,255,1)", + "6000-7000m", + "rgba(128,128,255,1)", + "7000-8000m", + "rgba(139,118,255,1)", + "8000-9000m", + "rgba(150,100,255,1)", + "9000m以深", + "rgba(160,100,255,1)", + "河川域", + "rgba(129,195,226,1)", + "湖沼域", + "rgba(129,195,226,1)", + "陸上水域", + "rgba(129,195,226,1)", + "干潮帯", + "rgba(143,191,147,1)", + [ + "match", + [ + "get", + "chart_fill_style" + ], + "depth_zone_0-2m", + "rgba(240,250,255,1)", + "depth_zone_0-5m", + "rgba(240,250,255,1)", + "depth_zone_0-10m", + "rgba(230,250,255,1)", + "depth_zone_0-20m", + "rgba(220,250,251,1)", + "depth_zone_2-5m", + "rgba(240,250,255,1)", + "depth_zone_2-10m", + "rgba(230,250,255,1)", + "depth_zone_2-20m", + "rgba(220,250,255,1)", + "depth_zone_5-10m", + "rgba(230,250,255,1)", + "depth_zone_5-20m", + "rgba(220,250,255,1)", + "depth_zone_10-20m", + "rgba(220,250,255,1)", + "depth_zone_20-100m", + "rgba(200,240,255,1)", + "depth_zone_20-200m", + "rgba(200,230,255,1)", + "depth_zone_100-200m", + "rgba(200,230,255,1)", + "depth_zone_200-500m", + "rgba(180,220,255,1)", + "depth_zone_500-1000m", + "rgba(171,192,255,1)", + "depth_zone_1000-2000m", + "rgba(163,181,255,1)", + "depth_zone_2000-3000m", + "rgba(132,169,255,1)", + "depth_zone_3000-4000m", + "rgba(89,155,255,1)", + "depth_zone_4000-5000m", + "rgba(90,140,255,1)", + "depth_zone_5000-6000m", + "rgba(100,132,255,1)", + "depth_zone_6000-7000m", + "rgba(128,128,255,1)", + "depth_zone_7000-8000m", + "rgba(139,118,255,1)", + "depth_zone_8000-9000m", + "rgba(150,100,255,1)", + "depth_zone_9000m以深", + "rgba(160,100,255,1)", + "water_area", + "rgba(129,195,226,1)", + "rgba(160,100,255,1)" + ] + ] + } + }, + { + "id": "tidal-flat", + "type": "fill", + "source": "navsea_delivery", + "source-layer": "baseline_area", + "filter": [ + "any", + [ + "==", + [ + "get", + "chart_fill_style" + ], + "tidal_flat" + ], + [ + "==", + [ + "get", + "canonical_object_type" + ], + "干潮帯" + ] + ], + "paint": { + "fill-color": "rgba(143,191,147,1)" + } + }, + { + "id": "river-water", + "type": "fill", + "source": "navsea_delivery", + "source-layer": "baseline_area", + "filter": [ + "any", + [ + "==", + [ + "get", + "chart_fill_style" + ], + "river_water" + ], + [ + "match", + [ + "get", + "canonical_object_type" + ], + [ + "河川域", + "湖沼域", + "陸上水域" + ], + true, + false + ] + ], + "paint": { + "fill-color": "rgba(129,195,226,1)" + } + }, + { + "id": "unsurveyed-area", + "type": "fill", + "source": "navsea_delivery", + "source-layer": "baseline_area", + "filter": [ + "any", + [ + "==", + [ + "get", + "chart_fill_style" + ], + "unsurveyed_area" + ], + [ + "==", + [ + "get", + "canonical_object_type" + ], + "未測海域" + ] + ], + "paint": { + "fill-color": "#efe3a8", + "fill-opacity": 0.55 + } + }, + { + "id": "shoal-danger-area", + "type": "fill", + "source": "navsea_delivery", + "source-layer": "baseline_area", + "filter": [ + "any", + [ + "==", + [ + "get", + "chart_fill_style" + ], + "shoal_danger_area" + ], + [ + "==", + [ + "get", + "canonical_object_type" + ], + "浅所危険界" + ] + ], + "paint": { + "fill-color": "#f0a85d", + "fill-opacity": 0.45 + } + }, + { + "id": "coast-structures-area", + "type": "fill", + "source": "navsea_delivery", + "source-layer": "baseline_area", + "filter": [ + "any", + [ + "==", + [ + "get", + "chart_fill_style" + ], + "coast_structure_area" + ], + [ + "match", + [ + "get", + "canonical_object_type" + ], + [ + "防波堤", + "浮施設・桟橋", + "撤去跡" + ], + true, + false + ] + ], + "paint": { + "fill-color": "#8e887d", + "fill-opacity": 0.85 + } + }, + { + "id": "hazard-polygons", + "type": "fill", + "source": "navsea_delivery", + "source-layer": "anchor_caution_hazard_area", + "paint": { + "fill-pattern": [ + "coalesce", + [ + "get", + "chart_fill_pattern" + ], + "" + ] + } + }, + { + "id": "navigation-hazard-polygons", + "type": "fill", + "source": "navsea_delivery", + "source-layer": "navigation_hazard_area", + "paint": { + "fill-pattern": [ + "coalesce", + [ + "get", + "chart_fill_pattern" + ], + "" + ] + } + }, + { + "id": "fishery-areas", + "type": "fill", + "source": "navsea_delivery", + "source-layer": "fixed_fishing_gear_area", + "paint": { + "fill-pattern": [ + "match", + [ + "get", + "chart_fill_style" + ], + "fishery_area", + "fill-daytime-910", + "fish_reef_area", + "fill-daytime-910", + "fill-daytime-910" + ] + } + }, + { + "id": "fishery-areas-outline", + "type": "line", + "source": "navsea_delivery", + "source-layer": "fixed_fishing_gear_area", + "paint": { + "line-color": "rgba(198,77,187,1)", + "line-width": 1 + } + }, + { + "id": "anchorage-areas", + "type": "fill", + "source": "navsea_delivery", + "source-layer": "anchorage_area", + "paint": { + "fill-color": "rgba(0,0,0,0)" + } + }, + { + "id": "facility-zones", + "type": "fill", + "source": "navsea_delivery", + "source-layer": "facility_boundary_area", + "paint": { + "fill-pattern": [ + "coalesce", + [ + "get", + "chart_fill_pattern" + ], + "" + ] + } + }, + { + "id": "submerged-structures", + "type": "fill", + "source": "navsea_delivery", + "source-layer": "submerged_reef_area", + "paint": { + "fill-color": "#7d7f95", + "fill-opacity": 0.45, + "fill-outline-color": "#55586f" + } + }, + { + "id": "bridge-area", + "type": "fill", + "source": "navsea_delivery", + "source-layer": "bridge_structure", + "paint": { + "fill-color": "rgba(0,0,0,0)" + } + }, + { + "id": "bridge-outline", + "type": "line", + "source": "navsea_delivery", + "source-layer": "bridge_structure", + "paint": { + "line-color": "rgba(95,106,95,1)", + "line-width": 2 + } + }, + { + "id": "land-structures-area", + "type": "fill", + "source": "navsea_delivery", + "source-layer": "onshore_structure_area", + "paint": { + "fill-color": "#8a6d3b", + "fill-opacity": 0.8 + } + }, + { + "id": "land-area", + "type": "fill", + "source": "navsea_delivery", + "source-layer": "land_area", + "paint": { + "fill-color": "rgba(210,200,128,1)" + } + }, + { + "id": "land-hole", + "type": "fill", + "source": "navsea_delivery", + "source-layer": "hole_area", + "paint": { + "fill-color": "rgba(0,0,0,0)" + } + }, + { + "id": "bathymetry-support", + "type": "line", + "source": "navsea_delivery", + "source-layer": "bathymetry_line", + "paint": { + "line-width": [ + "match", + [ + "get", + "depth_value_m" + ], + 10, + 1, + 20, + 1, + 40, + 1, + 60, + 1, + 80, + 1, + 100, + 1, + 150, + 1, + 200, + 1, + 300, + 1, + 400, + 1, + 500, + 1, + 600, + 1, + 700, + 1, + 800, + 1, + 900, + 1, + 1000, + 1, + 1500, + 1, + 2000, + 1, + 2500, + 1, + 3000, + 1, + 3500, + 1, + 4000, + 1, + 4500, + 1, + 5000, + 1, + 5500, + 1, + 6000, + 1, + 8000, + 1, + 10000, + 1, + 0.5 + ], + "line-color": [ + "step", + [ + "get", + "depth_value_m" + ], + "rgba(126,230,146,1)", + 10, + "rgba(106,210,126,1)", + 11, + "rgba(126,230,146,1)", + 20, + "rgba(106,210,126,1)", + 21, + "rgba(126,230,146,1)", + 30, + "rgba(144,220,255,1)", + 40, + "rgba(113,193,235,1)", + 41, + "rgba(133,213,255,1)", + 45, + "rgba(122,206,255,1)", + 50, + "rgba(111,199,255,1)", + 55, + "rgba(100,192,255,1)", + 60, + "rgba(69,164,235,1)", + 61, + "rgba(89,184,255,1)", + 65, + "rgba(78,177,255,1)", + 70, + "rgba(67,170,255,1)", + 75, + "rgba(56,163,255,1)", + 80, + "rgba(24,136,235,1)", + 81, + "rgba(44,156,255,1)", + 85, + "rgba(22,142,255,1)", + 90, + "rgba(33,149,255,1)", + 95, + "rgba(11,135,255,1)", + 100, + "rgba(0,108,235,1)", + 101, + "rgba(0,128,255,1)", + 110, + "rgba(0,115,255,1)", + 120, + "rgba(0,102,255,1)", + 130, + "rgba(0,90,255,1)", + 140, + "rgba(0,77,255,1)", + 150, + "rgba(0,44,235,1)", + 151, + "rgba(0,64,255,1)", + 160, + "rgba(0,51,255,1)", + 170, + "rgba(0,38,255,1)", + 180, + "rgba(0,26,255,1)", + 190, + "rgba(0,13,255,1)", + 200, + "rgba(0,0,235,1)", + 201, + "rgba(0,0,255,1)", + 300, + "rgba(0,0,219,1)", + 301, + "rgba(0,0,239,1)", + 400, + "rgba(0,0,203,1)", + 401, + "rgba(0,0,223,1)", + 500, + "rgba(0,0,187,1)", + 501, + "rgba(0,0,207,1)", + 600, + "rgba(0,0,172,1)", + 601, + "rgba(0,0,192,1)", + 700, + "rgba(0,0,156,1)", + 701, + "rgba(0,0,176,1)", + 800, + "rgba(0,0,140,1)", + 801, + "rgba(0,0,160,1)", + 900, + "rgba(0,0,124,1)", + 901, + "rgba(0,0,144,1)", + 1000, + "rgba(0,0,108,1)", + 1001, + "rgba(0,0,128,1)", + 1100, + "rgba(0,6,122,1)", + 1200, + "rgba(0,13,115,1)", + 1300, + "rgba(0,19,109,1)", + 1400, + "rgba(0,26,102,1)", + 1500, + "rgba(20,50,116,1)", + 1501, + "rgba(0,32,96,1)", + 1600, + "rgba(0,39,90,1)", + 1700, + "rgba(0,45,83,1)", + 1800, + "rgba(0,51,77,1)", + 1900, + "rgba(0,58,70,1)", + 2000, + "rgba(0,51,77,1)", + 2001, + "rgba(0,51,77,1)", + 2100, + "rgba(0,56,72,1)", + 2200, + "rgba(0,61,67,1)", + 2300, + "rgba(0,67,61,1)", + 2400, + "rgba(0,72,56,1)", + 2500, + "rgba(10,87,61,1)", + 2501, + "rgba(0,77,51,1)", + 2600, + "rgba(0,82,46,1)", + 2700, + "rgba(0,87,41,1)", + 2800, + "rgba(0,92,36,1)", + 2900, + "rgba(0,97,31,1)", + 3000, + "rgba(10,112,36,1)", + 3001, + "rgba(0,102,26,1)", + 3100, + "rgba(0,108,20,1)", + 3200, + "rgba(0,113,15,1)", + 3300, + "rgba(0,112,10,1)", + 3400, + "rgba(0,123,5,1)", + 3500, + "rgba(10,138,10,1)", + 3501, + "rgba(0,128,0,1)", + 3600, + "rgba(2,124,2,1)", + 3700, + "rgba(3,121,3,1)", + 3800, + "rgba(5,117,5,1)", + 3900, + "rgba(6,114,6,1)", + 4000, + "rgba(18,120,18,1)", + 4001, + "rgba(18,110,18,1)", + 4100, + "rgba(10,107,10,1)", + 4200, + "rgba(11,103,11,1)", + 4300, + "rgba(13,100,13,1)", + 4400, + "rgba(14,96,14,1)", + 4500, + "rgba(26,103,26,1)", + 4501, + "rgba(16,93,16,1)", + 4600, + "rgba(18,89,18,1)", + 4700, + "rgba(19,26,19,1)", + 4800, + "rgba(21,82,21,1)", + 4900, + "rgba(22,79,22,1)", + 5000, + "rgba(34,85,34,1)", + 5001, + "rgba(24,75,24,1)", + 5100, + "rgba(26,72,26,1)", + 5200, + "rgba(27,68,27,1)", + 5300, + "rgba(29,65,29,1)", + 5400, + "rgba(30,61,30,1)", + 5500, + "rgba(42,68,42,1)", + 5501, + "rgba(32,58,32,1)", + 5600, + "rgba(34,54,34,1)", + 5700, + "rgba(35,51,35,1)", + 5800, + "rgba(37,47,37,1)", + 5900, + "rgba(38,44,38,1)", + 6000, + "rgba(50,50,50,1)", + 6001, + "rgba(40,40,40,1)", + 6500, + "rgba(58,30,58,1)", + 7000, + "rgba(75,20,75,1)", + 7500, + "rgba(93,10,93,1)", + 8000, + "rgba(120,10,120,1)", + 8001, + "rgba(110,0,110,1)", + 8500, + "rgba(117,0,117,1)", + 9000, + "rgba(123,0,123,1)", + 9500, + "rgba(130,0,130,1)", + 10000, + "rgba(147,0,147,1)", + 10001, + "rgba(137,0,137,1)", + 10500, + "rgba(143,0,143,1)" + ] + } + }, + { + "id": "depth-contours", + "type": "line", + "source": "navsea_delivery", + "source-layer": "depth_contour", + "paint": { + "line-color": "rgba(136,152,139,1)", + "line-width": 1 + } + }, + { + "id": "depth-contours-major", + "type": "line", + "source": "navsea_delivery", + "source-layer": "depth_contour_overview", + "paint": { + "line-color": "rgba(136,152,139,1)", + "line-width": 1, + "line-dasharray": [ + 12, + 4 + ] + } + }, + { + "id": "depth-contours-major-labels", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "depth_contour_overview", + "minzoom": 11, + "layout": { + "symbol-placement": "line", + "symbol-spacing": 200, + "text-allow-overlap": true, + "text-field": [ + "match", + [ + "get", + "least_depth_m" + ], + 2, + "2", + 5, + "5", + 10, + "10", + 20, + "20", + "" + ], + "text-font": [ + "NotoSansCJK-Regular" + ], + "text-size": 10, + "text-rotation-alignment": "viewport" + }, + "filter": [ + "has", + "least_depth_m" + ], + "paint": { + "text-color": "rgba(7,7,7,1)" + } + }, + { + "id": "depth-contour-labels", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "depth_contour", + "minzoom": 11, + "layout": { + "symbol-placement": "line", + "symbol-spacing": 200, + "text-allow-overlap": true, + "text-field": [ + "get", + "chart_label_text" + ], + "text-font": [ + "NotoSansCJK-Regular" + ], + "text-size": 10, + "text-rotation-alignment": "viewport" + }, + "filter": [ + "all", + [ + "==", + [ + "get", + "chart_text_style" + ], + "depth_text" + ], + [ + "has", + "chart_label_text" + ] + ], + "paint": { + "text-color": "rgba(7,7,7,1)" + } + }, + { + "id": "bathymetry-depth-labels", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "bathymetry_line", + "minzoom": 11, + "filter": [ + "all", + [ + "==", + [ + "get", + "chart_text_style" + ], + "depth_text" + ], + [ + "has", + "chart_label_text" + ] + ], + "layout": { + "text-allow-overlap": true, + "symbol-placement": "line", + "symbol-spacing": 200, + "text-field": [ + "get", + "chart_label_text" + ], + "text-font": [ + "NotoSansCJK-Regular" + ], + "text-size": 10, + "text-rotation-alignment": "viewport" + }, + "paint": { + "text-color": "rgba(7,7,7,1)" + } + }, + { + "id": "subsea-cables", + "type": "line", + "source": "navsea_delivery", + "source-layer": "seabed_line", + "paint": { + "line-color": "#814d99", + "line-width": 1.3, + "line-dasharray": [ + 3, + 1.2 + ] + } + }, + { + "id": "coast-structures-line", + "type": "line", + "source": "navsea_delivery", + "source-layer": "baseline_line", + "paint": { + "line-color": "#5f5a50", + "line-width": 1.4 + } + }, + { + "id": "land-structures-line", + "type": "line", + "source": "navsea_delivery", + "source-layer": "onshore_structure_line", + "paint": { + "line-color": "rgba(147,116,39,1)", + "line-width": 2 + } + }, + { + "id": "water-boundary", + "type": "line", + "source": "navsea_delivery", + "source-layer": "depth_zone_739", + "paint": { + "line-color": "#4f8ca7", + "line-width": 1.1 + } + }, + { + "id": "regulatory-boundary", + "type": "line", + "source": "navsea_delivery", + "source-layer": "depth_zone_741", + "paint": { + "line-color": "#cb5c46", + "line-width": 1.2, + "line-dasharray": [ + 2, + 2 + ] + } + }, + { + "id": "height-limit-line", + "type": "line", + "source": "navsea_delivery", + "source-layer": "clearance_limit_line", + "paint": { + "line-color": "#ad3b6a", + "line-width": 1.1 + } + }, + { + "id": "clip-outline", + "type": "line", + "source": "navsea_delivery", + "source-layer": "baseline_outline", + "paint": { + "line-color": "rgba(95,106,95,1)", + "line-width": 2 + } + }, + { + "id": "danger-outline", + "type": "line", + "source": "navsea_delivery", + "source-layer": "hazard_boundary_outline", + "paint": { + "line-color": "rgba(95,106,95,1)", + "line-width": 3, + "line-dasharray": [ + 3, + 2 + ] + } + }, + { + "id": "navigation-hazard-outline", + "type": "line", + "source": "navsea_delivery", + "source-layer": "navigation_hazard_outline", + "paint": { + "line-width": [ + "coalesce", + [ + "get", + "chart_line_width" + ], + 1 + ], + "line-color": [ + "coalesce", + [ + "get", + "chart_line_color" + ], + "rgba(136,152,139,1)" + ] + } + }, + { + "id": "anchor-danger-outline", + "type": "line", + "source": "navsea_delivery", + "source-layer": "anchor_caution_hazard_outline", + "paint": { + "line-width": [ + "coalesce", + [ + "get", + "chart_line_width" + ], + 1 + ], + "line-color": [ + "coalesce", + [ + "get", + "chart_line_color" + ], + "rgba(136,152,139,1)" + ] + } + }, + { + "id": "anchorage-outline", + "type": "line", + "source": "navsea_delivery", + "source-layer": "anchorage_outline", + "paint": { + "line-color": [ + "coalesce", + [ + "get", + "chart_line_color" + ], + "rgba(136,152,139,1)" + ], + "line-width": [ + "coalesce", + [ + "get", + "chart_line_width" + ], + 2 + ], + "line-dasharray": [ + 2, + 1 + ] + } + }, + { + "id": "facility-zone-outline", + "type": "line", + "source": "navsea_delivery", + "source-layer": "facility_boundary_outline", + "paint": { + "line-color": [ + "coalesce", + [ + "get", + "chart_line_color" + ], + "rgba(136,152,139,1)" + ], + "line-width": [ + "coalesce", + [ + "get", + "chart_line_width" + ], + 1 + ] + } + }, + { + "id": "special-pattern-line-754", + "type": "line", + "source": "navsea_delivery", + "source-layer": "clip_outline_754", + "paint": { + "line-pattern": "line-daytime-754", + "line-width": 8 + } + }, + { + "id": "hazard-points", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "navigation_hazard_point", + "layout": { + "icon-allow-overlap": true, + "icon-ignore-placement": true, + "icon-image": [ + "coalesce", + [ + "get", + "chart_icon_image" + ], + "" + ] + } + }, + { + "id": "anchorage-symbols", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "anchorage_point", + "layout": { + "icon-allow-overlap": true, + "icon-image": [ + "coalesce", + [ + "get", + "chart_icon_image" + ], + "" + ] + } + }, + { + "id": "anchor-hazard-points", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "anchor_caution_hazard_point", + "layout": { + "icon-allow-overlap": true, + "icon-ignore-placement": true, + "icon-size": 1.05, + "icon-image": [ + "coalesce", + [ + "get", + "chart_icon_image" + ], + "" + ] + }, + "filter": [ + "all", + [ + "!=", + [ + "get", + "chart_symbol_code" + ], + "obstruction" + ], + [ + "!=", + [ + "get", + "chart_symbol_code" + ], + "hazard_mark" + ], + [ + "!=", + [ + "get", + "chart_symbol_code" + ], + "fish_reef" + ] + ] + }, + { + "id": "anchor-hazard-points-428", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "anchor_caution_hazard_point", + "layout": { + "icon-allow-overlap": true, + "icon-ignore-placement": true, + "icon-size": 1.08, + "icon-image": "symbol-daytime-428" + }, + "filter": [ + "match", + [ + "get", + "chart_symbol_code" + ], + "obstruction", + true, + "hazard_mark", + true, + "fish_reef", + true, + false + ] + }, + { + "id": "nav-light-flare", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "navigation_marks", + "layout": { + "icon-allow-overlap": true, + "icon-ignore-placement": true, + "icon-size": 1.0, + "icon-image": [ + "match", + [ + "get", + "light_color_code" + ], + "green", + "light-daytime-1", + "red", + "light-daytime-2", + "yellow", + "light-daytime-3", + "white", + "light-daytime-3", + "amber", + "light-daytime-3", + "orange", + "light-daytime-3", + "light-daytime-3" + ] + }, + "filter": [ + "all", + [ + "has", + "light_color_code" + ], + [ + "any", + [ + "!=", + [ + "get", + "canonical_object_type" + ], + "沿岸灯台 (15M over)" + ], + [ + "!=", + [ + "get", + "light_sector_mode" + ], + "sector" + ] + ] + ] + }, + { + "id": "nav-light-arc", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "navigation_marks", + "layout": { + "visibility": "none", + "icon-allow-overlap": true, + "icon-rotation-alignment": "map", + "icon-image": [ + "case", + [ + "all", + [ + "==", + [ + "get", + "canonical_object_type" + ], + "沿岸灯台 (15M over)" + ], + [ + "==", + [ + "get", + "light_sector_mode" + ], + "sector" + ] + ], + "arc-daytime-04027289", + [ + "match", + [ + "get", + "light_color_code" + ], + "green", + "arc-daytime-m1", + "red", + "arc-daytime-m2", + "arc-daytime-m3" + ] + ] + }, + "filter": [ + "all", + [ + "==", + [ + "get", + "chart_symbol_code" + ], + "lighthouse" + ], + [ + "has", + "light_color_code" + ] + ] + }, + { + "id": "nav-marks-harbor-lighthouses", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "navigation_marks", + "layout": { + "icon-allow-overlap": true, + "icon-ignore-placement": true, + "icon-size": 1.08, + "icon-image": "symbol-daytime-301" + }, + "filter": [ + "==", + [ + "get", + "canonical_object_type" + ], + "港湾灯台" + ] + }, + { + "id": "nav-marks-breakwater-lighthouses", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "navigation_marks", + "layout": { + "icon-allow-overlap": true, + "icon-ignore-placement": true, + "icon-size": 1.08, + "icon-image": "symbol-daytime-302" + }, + "filter": [ + "==", + [ + "get", + "canonical_object_type" + ], + "防波堤灯台" + ] + }, + { + "id": "nav-marks-small-lights", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "navigation_marks", + "layout": { + "icon-allow-overlap": true, + "icon-ignore-placement": true, + "icon-size": 1.08, + "icon-image": "symbol-daytime-303" + }, + "filter": [ + "==", + [ + "get", + "canonical_object_type" + ], + "灯 (Lt)" + ] + }, + { + "id": "nav-marks-light-beacons", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "navigation_marks", + "layout": { + "icon-allow-overlap": true, + "icon-ignore-placement": true, + "icon-size": 1.08, + "icon-image": "symbol-daytime-310" + }, + "filter": [ + "==", + [ + "get", + "canonical_object_type" + ], + "灯標" + ] + }, + { + "id": "nav-marks", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "navigation_marks", + "layout": { + "icon-allow-overlap": true, + "icon-ignore-placement": true, + "icon-size": 1.08, + "icon-image": [ + "case", + [ + "==", + [ + "get", + "canonical_object_type" + ], + "沿岸灯台 (15M over)" + ], + "symbol-daytime-300", + [ + "==", + [ + "get", + "canonical_object_type" + ], + "港湾灯台" + ], + "symbol-daytime-301", + [ + "==", + [ + "get", + "canonical_object_type" + ], + "防波堤灯台" + ], + "symbol-daytime-302", + [ + "==", + [ + "get", + "canonical_object_type" + ], + "灯 (Lt)" + ], + "symbol-daytime-303", + [ + "coalesce", + [ + "get", + "chart_icon_image" + ], + "" + ] + ] + }, + "filter": [ + "all", + [ + "!=", + [ + "get", + "canonical_object_type" + ], + "港湾灯台" + ], + [ + "!=", + [ + "get", + "canonical_object_type" + ], + "防波堤灯台" + ], + [ + "!=", + [ + "get", + "canonical_object_type" + ], + "灯 (Lt)" + ], + [ + "!=", + [ + "get", + "canonical_object_type" + ], + "灯標" + ] + ] + }, + { + "id": "facility-points", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "facility_boundary_point", + "layout": { + "icon-allow-overlap": true, + "icon-image": "symbol-daytime-520" + } + }, + { + "id": "landmark-points", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "onshore_structure_point", + "layout": { + "icon-allow-overlap": true, + "icon-image": [ + "match", + [ + "get", + "canonical_object_type" + ], + "煙突", + "symbol-daytime-640", + "塔、やぐら、風車", + "symbol-daytime-650", + "海事関係署", + "symbol-daytime-660", + "漁業協同組合", + "symbol-daytime-661", + "山頂", + "symbol-daytime-681", + "その他 (記念碑等)", + "symbol-daytime-698", + "" + ] + }, + "filter": [ + "match", + [ + "get", + "canonical_object_type" + ], + "煙突", + true, + "塔、やぐら、風車", + true, + "海事関係署", + true, + "漁業協同組合", + true, + "山頂", + true, + "その他 (記念碑等)", + true, + false + ] + }, + { + "id": "landmark-point-fallback", + "type": "circle", + "source": "navsea_delivery", + "source-layer": "onshore_structure_point", + "filter": [ + "match", + [ + "get", + "canonical_object_type" + ], + "煙突", + false, + "塔、やぐら、風車", + false, + "海事関係署", + false, + "漁業協同組合", + false, + "山頂", + false, + "その他 (記念碑等)", + false, + true + ], + "paint": { + "circle-radius": 3, + "circle-color": "#695641", + "circle-stroke-color": "#fff9ee", + "circle-stroke-width": 0.8 + } + }, + { + "id": "bottom-material-labels", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "seabed_text_point", + "minzoom": 11, + "filter": [ + "has", + "chart_label_text" + ], + "layout": { + "text-allow-overlap": true, + "text-field": [ + "get", + "chart_label_text" + ], + "text-font": [ + "NotoSansCJK-Regular" + ], + "text-size": 10 + }, + "paint": { + "text-color": "rgba(0,0,0,1)" + } + }, + { + "id": "height-limit-points", + "type": "circle", + "source": "navsea_delivery", + "source-layer": "clearance_limit_point", + "paint": { + "circle-radius": 3.5, + "circle-color": "#ab355f", + "circle-stroke-color": "#ffffff", + "circle-stroke-width": 0.8 + } + }, + { + "id": "height-limit-name-labels", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "clearance_limit_point", + "minzoom": 11, + "filter": [ + "has", + "name_ja" + ], + "layout": { + "text-allow-overlap": true, + "text-max-width": 100, + "text-field": [ + "get", + "name_ja" + ], + "text-font": [ + "NotoSansCJK-Regular" + ], + "text-size": 12, + "text-anchor": "bottom" + }, + "paint": { + "text-color": "rgba(255,0,0,1)" + } + }, + { + "id": "height-limit-value-labels", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "clearance_limit_point", + "minzoom": 11, + "filter": [ + "has", + "chart_label_text" + ], + "layout": { + "text-allow-overlap": true, + "text-max-width": 100, + "text-field": [ + "concat", + "高さ", + [ + "get", + "chart_label_text" + ], + "m" + ], + "text-font": [ + "NotoSansCJK-Regular" + ], + "text-size": 12, + "text-anchor": "top" + }, + "paint": { + "text-color": "rgba(255,0,0,1)" + } + }, + { + "id": "nav-mark-labels", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "navigation_marks", + "layout": { + "text-allow-overlap": true, + "text-max-width": 100, + "text-field": [ + "get", + "chart_label_text" + ], + "text-font": [ + "NotoSansCJK-Regular" + ], + "text-size": 10, + "text-offset": [ + "match", + [ + "get", + "chart_label_position_code" + ], + "tl", + [ + "literal", + [ + 2, + 2.5 + ] + ], + "t", + [ + "literal", + [ + 0, + 2.5 + ] + ], + "tr", + [ + "literal", + [ + -2, + 2.5 + ] + ], + "l", + [ + "literal", + [ + 2, + 0.5 + ] + ], + "c", + [ + "literal", + [ + 0, + 0.5 + ] + ], + "r", + [ + "literal", + [ + -2, + 0.5 + ] + ], + "bl", + [ + "literal", + [ + 2, + -1.5 + ] + ], + "b", + [ + "literal", + [ + 0, + -1.5 + ] + ], + "br", + [ + "literal", + [ + -2, + -1.5 + ] + ], + [ + "literal", + [ + 0, + 0.5 + ] + ] + ], + "text-anchor": [ + "match", + [ + "get", + "chart_label_position_code" + ], + "tl", + "top-left", + "t", + "top", + "tr", + "top-right", + "l", + "left", + "c", + "center", + "r", + "right", + "bl", + "bottom-left", + "b", + "bottom", + "br", + "bottom-right", + "center" + ] + }, + "paint": { + "text-color": "rgba(0,0,0,1)" + }, + "filter": [ + "has", + "chart_label_text" + ] + }, + { + "id": "nav-light-abbr-labels", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "navigation_marks", + "layout": { + "text-allow-overlap": true, + "text-max-width": 100, + "text-field": [ + "get", + "chart_label_subtext" + ], + "text-font": [ + "NotoSansCJK-Regular" + ], + "text-size": 10, + "text-offset": [ + "match", + [ + "get", + "chart_label_position_code" + ], + "tl", + [ + "literal", + [ + 2, + 1.5 + ] + ], + "t", + [ + "literal", + [ + 0, + 1.5 + ] + ], + "tr", + [ + "literal", + [ + -2, + 1.5 + ] + ], + "l", + [ + "literal", + [ + 2, + -0.5 + ] + ], + "c", + [ + "literal", + [ + 0, + -0.5 + ] + ], + "r", + [ + "literal", + [ + -2, + -0.5 + ] + ], + "bl", + [ + "literal", + [ + 2, + -2.5 + ] + ], + "b", + [ + "literal", + [ + 0, + -2.5 + ] + ], + "br", + [ + "literal", + [ + -2, + -2.5 + ] + ], + [ + "literal", + [ + 0, + -0.5 + ] + ] + ], + "text-anchor": [ + "match", + [ + "get", + "chart_label_position_code" + ], + "tl", + "top-left", + "t", + "top", + "tr", + "top-right", + "l", + "left", + "c", + "center", + "r", + "right", + "bl", + "bottom-left", + "b", + "bottom", + "br", + "bottom-right", + "center" + ] + }, + "paint": { + "text-color": [ + "case", + [ + "==", + [ + "get", + "chart_text_color" + ], + "#000000" + ], + "rgba(0,0,0,1)", + [ + "coalesce", + [ + "get", + "chart_text_color" + ], + "rgba(0,0,0,1)" + ] + ] + }, + "filter": [ + "has", + "chart_label_subtext" + ] + }, + { + "id": "place-labels-sea-en", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "place_label_sea", + "layout": { + "text-allow-overlap": true, + "text-max-width": 100, + "text-field": [ + "get", + "place_name_en" + ], + "text-font": [ + "NotoSerifCJK-Regular" + ], + "text-size": 10, + "text-anchor": "top" + }, + "paint": { + "text-color": "rgba(0,0,0,1)" + }, + "filter": [ + "has", + "place_name_en" + ] + }, + { + "id": "place-labels-sea-ja", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "place_label_sea", + "layout": { + "text-allow-overlap": true, + "text-max-width": 100, + "text-field": [ + "get", + "chart_label_text" + ], + "text-font": [ + "NotoSerifCJK-Regular" + ], + "text-size": 10, + "text-anchor": "bottom" + }, + "paint": { + "text-color": "rgba(0,0,0,1)" + }, + "filter": [ + "has", + "chart_label_text" + ] + }, + { + "id": "place-labels-land-en", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "place_label_land", + "layout": { + "text-allow-overlap": true, + "text-max-width": 100, + "text-field": [ + "get", + "place_name_en" + ], + "text-font": [ + "NotoSerifCJK-Regular" + ], + "text-size": 10, + "text-anchor": "top" + }, + "paint": { + "text-color": "rgba(0,0,0,1)" + }, + "filter": [ + "has", + "place_name_en" + ] + }, + { + "id": "place-labels-land-ja", + "type": "symbol", + "source": "navsea_delivery", + "source-layer": "place_label_land", + "layout": { + "text-allow-overlap": true, + "text-max-width": 100, + "text-field": [ + "get", + "chart_label_text" + ], + "text-font": [ + "NotoSerifCJK-Regular" + ], + "text-size": 10, + "text-anchor": "bottom" + }, + "paint": { + "text-color": "rgba(0,0,0,1)" + }, + "filter": [ + "has", + "chart_label_text" + ] + } + ] +}