# 需求分析 - 2026-05-07-16-35-52 ## 原始需求摘要 用户要求继续严格使用代码编纂工作流处理本次 3D 模型位姿交互优化: 1. 将 `整体位姿` 旁边的 `重置位姿` 拆分/改为两个按钮:`重置旋转位姿`、`平移缩放位姿`。 2. 给 `整体位姿` 中的旋转和平移控制新增左右 90 度或快捷调整按钮。 3. 将模型旋转中心设定为模型正中间,避免当前旋转中心偏移导致的交互异常。 4. 在模型右下方增加 X/Y/Z 三个轴的旋转坐标或方位提示,方便查看模型当前方位。 ## 业务目标 - 让 3D 模型位姿调整更加符合医学三维模型浏览习惯。 - 区分旋转重置和平移/缩放重置,避免用户只想恢复一个维度时丢失全部位姿设置。 - 让模型围绕自身几何中心旋转,提升旋转、平移、缩放的可控性。 - 增加可视化方向参考,帮助用户判断当前 3D 模型朝向。 ## 输入与输出 输入: - 用户在 `项目库 - 3D 模型` 页面对整体位姿滑块、快捷按钮、鼠标拖拽、滚轮等交互。 - 当前项目中的 STL 文件及后端返回的 STL preview 数据。 输出: - UI 中出现 `重置旋转位姿` 和 `平移缩放位姿` 两类按钮。 - 旋转项支持 ±90 度快捷调整;平移项支持正负方向快捷步进;缩放项支持快捷放大/缩小。 - 3D 模型以整体几何中心为旋转中心。 - 3D 预览右下角显示 X/Y/Z 方位坐标和当前旋转角度。 ## 影响范围 - `WebSite/src/components/ProjectLibrary.tsx` - `ModelPose` 状态更新逻辑。 - `NativeStlViewer` 中 Three.js group 层级、模型居中、旋转中心、位姿同步。 - `整体位姿` 控制区按钮和布局。 - 3D 画布右下角方位提示 overlay。 ## 风险点 - 若旋转中心调整不当,可能导致 STL 构件之间相对位置被破坏。 - 若快捷按钮步进与滑块范围不一致,可能出现 UI 数值越界。 - 若右下角方位提示遮挡模型或底部状态栏,可能影响可视化体验。 - 平移没有“90 度”的物理含义,需要以正负方向固定步进方式解释。 ## 待确认问题 1. “平移新增左右 90 度调整按钮”在空间变换中没有直接物理含义,本方案拟解释为平移 X/Y/Z 的正负方向快捷步进按钮,旋转 X/Y/Z 使用 ±90 度按钮。 2. `平移缩放位姿` 按钮文案是否需要完整写为 `重置平移缩放位姿`;实现方案中会优先使用完整文案,避免歧义。 ## 人工审核状态 - 需求分析:用户已确认。 - 确认信息:用户回复“都确认,后续直接搞”。