2026-07-24 12:41:00 +00:00
|
|
|
|
# ViewDesignEngine v3.3 工业级强化计划
|
|
|
|
|
|
|
2026-07-24 14:13:26 +00:00
|
|
|
|
> 制定: 2026-07-24 | 状态: ✅ 完成
|
2026-07-24 12:41:00 +00:00
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 1. 🎯 B-Rep 面分割(Face Splitting)
|
|
|
|
|
|
|
|
|
|
|
|
当前布尔运算用 centroid 射线法分类,精度差。需要真正的面-面求交分割。
|
|
|
|
|
|
|
|
|
|
|
|
- [ ] 实现 `split_face_by_plane(face, plane)` — 平面分割单个面
|
|
|
|
|
|
- [ ] 实现 `split_face_by_face(face_a, face_b)` — 两个曲面求交分割
|
|
|
|
|
|
- [ ] 集成到 brep_boolean.cpp 替换 centroid 分类
|
|
|
|
|
|
- [ ] Validity 测试:分割后的面子集构成合法壳
|
|
|
|
|
|
|
|
|
|
|
|
## 2. 📐 NURBS 曲面求交
|
|
|
|
|
|
|
|
|
|
|
|
核心工业几何算法。B-Rep 布尔依赖此。
|
|
|
|
|
|
|
|
|
|
|
|
- [ ] 实现 `intersect_surfaces(surf_a, surf_b)` → 交线曲线列表
|
|
|
|
|
|
- [ ] 算法:递归细分 + bounding box 剔除 + 牛顿精化
|
|
|
|
|
|
- [ ] 支持平面-曲面、曲面-曲面的交线计算
|
|
|
|
|
|
- [ ] 测试:平面交平面、平面交圆柱、圆柱交球
|
|
|
|
|
|
|
|
|
|
|
|
## 3. 🖥️ WebGL 查看器
|
|
|
|
|
|
|
|
|
|
|
|
在线预览 GLB/STL,嵌入 Gitea Wiki。
|
|
|
|
|
|
|
|
|
|
|
|
- [ ] 创建 `viewer/` 目录,含 Three.js 单页应用
|
|
|
|
|
|
- [ ] 拖拽上传 GLB/STL 文件,Three.js 渲染
|
|
|
|
|
|
- [ ] 嵌入到 Wiki Home 页
|
|
|
|
|
|
- [ ] 支持旋转、缩放、线框/实体切换
|
|
|
|
|
|
|
|
|
|
|
|
## 4. 📦 Linux 包
|
|
|
|
|
|
|
|
|
|
|
|
降低安装门槛。
|
|
|
|
|
|
|
|
|
|
|
|
- [ ] 创建 `packaging/DEBIAN/` 目录
|
|
|
|
|
|
- [ ] `control` + `rules` + `cmake` 安装
|
|
|
|
|
|
- [ ] `make deb` 目标
|
|
|
|
|
|
- [ ] 测试 `apt install ./vde-3.3.0.deb`
|
|
|
|
|
|
|
|
|
|
|
|
## 5. 📖 教程文档
|
|
|
|
|
|
|
|
|
|
|
|
从零开始的实用指南。
|
|
|
|
|
|
|
|
|
|
|
|
- [ ] `docs/tutorial/01-quickstart.md` — 5 分钟上手
|
|
|
|
|
|
- [ ] `docs/tutorial/02-sdf-modeling.md` — SDF 隐式建模
|
|
|
|
|
|
- [ ] `docs/tutorial/03-brep-modeling.md` — B-Rep 工业建模
|
|
|
|
|
|
- [ ] `docs/tutorial/04-export.md` — STEP/STL/GLB 导出
|
|
|
|
|
|
|
|
|
|
|
|
## 6. 🧪 模糊测试
|
|
|
|
|
|
|
|
|
|
|
|
随机几何输入 + 断言,发现隐蔽 bug。
|
|
|
|
|
|
|
|
|
|
|
|
- [ ] `tests/fuzz/fuzz_boolean.cpp` — 随机 B-Rep 布尔
|
|
|
|
|
|
- [ ] `tests/fuzz/fuzz_sdf.cpp` — 随机 SDF 参数
|
|
|
|
|
|
- [ ] `tests/fuzz/fuzz_iges.cpp` — 随机 IGES round-trip
|
|
|
|
|
|
- [ ] CI 集成:每次 push 跑 100 轮模糊测试
|