docs: add overall VDE integration assessment from ViewDesign

This commit is contained in:
2026-07-27 22:31:16 +08:00
parent 5eb11fa501
commit a5594c293b
+60
View File
@@ -0,0 +1,60 @@
---
id: OVERVIEW
status: open
severity: medium
category: analysis
date: 2026-07-27
reporter: ViewDesign
---
# ViewDesignEngine 集成综合评估
> 基于 VDE v1.0.1 在 ViewDesign 工程中的集成经验,从多个维度评估 VDE 的优势与不足。
## VDE vs OCCT 对比
| 维度 | OCCT | VDE | 结论 |
|------|------|-----|------|
| 代码体积 | ~1GB+,构建 30min+ | 轻量,构建秒级 | VDE 胜 |
| 数学库 | 自研 gp_*API 陈旧 | Eigen3,现代 C++ | VDE 胜 |
| API 风格 | 重型,Handle<> 到处飞 | 简洁值语义 | VDE 胜 |
| B-rep | 完整、成熟 | brep 模块 GCC 编译不过 | OCCT 胜 |
| STL I/O | 无便捷函数 | read_stl() / write_stl() | VDE 胜 |
| 跨平台 | 全通过 | 主要 MSVC | OCCT 胜 |
| 文档 | 丰富 | 几乎为零 | OCCT 胜 |
| 许可证 | LGPL-like,商用需谨慎 | AGPL v3 | VDE 胜 |
| 集成门槛 | 需要 SDK 安装 | submodule + Eigen3 | VDE 胜 |
## VDE 优点
- 轻量、模块化设计方向正确
- Eigen3 选型正确(现代 C++ 数学库标准)
- API 直觉好:Transform3D.translate()、write_stl() 一行搞定
- 许可干净(AGPL v3,与 ViewDesign 一致)
## VDE 不足
- B-rep 是核心短板(几何引擎最有价值的部分不可用)
- 移植意识弱(为 MSVC 开发,无跨平台 CI)
- 文档基建缺失(无 doxygen,无示例,无 CI)
- 模块有循环依赖(vde_mesh ↔ vde_brep
- CMake 集成不友好(无模块开关,无 find_package
## 阻塞优先级
| 优先级 | 问题 | 影响 |
|:--:|------|------|
| P0 | 两阶段名称查找 (VDE-001/005/010) | brep/mesh/boolean 全部不可用 |
| P0 | include 路径不兼容子模块 (VDE-002) | 无法开箱即用 |
| P0 | 无模块级构建开关 (VDE-013) | 被迫 EXCLUDE_FROM_ALL hack |
## ViewDesign 的战略路径
```
当前: 网格路径→VDE / B-rep→OCCT 兜底
P0后: B-rep→VDE / OCCT 降级为可选
远期: 全面 VDE / OCCT 移除
```
---
*此文件由 ViewDesign 工程生成,提供 VDE 集成体验的宏观评估。*