diff --git a/STEP_RECORD.md b/STEP_RECORD.md index a13396e..bc1c760 100644 --- a/STEP_RECORD.md +++ b/STEP_RECORD.md @@ -17,7 +17,7 @@ Remote: `ssh://git@nas:2222/tei/pbf.git` 当前页面支持 2 个 profile,但仍是同一张 HTML: 1. 唐津 20 海里 - - `Style: karatsu-final-style-r4-20260401-1523 (style.navsea-delivery-karatsu-20nm-final.json)` + - `Style: karatsu-final-style-r5-20260401-1540 (style.navsea-delivery-karatsu-20nm-final.json)` - `PBF: karatsu-final-pbf-20nm-20260401-0248 (pbf-delivery-karatsu-20nm-final)` 2. 九州 @@ -87,6 +87,11 @@ Remote: `ssh://git@nas:2222/tei/pbf.git` - 当前 `20nm final` 这条线,危险物对象保真已经过关 - 当前主矛盾是 `style` +- 当前又补了一条危险物样式纠偏: + - `測定済みの沈船 / 船体露出沈船 / 危険全沈没船` 这类沉船对象不能继续走泛化 `wreck=429` 或 `hazard_mark=428` + - 当前 compare 页里,`anchor_caution_hazard_point` 已改成: + - 有 `class_code` 时只走 class-specific 图标层 + - 这次修正的直接目的就是避免“沉船被画成鱼礁/眼形符号” ## Object Preservation Audit diff --git a/navsea_tile_builder.py b/navsea_tile_builder.py index 5a2a3d8..925f5d8 100644 --- a/navsea_tile_builder.py +++ b/navsea_tile_builder.py @@ -1110,7 +1110,7 @@ class NavSeaTileBuilder: if source_layer in {"p投錨注意障害物", "p航行危険障害物"}: if "魚礁" in object_type: return "hazard", "fish_reef" - if "沈船" in object_type: + if "沈船" in object_type or "沈没船" in object_type: return "hazard", "wreck" if any(token in object_type for token in ("暗岩", "洗岩", "干出岩", "水上岩", "露出岩")): return "hazard", "rock_awash" @@ -1323,7 +1323,7 @@ class NavSeaTileBuilder: return "rock", "critical" if any(token in object_type for token in ("岩礁", "サンゴ礁")): return "reef", "major" - if "沈船" in object_type: + if "沈船" in object_type or "沈没船" in object_type: if "危険" in object_type or "露出" in object_type: return "wreck", "critical" return "wreck", "major" @@ -1379,6 +1379,12 @@ class NavSeaTileBuilder: if light_color_code: return "light-daytime-3" if source_layer in {"p航行危険障害物", "p投錨注意障害物"}: + if "船体露出沈船" in canonical_object_type: + return "symbol-daytime-410" + if "危険全沈没船" in canonical_object_type: + return "symbol-daytime-412" + if "測定済みの沈船" in canonical_object_type: + return "symbol-daytime-413" if chart_symbol_code == "fish_reef": return "symbol-daytime-428" if hazard_class == "rock": diff --git a/src/pbf/navsea-compare-karatsu-20nm.html b/src/pbf/navsea-compare-karatsu-20nm.html index 3eca7d0..ee9b2d4 100644 --- a/src/pbf/navsea-compare-karatsu-20nm.html +++ b/src/pbf/navsea-compare-karatsu-20nm.html @@ -325,7 +325,7 @@ deliveryPaneLabel: "最终 release style + 唐津 20 海里 final PBF", deliveryStyleUrl: "./domain/style.navsea-delivery-karatsu-20nm-final.json", deliveryTileUrl: "http://192.168.200.184/pbf-delivery-karatsu-20nm-final/{z}/{x}/{y}.pbf", - deliveryStyleVersion: "karatsu-final-style-r4-20260401-1523", + deliveryStyleVersion: "karatsu-final-style-r5-20260401-1540", deliveryPbfVersion: "karatsu-final-pbf-20nm-20260401-0248", deliveryStyleFile: "style.navsea-delivery-karatsu-20nm-final.json", deliveryPbfName: "pbf-delivery-karatsu-20nm-final", diff --git a/src/pbf/style.navsea-delivery-karatsu-20nm-final.json b/src/pbf/style.navsea-delivery-karatsu-20nm-final.json index 7edcfc2..5b5e08c 100644 --- a/src/pbf/style.navsea-delivery-karatsu-20nm-final.json +++ b/src/pbf/style.navsea-delivery-karatsu-20nm-final.json @@ -1331,6 +1331,13 @@ }, "filter": [ "all", + [ + "!", + [ + "has", + "class_code" + ] + ], [ "!=", [