1.2 KiB
1.2 KiB
Decisions
记录架构决策和重要选择。
[2026-01-27] 实施决策
执行方式
- Task 1-3: Orchestrator 直接实现(代码简单,遵循既有模式)
- 原因: 子代理调用失败(JSON Parse error),且任务为标准代码添加,无复杂逻辑
代码模式复用
- Engine 方法封装:复用测量功能模式(
src/components/engine/index.ts:217-401) - Manager 代理:复用测量方法代理模式(
src/managers/engine-manager.ts:126-163) - DialogManager 回调:复用 MeasureDialogManager 模式
生命周期设计
- 打开弹窗:
onDialogCreated()中自动激活 X 轴 - 切换轴向:
onAxisChange回调中调用activateSectionAxis() - 关闭弹窗:
onBeforeDestroy()中调用deactivateSectionAxis() - 关键点: 使用
clipping.disActive()停用所有剖切,而非单个 plane 的disActive()
幂等性保证
- 重复激活同一轴向时,
activateSectionAxis()静默返回 - 避免不必要的引擎 API 调用
注释策略
- 公共 API 方法:保留 JSDoc(IntelliSense 需要)
- 业务逻辑限制:保留注释("第三方引擎无 API")
- 生命周期步骤:保留注释(理解执行时机)