# 需求分析-2026-05-19-23-47-31 ## 开始时间 2026-05-19-23-47-31 ## 原始需求摘要 用户要求对逆向工作区右侧视图做产品润色:将“Mask 展示”重命名为“逆向分割映射视图”或“体素化映射视图”;明确该区域以二维 DICOM 切片为底图,叠加由三维 STL 模型逆向推导生成的二维分割掩码 Label Map;覆盖层颜色、透明度、显示隐藏状态必须与中间“可视化工具栏”的“构件层级”实时联动;右侧视图还需要独立 Slice Navigator,支持逐层浏览当前 Z 轴 DICOM 切片及对应分割结果。 ## 业务目标 - 将右侧结果区从“STL 实体切面”语义升级为“DICOM + STL 逆向体素化映射”的二维校验视图。 - 让医生或标注人员能在同一个二维视图中核对原始 CT 灰度影像和由 STL 构件层级推导出的 Label Map。 - 保证构件层级面板中的颜色、透明度和显隐状态立即反映在右侧叠加层中。 - 让右侧视图拥有独立于左侧 DICOM 范围控件的逐层切片浏览能力。 ## 输入与输出 - 输入: - 默认项目的 DICOM 切片预览接口 `/api/projects/:projectId/dicom-preview` - STL preview 接口 `/api/projects/:projectId/models/:fileName/preview` - 项目级 `moduleStyles` - 用户选择的独立映射切片序号 - 输出: - 右侧“逆向分割映射视图” - DICOM Base Layer - STL 逆向投影 Overlay Label Map - 与构件层级联动的颜色、透明度、显示隐藏状态 - 独立 Slice Navigator ## 影响范围 - 主要影响 `WebSite/src/components/ReverseWorkspace.tsx`。 - 可能需要补充 `WebSite/src/index.css` 的滑条样式。 - 不改变后端 API、不改变项目状态结构、不改变导出格式。 - 文档会新增本次需求、实现、测试方案,并更新经验记录。 ## 关键约束 - 历史经验要求不要伪造无来源 Mask。本次覆盖层必须从 STL preview 几何数据推导,且每个覆盖区域对应具体 STL 构件与 `partId`。 - DICOM 原始影像必须作为底层常驻显示。 - Overlay 可视属性必须直接读取 `moduleStyles`,避免右侧另建一套独立状态。 - Slice Navigator 必须独立于左侧 DICOM 切片范围,不应破坏左侧三维融合和模型切分流程。 - 当前工作区已有历史工程分析文档删除状态,本次提交不能混入这些删除。 ## 风险点 - 当前后端尚未提供医学级真实体素化 Label Map,本次前端只能基于 STL preview 三角面做浏览器侧逆向投影映射,精度取决于 STL 预览采样与配准状态。 - 高频拖动 Slice Navigator 会触发 DICOM 预览请求,需要防止旧请求覆盖新结果。 - Canvas 图层尺寸必须保持一致,否则 DICOM 和 Overlay 会错位。 - 构件数量和 STL 采样量较大时,Overlay 绘制可能有性能压力。 ## 默认假设 - 本次按已有确认执行,不在方案阶段等待二次确认。 - 右侧视图标题采用“逆向分割映射视图”,在界面中辅以 Label Map、Slice Navigator 等短标签。