feat(style): 「系数/偏移」改为「映射/偏移」并新增「公式映射」

- 按钮文案改为「映射/偏移」;激活态 = 公式非空 或 系数≠1 或 任一偏移≠0
- 二级面板顶部新增「公式映射」(标题栏带还原图标):Y = + 表达式输入框,默认 f(t)
- 结算顺序固定:公式映射 -> 系数 -> 绝对值 -> 垂直镜像 -> Y 偏移 -> 时间轴偏移
- 表达式规则:支持 + - * / ( ) 一元正负、常量 pi、自变量 X/x/f/f(t);保存前把 X 归一化为 f(t)
- 非法表达式不写入样式,警告走 SignalPanel::TakePendingHint -> PlotView::ShowPersistentHint(自绘浮层,不用 MessageBox)
- 公式参与折线缓存键 / SceneContentHash / SceneStyleEntry / HaloLayerCache;
  DrawTransformOrderPreserving 返回 false(非保序),自适应幅值在 HasFormula() 时逐点扫描
- 派生信号与克隆的烘焙自动包含公式(时间轴偏移除外)
- Documents/agent_mem.md 追加「第二十四轮」硬约束
This commit is contained in:
DeepSeek V4.1 Flash committed 2026-11-02 20:42:58 +08:00
1 parent 1e1c2432ae
commit 955b233e63
3 files changed
+127 -6

No files matched your search

@@ -904,9 +904,10 @@ namespace jdi
UiText(g, label, m_fonts->uiSmall, rect,
checked ? m_theme->textStrong : m_theme->text, TextAlign::CENTER);
};
// 系数/偏移:系数不等于默认值 1、或任一偏移不为 0 时显示为"已启用"。
paintToggle(kAdjustGain, L"系数/偏移",
!GainIsDefault(style->gain) || style->Offset(), StyleHit::GAIN_ADJUST);
// 映射/偏移:公式映射非空、系数不等于默认值 1、或任一偏移不为 0 时显示为"已启用"。
paintToggle(kAdjustGain, L"映射/偏移",
style->HasFormula() || !GainIsDefault(style->gain) || style->Offset(),
StyleHit::GAIN_ADJUST);
// 镜像:水平或垂直任一被勾选即显示为激活态。
paintToggle(kAdjustMirror, L"镜像", style->Mirrored(), StyleHit::MIRROR_ADJUST);
paintToggle(kAdjustAbsolute, L"绝对值", style->absolute, StyleHit::ABSOLUTE_TOGGLE);