Skip to content

blankzsh/Genine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

球员数据查看器 (Genine)

这是一个使用 Rust 和 egui 框架开发的球员数据可视化工具,可以从 SQLite 数据库读取球员数据并进行展示。

功能特点

  • 从 SQLite 数据库读取球员数据
  • 左侧显示球员列表,可按名称、球队和国籍搜索
  • 右侧显示选中球员的详细信息
  • 显示球员六维属性雷达图(技术、精神、进攻、防守、身体、守门)
  • 支持球员对比功能
  • 支持数据库导入导出功能
  • 支持自定义字体,默认使用 PingFang 字体
  • 自动回退到系统字体,支持 Windows 常见中文字体
  • 优化的界面显示和性能

字体支持

应用程序会按以下顺序查找并使用字体:

  1. 首先尝试加载 assets/font/Pingfang.ttf 自定义字体
  2. 如果找不到自定义字体,会自动尝试加载以下 Windows 系统字体:
    • 微软雅黑 (msyh.ttc)
    • 宋体 (simsun.ttc)
    • 黑体 (simhei.ttf)
    • 楷体 (simkai.ttf)
    • 微软雅黑 Light (msyhl.ttc)
    • Segoe UI (segoeui.ttf)

数据库结构

应用程序需要以下表结构:

Players 表

  • ID: 球员 ID
  • PlayerName: 球员名称
  • CurrentTeam: 当前球队 ID
  • Nationality: 国籍
  • Position: 位置
  • LongPass: 长传
  • ShortPass: 短传
  • Dribble: 盘带
  • Anticipation: 预判
  • Shooting: 射门
  • Tackling: 铲球
  • Stamina: 体力
  • Strength: 力量
  • Pace: 速度
  • Agility: 敏捷
  • KeeperSaving: 扑救
  • KeeperAnticipation: 守门预判

Teams 表

  • ID: 球队 ID
  • TeamName: 球队名称

Misc 表

  • ID: ID
  • PCID: 当前球队 ID

使用方法

  1. 启动应用程序
  2. 点击"载入数据库"按钮,选择 SQLite 数据库文件
  3. 在左侧列表中选择球员,右侧将显示详细信息
  4. 使用搜索框可以按名称或国籍搜索球员
  5. 点击"球队"按钮可以筛选当前球队的球员
  6. 点击"对比"按钮可以选择另一名球员进行属性对比

创建示例数据库

项目包含一个示例数据库生成工具,可以通过以下命令创建:

cargo run --bin create_sample_db

这将在项目根目录下创建一个 sample.db 文件,包含示例数据。

编译和运行

cargo build --release
cargo run --release

系统要求

  • Windows 10/11 或其他支持的操作系统
  • 如果需要使用自定义字体,请确保 assets/font/Pingfang.ttf 文件存在

性能优化

发行版本已经进行了以下优化:

  • 使用 LTO (Link Time Optimization) 提高性能
  • 二进制文件大小优化
  • 无控制台窗口模式运行
  • 高 DPI 显示支持

开发说明

项目使用 Rust 2021 edition 开发,主要依赖以下库:

  • eframe/egui: GUI 框架
  • rusqlite: SQLite 数据库支持
  • chrono: 时间处理
  • serde: 序列化/反序列化
  • image: 图像处理

开发环境设置:

git clone https://github.com/blankzsh/Genine.git
cd Genine
cargo build

About

CFS球探工具

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages