Skip to content

v1.0.0

Latest

Choose a tag to compare

@github-actions github-actions released this 12 Apr 01:10
· 6 commits to main since this release

Highlights

3dModMatchV3 是一套 3D 鞋模(shoe mold)与粗胚(blank)的最优匹配系统。核心匹配算法以 C++ 实现,通过遗传算法(GA)在三维搜索空间中寻找体积最小、包裹率最高的匹配方案。上层提供 Electron 桌面应用,集成 Flask 后端与 Three.js 3D 预览。

本次为项目首个正式发布版本。


Features

匹配算法引擎(C++)

  • 遗传算法优化:同时搜索纵向位移(±50mm)、绕纵向轴旋转(±180°)、横向位移(±30mm)三个自由度
  • 空间加速结构:BVH(Bounding Volume Hierarchy)加速射线-三角形求交,KD-tree 加速最近面查询
  • 评估指标:体积包裹率(wrapping ratio)+ 96% 分位数表面间隙(clearance)
  • OpenMP 多线程:种群适应度并行评估,线程数自动适配 CPU 核心数
  • 早停机制:连续 4 代无包裹率提升即终止,或达到目标包裹率(默认 96%)时提前退出
  • 迭代回放:记录每代最佳适应度、参数、耗时,供前端可视化回放

桌面应用(Electron + Flask)

  • 粗胚管理:分类树结构、批量上传、分类重命名、拖拽分类
  • 鞋模匹配:上传鞋模 → 选择粗胚分类 → 配置 GA 参数 → 执行匹配,支持并发任务控制与进度轮询
  • 3D 预览:Three.js 渲染 target + candidate 双模型,使用二进制 .binprev 格式传输几何数据,支持轴向显示与 orbit 交互
  • 匹配历史:按鞋模分组展示、详情钻取、采纳功能、CSV / Excel 导出
  • 数据看板:系统状态总览
  • 深色模式:支持明暗主题切换
  • 参数持久化:GA 参数通过 localStorage 跨会话保持

文件格式支持

  • .3dm(Rhino 3DM):通过 rhino3dm 库解析,支持 Mesh / Brep 自动网格化
  • .stl(新增):通过 trimesh 库解析,自动合并重复顶点、修复法线方向;统一 mesh loader(load_mesh.py)按后缀派发

CI/CD

  • GitHub Actions 自动构建 macOS(ARM)+ Windows 安装包
  • Tag push(v*)触发 draft Release,附带构建产物

Supported Platforms

平台 架构 产物
macOS Apple Silicon (ARM) .dmg
Windows x64 .exe(NSIS installer)
Docker linux/amd64 docker-compose 运行

Windows 版本已修复 GBK 编码、Win XP 兼容性、Win 11 兼容性等多项平台问题。


Installation

  1. 在本页面 Assets 区域下载对应平台安装包:
    • macOS:下载 .dmg 文件,双击挂载后拖入 Applications
    • Windows:下载 .exe 文件,运行 NSIS 安装向导
  2. 首次启动时应用会自动启动内嵌的 Flask 后端服务
  3. 如需 Docker 环境运行匹配命令行工具,请参考仓库 docs/ 目录下的使用指南