2026-05-20-02-02-37 支持位姿输入与导入
This commit is contained in:
59
工程分析/实现方案-2026-05-20-02-02-37.md
Normal file
59
工程分析/实现方案-2026-05-20-02-02-37.md
Normal file
@@ -0,0 +1,59 @@
|
||||
# 实现方案-2026-05-20-02-02-37
|
||||
|
||||
## 实现方案文档路径
|
||||
|
||||
`工程分析/实现方案-2026-05-20-02-02-37.md`
|
||||
|
||||
## 修改目标
|
||||
|
||||
让“模型位姿”每一项都支持直接数字输入,并新增导入位姿数据功能,兼容当前导出的位姿 JSON,导入后同步当前位姿和保存位姿列表。
|
||||
|
||||
## 涉及路径
|
||||
|
||||
- `WebSite/src/components/ReverseWorkspace.tsx`
|
||||
- `工程分析/需求分析-2026-05-20-02-02-37.md`
|
||||
- `工程分析/实现方案-2026-05-20-02-02-37.md`
|
||||
- `工程分析/测试方案-2026-05-20-02-02-37.md`
|
||||
- `工程分析/经验记录.md`
|
||||
|
||||
## 技术路线
|
||||
|
||||
1. 增加位姿归一化辅助函数:
|
||||
- 对每个位姿字段按 `poseStepConfig` 执行数字校验、clamp 和默认值补齐。
|
||||
- 对导入的保存位姿列表补齐默认/俯视/侧视,并去重。
|
||||
2. 模型位姿数值输入:
|
||||
- 将原只读数值改成 `<input type="number">`。
|
||||
- 使用现有 step/min/max/precision。
|
||||
- 输入合法时立即更新 `modelPose`,继续触发三维与二维映射联动。
|
||||
3. 导入位姿数据:
|
||||
- 新增隐藏 file input 与“导入”按钮。
|
||||
- 读取 JSON,兼容 `{ activePose, modelPoses }`、`{ pose }`、直接 pose 对象三种形式。
|
||||
- 导入 `modelPoses` 时调用现有 `commitSavedPoses` 持久化。
|
||||
4. 反馈与容错:
|
||||
- 导入成功设置提示;导入失败设置 `fusionError`。
|
||||
- 清空 file input value,允许重复导入同一文件。
|
||||
|
||||
## 执行步骤
|
||||
|
||||
- 更新 `ReverseWorkspace.tsx` 的 import、ref、辅助函数和 handlers。
|
||||
- 调整模型位姿 UI,将保存按钮组改为保存/导入两个操作。
|
||||
- 将数值展示替换为可编辑数字输入。
|
||||
- 运行 `npm run lint` 与 `npm run build`。
|
||||
- 重新部署并验证服务。
|
||||
|
||||
## 兼容性与回滚方案
|
||||
|
||||
- 旧滑条、加减按钮、保存位姿、重命名位姿逻辑继续保留。
|
||||
- 导入功能只读本地 JSON,不改后端接口。
|
||||
- 如导入格式异常,只提示错误,不覆盖当前状态。
|
||||
|
||||
## 预计文件变更
|
||||
|
||||
- `ReverseWorkspace.tsx`:位姿数字输入、导入按钮、JSON 解析与归一化。
|
||||
- 工程分析文档:新增本次三份文档并追加经验记录。
|
||||
|
||||
## 提交与部署策略
|
||||
|
||||
- Commit message:`2026-05-20-02-02-37 支持位姿输入与导入`
|
||||
- 显式暂存本次相关文件,避免提交历史删除状态。
|
||||
- 推送到 Gitea `origin/main` 后,沿用 `tmux` 会话 `revoxelseg-dicom` 重新部署。
|
||||
Reference in New Issue
Block a user