Files
pbf/NavSea_九州_Delivery_对象属性分组_2026-04-07.md
2026-04-08 19:32:25 +08:00

435 lines
11 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 九州 Delivery 对象属性分组
## 目的
本文不再按“航海用 / 钓鱼用”分,而是按对象属性与业务语义相同的 group 重新整理当前 `kyushu delivery` 图层。
整理目标是:
- 让后续 style 拆分时,先按对象类别看清当前图层结构
- 明确每一组对象当前对应哪些 `source-layer`
- 明确每一组对象当前实际由哪些 render layer 在画
这里的“group”按业务对象语义来定例如
- 等深线
- 鱼礁
- 灯塔
- 港口灯
- 渔网
- 海上标识
- 陆地设施
- 桥梁 / 跨空线
- 海底质
- 海底危险物
## 基础说明
本次整理基于当前样式:
- [`style.navsea-delivery-kyushu.json`](/root/sourceserver/pbf/src/pbf/style.navsea-delivery-kyushu.json)
说明:
- `source-layer`
- 指 delivery PBF 中的语义层
- `render layer`
- 指样式里的具体绘制层 id
- 一个 group 可能对应多个 `source-layer`
- 一个 `source-layer` 也可能被拆成多个 render layer 表现
## 1. 等深线
## 含义
- 主要表达海底深浅变化与地形坡坎
- 是读海底结构的主线索
## 当前对应层
| 类型 | 当前层 |
| --- | --- |
| source-layer | `depth_contour` |
| source-layer | `depth_contour_overview` |
| source-layer | `bathymetry_line` |
| render layer | `depth-contours` |
| render layer | `depth-contours-major` |
| render layer | `depth-contour-labels` |
| render layer | `depth-contours-major-labels` |
| render layer | `bathymetry-support` |
| render layer | `bathymetry-depth-labels` |
## 说明
- `depth_contour`
- 主等深线
- `depth_contour_overview`
- 概略等深线
- `bathymetry_line`
- 海底辅助线与水深数字承载线
## 2. 鱼礁
## 含义
- 鱼礁、人工礁、抛锚注意障碍中的鱼礁类对象
- 对钓鱼和避碰都重要
## 当前对应层
| 类型 | 当前层 |
| --- | --- |
| source-layer | `anchor_caution_hazard_area` |
| source-layer | `anchor_caution_hazard_outline` |
| source-layer | `anchor_caution_hazard_point` |
| source-layer | `submerged_reef_area` |
| render layer | `hazard-polygons` |
| render layer | `anchor-danger-outline` |
| render layer | `anchor-hazard-points` |
| render layer | `anchor-hazard-points-428` |
| render layer | `submerged-structures` |
## 说明
- 当前“鱼礁”并不是单独一层
- 主要散落在:
- `anchor_caution_hazard_*`
- `submerged_reef_area`
- 后续如果要单做钓鱼版,建议把鱼礁从 `anchor_caution_hazard_*` 里再细拆出来
## 3. 灯塔
## 含义
- 大型灯塔、沿岸灯塔、航海定位核心灯标
## 当前对应层
| 类型 | 当前层 |
| --- | --- |
| source-layer | `navigation_marks` |
| render layer | `nav-marks-harbor-lighthouses` |
| render layer | `nav-marks-breakwater-lighthouses` |
| render layer | `nav-light-arc` |
| render layer | `nav-light-flare` |
| render layer | `nav-mark-labels` |
| render layer | `nav-light-abbr-labels` |
## 说明
- 当前样式中,灯塔类都从 `navigation_marks` 分流出来
- 弧光与 flare 仍是同一个 `source-layer` 上的附加表现
## 4. 港口灯
## 含义
- 港口灯、防波堤灯、近港入口灯标
- 属于航海用的强引导对象
## 当前对应层
| 类型 | 当前层 |
| --- | --- |
| source-layer | `navigation_marks` |
| render layer | `nav-marks-harbor-lighthouses` |
| render layer | `nav-marks-breakwater-lighthouses` |
| render layer | `nav-light-flare` |
| render layer | `nav-mark-labels` |
| render layer | `nav-light-abbr-labels` |
## 说明
- “港口灯”目前不是单独 source-layer
- 依靠 `navigation_marks` 内部的 `display_code` / 语义分层来区分
## 5. 渔网 / 渔具
## 含义
- 定置渔具、渔网、渔场作业相关区域
- 对航行规避与钓点判断都很重要
## 当前对应层
| 类型 | 当前层 |
| --- | --- |
| source-layer | `fixed_fishing_gear_area` |
| render layer | `fishery-areas` |
| render layer | `fishery-areas-outline` |
## 说明
- 这是当前最接近“渔网 / 渔具”独立 group 的一组
- 后续如果要单做渔业专题层,可以直接从这一组开始
## 6. 海上标识
## 含义
- 浮标、灯浮标、灯标、AIS、一般航标与引导标识
- 用于导助航、回点、通航识别
## 当前对应层
| 类型 | 当前层 |
| --- | --- |
| source-layer | `navigation_marks` |
| render layer | `nav-marks-small-lights` |
| render layer | `nav-marks-light-beacons` |
| render layer | `nav-marks` |
| render layer | `nav-light-flare` |
| render layer | `nav-mark-labels` |
| render layer | `nav-light-abbr-labels` |
## 说明
- 这是一个大 group
- 当前内部实际又包含:
- 小灯
- 灯标
- 浮标
- 其他海上标识
- 如后续要再细分,可从 `navigation_marks` 内继续拆:
- `display_code`
- `shape_class_code`
- `chart_symbol_code`
## 7. 陆地设施
## 含义
- 陆上结构物
- 港口/设施边界相关点面
- 可用于近岸定位和设施识别
## 当前对应层
| 类型 | 当前层 |
| --- | --- |
| source-layer | `facility_boundary_area` |
| source-layer | `facility_boundary_outline` |
| source-layer | `facility_boundary_point` |
| source-layer | `onshore_structure_area` |
| source-layer | `onshore_structure_line` |
| source-layer | `onshore_structure_point` |
| render layer | `facility-zones` |
| render layer | `facility-zone-outline` |
| render layer | `facility-points` |
| render layer | `land-structures-area` |
| render layer | `land-structures-line` |
| render layer | `landmark-points` |
| render layer | `landmark-point-fallback` |
## 说明
- 这组里其实包含两类对象:
- 港口设施 / 边界设施
- 一般陆上结构物 / 地标
- 如果后续要更清楚,建议再拆成:
- 港口设施
- 陆标设施
## 8. 桥梁 / 跨空线
## 含义
- 桥梁
- 净空限制
- 影响通过性判断的跨越结构
## 当前对应层
| 类型 | 当前层 |
| --- | --- |
| source-layer | `bridge_structure` |
| source-layer | `clearance_limit_line` |
| source-layer | `clearance_limit_point` |
| render layer | `bridge-area` |
| render layer | `bridge-outline` |
| render layer | `height-limit-line` |
| render layer | `height-limit-points` |
| render layer | `height-limit-name-labels` |
| render layer | `height-limit-value-labels` |
## 说明
- “桥梁”和“跨空线/净空线”当前是两组 source-layer
- 但从业务上可以放在同一个大 group
## 9. 海底质
## 含义
- 泥、沙、砾、壳、岩等底质信息
- 对钓鱼、底拖、地形理解很重要
## 当前对应层
| 类型 | 当前层 |
| --- | --- |
| source-layer | `seabed_text_point` |
| source-layer | `seabed_line` |
| render layer | `bottom-material-labels` |
| render layer | `subsea-cables` |
## 说明
- `seabed_text_point`
- 明确是底质文字层
- `seabed_line`
- 当前命名较宽,样式里实际由 `subsea-cables` 在消费
- 这一组后续建议再查清:
- `seabed_line` 到底是海底辅助线,还是混有其他线性海底对象
## 10. 海底危险物
## 含义
- 暗礁、沉船、露岩、洗岩、浅滩、危险障碍、潜堤等
- 这是航行安全核心 group
## 当前对应层
| 类型 | 当前层 |
| --- | --- |
| source-layer | `navigation_hazard_area` |
| source-layer | `navigation_hazard_outline` |
| source-layer | `navigation_hazard_point` |
| source-layer | `anchor_caution_hazard_area` |
| source-layer | `anchor_caution_hazard_outline` |
| source-layer | `anchor_caution_hazard_point` |
| source-layer | `submerged_reef_area` |
| source-layer | `baseline_area` |
| render layer | `navigation-hazard-polygons` |
| render layer | `navigation-hazard-outline` |
| render layer | `hazard-points` |
| render layer | `hazard-polygons` |
| render layer | `anchor-danger-outline` |
| render layer | `anchor-hazard-points` |
| render layer | `anchor-hazard-points-428` |
| render layer | `submerged-structures` |
| render layer | `shoal-danger-area` |
| render layer | `unsurveyed-area` |
## 说明
- 这是当前最复杂的一组
- 里面混合了:
- 直接航行危险物
- 抛锚注意危险物
- 潜堤/潜礁
- 浅滩/未测区域背景提示
- 后续若做航海版,建议把这一组作为最高优先级 group
## 11. 锚地
## 含义
- 锚地、锚泊区、锚泊相关符号
## 当前对应层
| 类型 | 当前层 |
| --- | --- |
| source-layer | `anchorage_area` |
| source-layer | `anchorage_outline` |
| source-layer | `anchorage_point` |
| render layer | `anchorage-areas` |
| render layer | `anchorage-outline` |
| render layer | `anchorage-symbols` |
## 12. 引航 / 航海服务
## 含义
- 引航站
- 其他后续可加入的航海服务点
## 当前对应层
| 类型 | 当前层 |
| --- | --- |
| source-layer | `pilot_station_point` |
| render layer | `pilot-station-points` |
## 13. 陆海背景与海岸线
## 含义
- 海陆底图
- 岸线、浅滩、河口、水域背景
- 是所有其他 group 的底板
## 当前对应层
| 类型 | 当前层 |
| --- | --- |
| source-layer | `baseline_area` |
| source-layer | `baseline_line` |
| source-layer | `baseline_outline` |
| source-layer | `land_area` |
| source-layer | `hole_area` |
| render layer | `sea-area-fill` |
| render layer | `tidal-flat` |
| render layer | `river-water` |
| render layer | `unsurveyed-area` |
| render layer | `shoal-danger-area` |
| render layer | `coast-structures-area` |
| render layer | `coast-structures-line` |
| render layer | `clip-outline` |
| render layer | `land-area` |
| render layer | `land-hole` |
## 说明
- 这组不是“专题对象”,更像基础底板
- 但在 style 组织上必须单列,因为很多危险层是叠在这组之上的
## 14. 地名与定位参考
## 含义
- 海上地名
- 陆上地名
- 用于读图与定位
## 当前对应层
| 类型 | 当前层 |
| --- | --- |
| source-layer | `place_label_sea` |
| source-layer | `place_label_land` |
| render layer | `place-labels-sea-en` |
| render layer | `place-labels-sea-ja` |
| render layer | `place-labels-land-en` |
| render layer | `place-labels-land-ja` |
## 15. 当前最值得后续继续细拆的 group
按后续 style / 产品价值排序,最值得再往下细拆的是这几组:
1. 海底危险物
- 需要拆清“航行危险物 / 抛锚注意危险物 / 鱼礁 / 潜堤 / 浅滩 / 未测区”
2. 海上标识
- 需要拆清“灯塔 / 港口灯 / 灯标 / 灯浮标 / 一般浮标 / AIS”
3. 陆地设施
- 需要拆清“港口设施 / 陆标设施 / 一般地标”
4. 海底质
- 需要拆清“底质文字 / 海底辅助线 / 海底电缆或其他海底线”
## 16. 推荐的后续落地方向
如果下一步要继续推进 delivery 版本组织,建议顺序是:
1. 先保持同一套 PBF
2. 先把 style 内部按本文件的 group 重排
3. 再决定哪些 group 要继续拆成单独 profile
建议优先可见的 profile 方向:
1. `navigation-core`
- 强化:海底危险物、海上标识、桥梁 / 跨空线、锚地、引航
2. `fishing-detail`
- 强化:等深线、鱼礁、海底质、穴、海底结构