2.6 KiB
2.6 KiB
需求分析
时间戳:2026-05-04-04-58-36
原始需求摘要
用户要求严格使用代码编纂工作流处理本次修改,并在开始时确认工作流整体流程;本次需求分析、实现方案、测试方案和执行修改均不需要人工二次确认。
具体需求:
- 项目列表旁边的
+和向内收缩按钮重叠。 - 逆向工作区需要显示当前项目;影像与模型融合视角应显示 DICOM 与 STL 等比例拉伸到同种形状、中心对齐后的效果。
- 项目列表中矢状面和冠状面看起来不动;应在最早创建/载入项目时把图像处理并预存;同时 DICOM 应支持多种显示模式。
- 3D 模型页面为空;如果正在加载,应显示加载进度条;如果当前方法不可行,可调用 Python 现成包。
- 控制台出现
THREE.Clock: This module has been deprecated. Please use THREE.Timer instead.和 OrbitControls 非 passive wheel 事件警告。
业务目标
- 优化项目库左侧标题区布局,避免操作按钮重叠。
- 让逆向工作区明确显示当前项目,并提供直观的 DICOM/STL 融合对齐预览。
- 提升 DICOM 三方向浏览性能和可用性,支持缓存和显示模式。
- 确保 3D 模型预览可见,并提供清晰的加载状态。
- 尽量消除由 React Three Fiber / Drei 引入的 Three.js 弃用警告。
输入与输出
输入:
- 当前项目 ID。
- 默认 DICOM 序列与 STL 文件。
- 用户选择 DICOM 平面、切片与显示模式。
- 用户调整 STL 显示颜色、透明度和可见性。
输出:
- 项目列表标题区不重叠。
- 逆向工作区顶部和内容区显示当前项目。
- 融合视图显示 DICOM 背景和 STL 归一化叠加效果。
- DICOM 三方向预览来自后端缓存,支持窗宽窗位、骨窗、软组织、高对比模式。
- 3D 模型显示加载进度,模型加载完成后可见。
- 控制台不再出现
THREE.Clock警告。
影响范围
WebSite/server.tsWebSite/src/lib/api.tsWebSite/src/types.tsWebSite/src/components/ProjectLibrary.tsxWebSite/src/components/ReverseWorkspace.tsx工程分析/经验记录.md
风险点
- DICOM 三方向缓存会增加运行态内存和首次请求计算量。
- 用原生 Three.js 替换 React Three Fiber 可减少依赖警告,但需要手动管理 renderer/camera/geometry 生命周期。
- 当前融合视图仍是演示级对齐,不等同真实医学配准矩阵。
- Python 本次暂不引入,因为 Node/Three.js 能完成本次显示和缓存目标;后续真实体素化再引入更合理。
待确认问题
- 本次用户已明确无需二次确认,直接执行。