2026-05-08-01-53-07 修正DICOM范围和切割Mask预览
This commit is contained in:
18
工程分析/经验记录.md
18
工程分析/经验记录.md
@@ -703,3 +703,21 @@ C. 解决问题方案
|
||||
D. 后续如何避免问题
|
||||
|
||||
涉及 DICOM 与 STL 配准的旋转、缩放、切割操作,应优先明确坐标系和 pivot 来源,默认以 DICOM 体中心为基准;高频切片请求应先设计缓存键和预取策略,避免 UI 操作直接触发重复网络与纹理构建。
|
||||
|
||||
## 2026-05-08-01-53-07 DICOM 范围变化不改变空间基准
|
||||
|
||||
A. 具体问题
|
||||
|
||||
DICOM 切片范围变化后,融合视图中的 DICOM 体深度和帧分布会随范围重新计算,导致模型看起来被自动居中或改变了和 DICOM 的原始配准位置;切分开启后也缺少在 DICOM 帧上直观看到 Mask 的反馈。
|
||||
|
||||
B. 产生问题原因
|
||||
|
||||
后端 `dicom-fusion-volume` 使用当前 `start/end` 的范围长度计算 `physicalSize.depth`;前端又把当前返回的帧均匀铺满整个 DICOM box,而不是按原始 DICOM index 放回完整序列位置。
|
||||
|
||||
C. 解决问题方案
|
||||
|
||||
后端 physical depth 改为完整序列深度;前端 DICOM slice plane 的 Z 位置改用 `volume.indices[index] / (total - 1)` 映射到完整 DICOM box;切片范围改为 `sliceStart/sliceEnd` 双端点,默认最高切片;切割开启时额外渲染切割帧 DICOM texture,并叠加橙色 Mask 轮廓。
|
||||
|
||||
D. 后续如何避免问题
|
||||
|
||||
所有配准相关可视化都必须区分“显示范围”和“空间基准”:显示范围可以变化,但 DICOM 物理尺寸、模型缩放基准和坐标原点不能跟着变化;任何切割或 Mask 预览都要明确只是辅助显示,不能修改原始 DICOM/STL 位姿。
|
||||
|
||||
Reference in New Issue
Block a user