2026-07-27 22:13:00 +08:00
|
|
|
|
---
|
|
|
|
|
|
id: VDE-006
|
2026-07-27 22:56:29 +08:00
|
|
|
|
status: fixed
|
2026-07-27 22:13:00 +08:00
|
|
|
|
severity: high
|
|
|
|
|
|
category: design
|
|
|
|
|
|
date: 2026-07-27
|
|
|
|
|
|
reporter: ViewDesign
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
# VDE-006: vde_mesh ↔ vde_brep 循环依赖
|
|
|
|
|
|
|
|
|
|
|
|
## 问题描述
|
|
|
|
|
|
|
|
|
|
|
|
vde_mesh → 依赖 vde_core, vde_brep;vde_brep → 依赖 vde_curves, vde_mesh, vde_collision。形成 vde_mesh → vde_brep → vde_curves → (vde_core) → vde_mesh 的循环依赖。由于是 STATIC library 不会直接报链接错误,但模块拆分不够清晰。
|
|
|
|
|
|
|
|
|
|
|
|
## 影响文件
|
|
|
|
|
|
|
|
|
|
|
|
- src/CMakeLists.txt (line 111, 231)
|
|
|
|
|
|
|
|
|
|
|
|
## ViewDesign 侧 Workaround
|
|
|
|
|
|
|
|
|
|
|
|
vd_geom 仅链接 vde_foundation 和 vde_core,避开整个 brep/mesh/curves 依赖树。
|
|
|
|
|
|
|
|
|
|
|
|
## 建议修复方向
|
|
|
|
|
|
|
|
|
|
|
|
1. 将 vde_mesh 和 vde_brep 的共享依赖提取到独立模块
|
|
|
|
|
|
2. 重新设计依赖关系:vde_mesh 不应依赖 vde_brep
|
|
|
|
|
|
3. 考虑引入 abstract interface / type erasure 打破循环
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
*此文件由 ViewDesign 工程自动生成。处理完成后请更新 status 字段。*
|