飞轮设计与运动学仿真桌面应用
本项目的灵感来源与对标项目:CamForge
CamForge 是一款基于 Tauri v2 的凸轮设计桌面应用,提供了参数输入、凸轮轮廓预览、运动分析曲线等完整的工程设计功能。
FlyForge 的整体架构设计、UI 布局模式、交互方式(截面预览 + 图表分析 + 结果面板)均以 CamForge 为参照蓝本进行开发。 在此基础上,FlyForge 将应用场景从凸轮设计拓展到飞轮设计与运动学仿真领域,实现了飞轮参数建模、应力分析、动力学仿真等专属功能。
感谢 CamForge 项目提供的设计思路和技术参考。
FlyForge 是一款专为机械工程领域打造的飞轮设计与仿真桌面应用。基于 Tauri v2 + SolidJS + Rust 构建,提供高性能的飞轮参数设计、应力分析、动力学仿真与数据可视化功能。
- 两种飞轮类型:环形轮(等厚度)、锥形轮
- 几何尺寸:外径 Ro、内径 Ri、轮缘厚度、轮毂径、轮毂厚度
- 材料库:12 种预设材料(合金钢、铝合金、钛合金、碳纤维、铸铁等)
- 工况参数:额定/最大/最小转速、安全系数、离散点数量
- 预设方案:8 种典型飞轮配置一键加载
- SVG 实时渲染飞轮截面轮廓
- 滚轮缩放 + 鼠标拖拽平移
- 网格背景 + 坐标轴 + 颜色图例
- 应力分布图:von Mises、周向应力、径向应力
- 转速曲线:启动/制动过程转速-时间曲线
- 能量柱状图:额定/最大/可用储能对比
- 十字准星跟踪 + 实时数据浮动框
- 滚轮缩放 + 拖拽平移 + 极值点标注
- 质量、转动惯量、最大应力及位置
- 屈服/疲劳安全系数、安全破裂转速
- 额定/可用/最大储能、比能量
- 安全评估状态(通过/未通过)
- CSV / JSON / SVG / 参数 JSON 多种格式导出
- 支持自定义保存路径
- 黑绿科技配色主题
- 左右侧边栏可折叠
- 中央区分隔线可拖拽调整上下比例
- 数字输入框长按快速微调
- 实时计算(300ms 防抖)
| 层级 | 技术 |
|---|---|
| 前端框架 | SolidJS + TypeScript |
| UI 样式 | Tailwind CSS |
| 构建工具 | Vite |
| 桌面框架 | Tauri v2 (Rust) |
| 计算核心 | Rust (flyforge-core) |
| 安装包 | NSIS |
npm installnpm run dev # 启动前端开发服务器
npx tauri dev # 启动 Tauri 开发模式(含前端 + Rust 后端)npx tauri build # 构建 Windows 安装包 (.exe)构建产物位于 src-tauri/target/release/bundle/nsis/。
cargo test --workspace # Rust 单元测试FlyForge/
├── src/ # 前端源码 (SolidJS + TypeScript)
│ ├── components/ # UI 组件
│ │ ├── Layout.tsx # 主布局(三栏 + 分隔线)
│ │ ├── Header.tsx # 顶栏(标题 + 状态)
│ │ ├── AccordionPanel.tsx # 左侧参数面板
│ │ ├── SectionPreview.tsx # 飞轮截面预览
│ │ ├── VisualizationPanel.tsx# 可视化图表
│ │ └── ResultsPanel.tsx # 右侧结果面板
│ ├── services/ # API 调用层
│ ├── store/ # 全局状态管理
│ └── types/ # TypeScript 类型定义
├── crates/ # Rust 代码
│ ├── flyforge-core/ # 飞轮计算核心库
│ └── flyforge-server/ # 可选 REST API 服务
├── src-tauri/ # Tauri 桌面应用入口
│ ├── src/lib.rs # Tauri 命令定义
│ ├── icons/ # 应用图标
│ └── tauri.conf.json # Tauri 配置
└── .github/workflows/ # CI/CD
| 项目 | 说明 |
|---|---|
| CamForge | 凸轮设计桌面应用(本项目灵感来源) |