2026-05-04-05-20-16 优化DICOM切片下载和3D预览

This commit is contained in:
2026-05-04 05:32:34 +08:00
parent 4ef3be69f4
commit 4922c2d991
8 changed files with 584 additions and 37 deletions

View File

@@ -397,3 +397,57 @@ C. 解决问题方案
D. 后续如何避免问题
跨页面工作流必须在目标页面重新显示当前操作对象;医学影像配准类视图至少应具备影像层、模型层、对齐标识和当前切片控制。
## 2026-05-04-05-20-16 DICOM 三平面预览与下载
A. 具体问题
DICOM 切片长按不能连续移动,三平面不能旋转,矢状面/冠状面存在大量黑边导致主体像只显示一半,同时缺少当前 PNG 和整套 DICOM 压缩包下载。
B. 产生问题原因
前端切片控制只有原生 range 输入缺少连续步进逻辑canvas 绘制没有旋转参数;后端重建平面直接输出完整矩阵,没有对非黑内容边界做裁切;下载链路只覆盖了分割 Mask。
C. 解决问题方案
前端新增上下箭头长按定时步进、左/右 90 度旋转和与显示一致的 PNG 导出;后端 DICOM 文件按自然文件名排序,对重建平面做内容裁切并做轻量边缘增强;新增 `dicom-archive` 接口生成 `tar.gz` 压缩包。
D. 后续如何避免问题
医学影像预览的显示状态应统一由平面、切片、窗宽窗位、旋转角度组成;下载当前视图时复用同一套 canvas 绘制逻辑,避免屏幕显示和导出结果不一致。
## 2026-05-04-05-20-16 3D 模型加载完成但画布空白
A. 具体问题
项目库 3D 模型页提示加载完成,但用户界面仍可能看不到模型。
B. 产生问题原因
STL 抽样顶点仍保留原始模型坐标,先给 group 位置减中心再缩放时模型可能被缩放后的坐标体系推离相机视野WebGL 不可用时二维兜底 canvas 尺寸也依赖容器测量,可能拿到过小尺寸。
C. 解决问题方案
模型加载完成后先计算整体包围盒,将中心偏移直接平移到每个 mesh 的 geometry 顶点,再统一缩放 group 和设置相机;二维兜底 canvas 在容器尺寸不可用时使用父容器尺寸或默认尺寸,保证兜底预览可见。
D. 后续如何避免问题
三维预览应在模型坐标归一化后再设置相机;验证时要覆盖 WebGL 正常路径和 WebGL 不可用兜底路径,并做 canvas 尺寸和非背景像素检查。
## 2026-05-04-05-20-16 逆向工作区路径信息噪声
A. 具体问题
逆向工作区标题中显示 `Head_CT_DICOM ↔ Head_CT_ReConstruct`,对用户当前操作帮助不大。
B. 产生问题原因
早期为了证明项目数据源接入,将数据目录路径直接放进了页面副标题。
C. 解决问题方案
副标题改为只显示当前项目名称DICOM 数量和 STL 数量保留在上下文标签中。
D. 后续如何避免问题
工作区首屏应优先显示“当前正在处理哪个项目”和“下一步操作”,底层路径只在诊断、详情或设置区域出现。