fix(v1.0.1): VDE-014/015/016 — STL API cleanup + ssi_boolean fixes
Build & Test / build-and-test (push) Waiting to run
Build & Test / python-bindings (push) Blocked by required conditions
CI / Build & Test (push) Failing after 41s
CI / Release Build (push) Failing after 35s

VDE-014 (High): Remove duplicate void write_stl/write_stl_ascii declarations
VDE-015 (Medium): Fix Vector3F→Vector3f, Point3F→Point3f case sensitivity
VDE-016 (High): Add forward declarations for face_bounds/face_normal/SSICurveData
  in ssi_boolean.cpp — fixes two-phase name lookup in GCC
This commit is contained in:
茂之钳
2026-07-27 23:20:46 +08:00
parent 41d33bbbc2
commit 7a955bac7f
5 changed files with 10 additions and 7 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
---
id: VDE-014
status: open
status: fixed
severity: high
category: bug
date: 2026-07-27
+1 -1
View File
@@ -1,6 +1,6 @@
---
id: VDE-015
status: open
status: fixed
severity: medium
category: bug
date: 2026-07-27
+1 -1
View File
@@ -1,6 +1,6 @@
---
id: VDE-016
status: open
status: fixed
severity: high
category: bug
date: 2026-07-27
+2 -4
View File
@@ -91,7 +91,6 @@ std::vector<StlTriangle> read_stl(const std::string& filepath);
* @see read_stl, write_stl_ascii
* @ingroup foundation
*/
void write_stl(const std::string& filepath, const std::vector<StlTriangle>& tris);
bool write_stl(const std::string& filepath, const std::vector<StlTriangle>& tris);
/**
@@ -115,7 +114,6 @@ bool write_stl(const std::string& filepath, const std::vector<StlTriangle>& tris
* @see read_stl, write_stl
* @ingroup foundation
*/
void write_stl_ascii(const std::string& filepath, const std::vector<StlTriangle>& tris);
bool write_stl_ascii(const std::string& filepath, const std::vector<StlTriangle>& tris);
/**
@@ -124,8 +122,8 @@ bool write_stl_ascii(const std::string& filepath, const std::vector<StlTriangle>
* 用于与 float 网格数据直接交互,避免 double↔float 显式转换。
*/
struct StlTrianglef {
Vector3F normal;
Point3F v0, v1, v2;
Vector3f normal;
Point3f v0, v1, v2;
};
/// 转换 double → float 精度
+5
View File
@@ -36,6 +36,11 @@ using core::Point3D;
using core::Vector3D;
using core::AABB3D;
// Forward declarations (defined after anonymous namespace)
AABB3D face_bounds(const BrepModel& body, int face_id);
Vector3D face_normal(const BrepModel& body, int face_id);
struct SSICurveData;
namespace {
// ═══════════════════════════════════════════════════════════