Skip to content

v2.0.0

Choose a tag to compare

@limingkang12345 limingkang12345 released this 14 Aug 00:01
· 12 commits to main since this release
67ffd66

CalculusCalculator v2.0.0

更新内容

v2.0.0 是一次重大版本重构。 以下 v2.0.0 更新内容按重要程度由高到低排列,并对每条做了更详细的说明。


1. 积木化可视化编程(Blockly)——全新核心功能

新增基于 Google Blockly 的可视化编程编辑器,用户无需编写代码,即可通过拼接积木搭建计算流程,是本次版本最重要的功能升级。目前支持:

  • SymPy / LaTeX 表达式输入:积木内可输入 Python/SymPy 语法或带 $ 前缀的 LaTeX 表达式。
  • 编辑器内直接执行流程:搭建好积木后一键运行,实时显示每一步的中间结果。
  • 输出公式自动渲染:计算结果以 LaTeX 形式自动渲染展示,可读性更强。
  • 定义函数 / 函数性质分析:可在积木中定义自定义函数并分析其单调性、极值、周期性等性质。
  • 求导 / 积分:支持显函数求导、不定/定积分等积木。
  • 解方程(组)/ 不等式(组)/ 解三角形:覆盖各类方程与不等式求解场景。
  • 工程存档 / 读档:积木工作区可随工程存档,受"设置 → 存档设置"项控制。
  • 预览 Python 代码:可一键预览当前积木工作区生成的 Python 代码,支持复制,方便进阶用户理解积木背后的逻辑。
  • 启动界面:首次打开积木编辑器时预初始化 WebEngine,避免闪退、提升稳定性。

2. 公式编辑器全面升级(MathLive)

将可视化公式输入的后端由旧组件全面更换为 MathLive,显著提升输入体验:

  • 可视化拼写公式时无需记忆 LaTeX,分数、根号、上下标、矩阵等数学符号点选即可。
  • 公式编辑器现改为内嵌于主窗口底部的浮动面板(类似虚拟键盘):不改变窗口大小,可遮盖部分内容,输入框右侧"可视化输入"按钮一键呼出,拼好后点"插入公式"写回输入框并自动关闭。
  • 面板支持实时 LaTeX 预览与深浅色主题适配。

3. 工程文件格式升级为 .cca,安装后双击可直接打开

  • 工程文件后缀由旧格式统一改为 .cca(文件内容仍为 JSON)。
  • 安装软件后可直接双击 .cca 文件打开对应工程,使用更便捷。
  • 存档内容(标签页输入、自定义函数列表、几何对象、积木工作区等)可在"设置 → 存档设置"中精细控制。

4. 新增启动画面(Splash Screen)

  • 程序启动时显示带进度的启动画面,明确"加载语言设置 / 初始化内核 / 创建主窗口"等阶段,提升启动过程的反馈感。
  • 优化启动速度,减少用户等待时的空白感。

5. 初始化引导教学(Guide)

新增新手引导,帮助新用户快速了解各功能区。满足以下任意一种情况时自动触发:

  • 设置文件未初始化;
  • 设置中 hasInitialized 为否;
  • 用户点击菜单「关于 → 引导」可随时再次打开。

引导在"表达式输入"一步突出可视化公式编辑器的使用,并提供"动手试试"互动练习(可即时验证 SymPy 表达式是否合法);底部带进度条,支持左右方向键快捷切换。

6. 帮助文档与界面双语支持

  • 帮助文档 Docs 新增英文支持,并提供中英双语文档站。
  • 积木模式与启动页面新增英文支持,界面语言可随"设置 → 语言"即时切换。

7. 图像操作:放缩、拖动与保存

  • 对绘制的函数 / 几何图像新增放缩、拖动与保存支持,方便观察与分享图像。
  • 支持自定义定义域,绘制体验更完善。

8. 界面样式优化与首页美化

  • 优化整体界面样式,增大主窗口初始大小,开箱观感更舒适。
  • 丰富首页内容、美化首页样式,帮助用户更快定位常用功能。

9. 支持清除设置文件

  • 新增一键清除持久化设置文件(settings.json)的功能,可重置语言、主题与初始化状态,便于排障与恢复默认。

10. 版本号写入设置文件

  • 在 core/settings.py 中引入版本号单源 APP_VERSION,并在每次启动时写入设置文件(version 字段,合并写入不覆盖其它项)。
  • 便于记录"最近一次运行的版本",用于检查升级或排查配置兼容性问题。

11. 修复问题

  • 修复公式渲染背景色与窗口背景色存在色差的问题。
  • 修复解三角形公式无法渲染的问题。
  • 修复解三角方程 / 不等式时答案未化到最简的问题。
  • 修复调整颜色后绘图区背景颜色没有改变的问题。