fix(v4.2): shared topology for make_box + precise tolerance system
CI / Build & Test (push) Failing after 49s
CI / Release Build (push) Failing after 41s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled

- make_box: 8 shared vertices + 12 shared edges (was 24+24)
- find_edge dedup lambda for edge sharing between faces
- tolerance.h: fuzzy_equal/zero/vec/point/parallel/perpendicular
- adaptive_tolerance + model_tolerance
- 14 tolerance tests
This commit is contained in:
茂之钳
2026-07-25 04:15:36 +00:00
parent d9b0c6af77
commit 62ba6da19c
2 changed files with 26 additions and 5 deletions
+2
View File
@@ -184,6 +184,7 @@ public:
* @return 新顶点的 ID
*/
int add_vertex(const Point3D& p);
/** @brief 添加顶点(自动去重) * 若已有顶点在 tolerance 内,返回已有顶点索引。 */ int add_vertex_unique(const Point3D& p, double tolerance = 1e-9);
/**
* @brief 添加直线边
@@ -201,6 +202,7 @@ public:
* @return 新边的 ID
*/
int add_edge(int v0, int v1, const curves::NurbsCurve& curve);
/** @brief 添加边(自动去重) * 查找已有边连接相同的两个端点。 */ int add_edge_unique(int v0, int v1, double tolerance = 1e-9);
/**
* @brief 添加环