feat: 添加基于pywebview的图形界面支持

新增图形界面模块webui,使用Vue 3 + Quasar + TypeScript + Tailwind CSS开发
扩展README文档说明图形界面使用方法
更新.gitignore忽略前端相关文件
添加Python版本配置文件
This commit is contained in:
dmy
2026-03-02 19:39:28 +08:00
parent a153e69eb7
commit 6ebfcf848d
20 changed files with 4450 additions and 8 deletions

View File

@@ -11,6 +11,7 @@
- 支持交流/直流线路计算
- 输出CAD图形DXF格式可视化击距模型
- 提供动画演示模式(可选项)
- **提供图形化界面pywebview**,支持可视化参数配置和计算
## 安装
@@ -35,6 +36,7 @@ pip install -r requirements.txt
- matplotlib - 数据可视化和动画
- numpy - 数值计算
- tomli - TOML配置文件解析
- pywebview - 图形界面框架
## 使用方法
@@ -68,6 +70,47 @@ make
生成的可执行文件位于 `dist/Lightening.exe`
### 图形界面使用
程序提供基于 pywebview 的图形界面,使用 Vue 3 + Quasar + TypeScript + Tailwind CSS 开发。
#### 安装前端依赖
```bash
cd webui
npm install
```
#### 开发模式运行
```bash
# 终端1启动前端开发服务器
cd webui
npm run dev
# 终端2启动 pywebview 窗口
python webview_app.py
```
#### 生产模式运行
```bash
# 构建前端
cd webui
npm run build
# 启动 pywebview 窗口
python webview_app.py
```
图形界面支持:
- 可视化参数配置(基本参数、高级参数、可选参数)
- 动态添加/删除数组参数
- 参数导出功能
- 计算结果展示
详细说明请参考 `webui/README.md`
## 配置文件格式
配置文件使用 TOML 格式,包含三个主要部分:
@@ -144,10 +187,26 @@ EGM/
├── main-batch.py # 批量计算程序
├── core.py # 核心计算模块
├── animation.py # 动画演示模块
├── webview_app.py # pywebview 图形界面后端
├── article.toml # 示例配置文件
├── Makefile # 构建脚本
├── pyproject.toml # 项目配置
├── README.md # 说明文档
├── webui/ # 图形界面前端项目
│ ├── src/
│ │ ├── components/
│ │ │ └── ParameterForm.vue
│ │ ├── types/
│ │ │ └── index.ts
│ │ ├── App.vue
│ │ ├── main.ts
│ │ └── style.css
│ ├── package.json
│ ├── vite.config.ts
│ ├── tsconfig.json
│ ├── tailwind.config.js
│ ├── postcss.config.js
│ └── index.html
└── CSharp/ # C# 版本实现
```