2026-07-23 05:27:51 +00:00
|
|
|
|
# 更新日志
|
|
|
|
|
|
|
2026-07-23 14:17:07 +00:00
|
|
|
|
## [0.9.0] — 2026-07-23
|
|
|
|
|
|
|
|
|
|
|
|
### Sprint 9 — 3D Delaunay/B-Rep/Boolean 测试补全
|
|
|
|
|
|
- **测试新增**:test_delaunay_3d(6 个用例)、test_boolean_mesh(22 个用例)、test_brep(17 个用例)
|
|
|
|
|
|
- **3D Delaunay 测试**:空输入、正四面体、Delaunay 空外接球性质验证、退化点(共面/共线)
|
|
|
|
|
|
- **3D 网格布尔测试**:相交/不相交/包含场景的 union/intersection/difference/sym_diff、空网格边界、点分类、invert/merge 辅助函数
|
|
|
|
|
|
- **B-Rep 测试**:make_box/make_sphere/make_cylinder 实体创建、拓扑查询(face_edges/edge_faces/vertex_edges)、to_mesh 离散化、有效性验证、空模型边缘情况
|
|
|
|
|
|
- **构建更新**:tests/CMakeLists.txt 添加 brep 子目录,mesh/boolean CMakeLists 添加新测试
|
|
|
|
|
|
- **文档更新**:开发计划 S9 状态更新为进行中
|
|
|
|
|
|
|
2026-07-23 13:52:10 +00:00
|
|
|
|
## [0.8.0] — 2026-07-23
|
|
|
|
|
|
|
|
|
|
|
|
### Sprint 8 收尾 — spatial + mesh
|
|
|
|
|
|
- **KD-Tree 完善**:priority-queue kNN、ray query、remove 支持
|
|
|
|
|
|
- **Octree 完善**:ray query 补充
|
|
|
|
|
|
- **mesh_simplify**:QEM 简化实现验证
|
|
|
|
|
|
|
2026-07-23 12:36:39 +00:00
|
|
|
|
## [0.7.0] — 2026-07-23
|
|
|
|
|
|
|
2026-07-23 13:52:10 +00:00
|
|
|
|
### 模块补全
|
|
|
|
|
|
- **3D 网格布尔运算**:mesh_union/intersection/difference/sym_diff + BVH 射线投射
|
|
|
|
|
|
- **网格平滑扩展**:HC Laplacian(体积保持)、双边滤波(特征保留)
|
|
|
|
|
|
- **网格质量评估**:三角形/四面体质量、质量报告(A-F 分级)
|
|
|
|
|
|
- **R-Tree 完整实现**:STR bulk-loading、分层查询、kNN priority-queue
|
|
|
|
|
|
- **碰撞检测扩展**:ray-aabb/sphere/mesh/plane、tri-tri 交线
|
|
|
|
|
|
- **曲线曲面补全**:Bezier/BSpline 解析导数、自适应细分
|
|
|
|
|
|
- **core 补全**:distance(6 种扩展)、polygon(三角剖分、凸包、简化)
|
|
|
|
|
|
- **foundation 补全**:OBJ 纹理坐标、STL ASCII/Binary 双格式
|
|
|
|
|
|
|
2026-07-23 12:36:39 +00:00
|
|
|
|
### 测试覆盖扩展
|
2026-07-23 13:52:10 +00:00
|
|
|
|
- 新增 7 个测试文件:polygon、distance、r_tree、ray、quality、smooth
|
|
|
|
|
|
- 测试从 11 文件/25 用例 → 17 文件/92 用例(100% 通过)
|
|
|
|
|
|
|
|
|
|
|
|
### 修复
|
|
|
|
|
|
- exact_predicates 匿名 namespace 泄漏
|
|
|
|
|
|
- RTree insert/remove 自赋值 bug
|
|
|
|
|
|
- mesh_quality 纵横比公式归一化
|
|
|
|
|
|
|
|
|
|
|
|
### 文档
|
|
|
|
|
|
- 开发计划 S8 状态更新
|
2026-07-23 12:36:39 +00:00
|
|
|
|
|
2026-07-23 05:27:51 +00:00
|
|
|
|
## [0.1.0] — 2026-07-23
|
|
|
|
|
|
|
|
|
|
|
|
### 新增
|
|
|
|
|
|
- 基础设施层(foundation):数学类型、公差系统、精确谓词、OBJ/STL 读写
|
|
|
|
|
|
- 几何核心层(core):点、线、面、三角形、AABB、几何变换、距离计算、凸包
|
|
|
|
|
|
- 曲线曲面层(curves):Bezier/B-Spline/NURBS 曲线与曲面、离散化
|
|
|
|
|
|
- 网格处理层(mesh):半边数据结构、Delaunay 2D 三角剖分
|
|
|
|
|
|
- 空间索引层(spatial):BVH(SAH 构建)
|
|
|
|
|
|
- 碰撞检测层(collision):GJK 算法、Möller-Trumbore 射线-三角形相交
|
|
|
|
|
|
- 布尔运算层(boolean):2D 多边形 Sutherland-Hodgman 裁剪
|
|
|
|
|
|
- 构建系统:CMake + FetchContent(Eigen, GTest 自动下载)
|
|
|
|
|
|
- 测试框架:Google Test,11 个测试文件
|
|
|
|
|
|
- 示例程序:6 个可运行示例
|
|
|
|
|
|
|
2026-07-23 13:52:10 +00:00
|
|
|
|
### v0.8.0 时已全部完成 ✅
|
|
|
|
|
|
|
|
|
|
|
|
(以下为初始规划时的待完成清单,现已全部实现)
|
|
|
|
|
|
- 网格简化(QEM) ✅
|
|
|
|
|
|
- 网格平滑(Laplacian/Taubin/HC/Bilateral) ✅
|
|
|
|
|
|
- 3D 网格布尔运算 ✅
|
|
|
|
|
|
- Octree、KD-Tree、R-Tree 完整实现 ✅
|
|
|
|
|
|
- 3D Delaunay 剖分 ✅
|
|
|
|
|
|
- B-Rep 支持 ✅
|
|
|
|
|
|
- Python 绑定 ✅
|