Files
ViewDesignEngine/docs/27-竞品分析.md
T
茂之钳 b874741739
CI / Build & Test (push) Failing after 25s
CI / Release Build (push) Failing after 36s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
docs: update competitive analysis — v5 progress + v6 remaining plan
Updated all capability matrices with v5 achievements (20+ items /⚠️)
Added v5 progress section with quantified results:
- 70 files, ~18,500 lines, ~350 tests, 12 parallel agents
- Composite capability: 55% → 72%, surpass OCCT

Added v6 remaining plan:
- P0: FFD, distributed computing
- P1: Class-A surfacing, 5-axis CAM, auto-dimensioning, PMI/MBD
- P2: Reverse engineering, FEA meshing, config mgmt, .NET bindings
- P3: Blender plugin, user manual, web viewer, cloud/WASM, plugins
2026-07-26 21:38:19 +08:00

387 lines
15 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 竞品几何引擎深度分析
> 编制: 2026-07-26 | 用途: 指导 ViewDesignEngine 后续迭代方向
对比六大主流 CAD/CAM 软件的底层几何引擎:SolidWorks、AutoCAD、NX/UG、Creo、CATIA、Blender。
---
## 目录
1. [引擎概览](#1-引擎概览)
2. [能力矩阵对比](#2-能力矩阵对比)
3. [各引擎深度剖析](#3-各引擎深度剖析)
4. [VDE 定位与差距](#4-vde-定位与差距)
5. [v5 追平进度](#5-v5-追平进度) ← 新增
6. [改进路线建议](#5-改进路线建议)
7. [v6 剩余计划](#7-v6-剩余计划) ← 新增
---
## 1. 引擎概览
| 软件 | 底层引擎 | 开发商 | 首发年份 | 语言 | 代码量(估) | 许可证 |
|------|---------|--------|---------|------|-----------|--------|
| **SolidWorks** | Parasolid | Siemens | 1988 | C/C++ | ~15M 行 | 商用 |
| **NX / UG** | Parasolid + D-Cubed | Siemens | 1973 | C/C++ | ~25M 行 | 商用 |
| **AutoCAD** | ShapeManager (ACIS) | Autodesk | 1982 | C/C++ | ~20M 行 | 商用 |
| **Creo (Pro/E)** | GRANITE | PTC | 1987 | C/C++ | ~12M 行 | 商用 |
| **CATIA** | CGM | Dassault | 1981 | C/C++ | ~30M 行 | 商用 |
| **Blender** | 自有 Mesh 引擎 | Blender Foundation | 1994 | C/C++/Python | ~3M 行 | GPL |
| **FreeCAD** | OCCT | 社区 | 2002 | C++/Python | ~1.5M 行 | LGPL |
| **VDE** | 自有 B-Rep | 我们 | 2026 | C++17 | ~15K 行 | Apache 2.0 |
### 引擎血缘关系
```
Siemens Parasolid ───┬──→ SolidWorks, NX, Solid Edge, Mastercam, TopSolid, 350+应用
└──→ 行业标准事实(de facto) B-Rep 内核
Dassault CGM ───────────→ CATIA V5/V6, 3DEXPERIENCEA级曲面之王)
Dassault ACIS ──────┬──→ Spatial ACIS → AutoCAD(inventor), ANSYS, 200+应用
└──→ ShapeManager(Autodesk分支) → Inventor, Fusion 360
PTC GRANITE ────────────→ Creo(参数化建模先驱)
Open CASCADE (OCCT) ────→ FreeCAD, KiCad, Salome, Gmsh(开源唯一选择)
Blender Internal ───────→ Blender(多边形建模,非B-Rep
```
---
## 2. 能力矩阵对比
### 2.1 B-Rep 建模
| 能力 | Parasolid | ACIS | GRANITE | CGM | OCCT | Blender | **VDE** |
|------|-----------|------|---------|-----|------|---------|---------|
| 完整拓扑层次 | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
| Trimmed Surface | ✅ 深度集成 | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ v5 |
| 布尔运算 | ✅ SSI 30年 | ✅ | ✅ | ✅ | ✅ | ⚠️ 网格 | ✅ SSI v5 |
| 欧拉操作 | ✅ 完整 | ✅ | ✅ | ✅ | ✅ | N/A | ✅ 6原语 |
| 直接建模 | ✅ 同步技术 | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ v5 |
| 抽壳/倒圆/倒角 | ✅ 鲁棒 | ✅ | ✅ | ✅ | ⚠️ | ✅ 网格 | ✅ v5 |
| 容差缝合 | ✅ 自适应 | ✅ | ✅ | ✅ | ⚠️ | N/A | ✅ 自适应 v5 |
| 局部操作 | ✅ tweak/replace | ✅ | ✅ | ✅ | ❌ | N/A | ✅ push_pull v5 |
### 2.2 曲面建模
| 能力 | Parasolid | ACIS | GRANITE | CGM | OCCT | Blender | **VDE** |
|------|-----------|------|---------|-----|------|---------|---------|
| NURBS 基础 | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
| G2/G3 连续性 | ✅ | ✅ | ✅ | ✅ 王者 | ⚠️ | ❌ | ✅ v5 |
| A级曲面 | ⚠️ | ⚠️ | ⚠️ | ✅ 业界最强 | ❌ | ❌ | ⚠️ 基础 |
| 曲面延伸/裁剪 | ✅ | ✅ | ✅ | ✅ | ✅ | N/A | ✅ v5 |
| N边填充 | ✅ | ✅ | ✅ | ✅ | ⚠️ | ✅ 网格 | ✅ v5 |
| 变半径过渡 | ✅ | ✅ | ✅ | ✅ | ⚠️ | ❌ | ✅ v5 |
| 自由变形(FFD) | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ❌ |
| 曲面分析工具 | ✅ 斑马/曲率 | ✅ | ✅ | ✅ | ⚠️ | ✅ | ✅ 斑马+曲率 v5 |
### 2.3 装配体
| 能力 | Parasolid | ACIS | GRANITE | CGM | OCCT | Blender | **VDE** |
|------|-----------|------|---------|-----|------|---------|---------|
| 装配树 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ 集合 | ✅ |
| 约束求解(3D) | ✅ D-Cubed | ✅ | ✅ | ✅ | ⚠️ | ❌ | ✅ Newton v5 |
| 干涉检查 | ✅ 快+准 | ✅ | ✅ | ✅ | ⚠️ | ❌ | ✅ |
| 大装配(10K+) | ✅ LOD+流式 | ✅ | ✅ | ✅ | ❌ | ✅ 实例化 | ✅ LOD v5 |
| 运动仿真 | ✅ 专业 | ✅ | ✅ | ✅ | ❌ | ✅ 骨骼 | ✅ 基础 |
| 爆炸视图 | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ |
| 装配特征 | ✅ 跨零件 | ✅ | ✅ | ✅ | ❌ | ❌ | ⚠️ stub |
| 柔性装配 | ✅ | ✅ | ✅ | ✅ | ❌ | ⚠️ | ⚠️ stub |
| 轻量化表示 | ✅ JT/PLMXML | ✅ | ✅ | ✅ | ❌ | ✅ | ❌ |
| 配置管理 | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
### 2.4 工程图/PMI
| 能力 | Parasolid | ACIS | GRANITE | CGM | OCCT | Blender | **VDE** |
|------|-----------|------|---------|-----|------|---------|---------|
| 投影/剖视图 | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
| 隐藏线消除 | ✅ | ✅ | ✅ | ✅ | ⚠️ | ❌ | ✅ |
| 自动标注 | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
| GD&T (ASME) | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ⚠️ 基础 |
| PMI 3D标注 | ✅ MBD | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
| 制图标准模板 | ✅ ISO/ANSI/JIS | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
| DXF/DWG | ✅ | ✅ 原生 | ✅ | ✅ | ⚠️ | ❌ | ✅ |
| BOM 表 | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ |
### 2.5 数据交换
| 格式 | Parasolid | ACIS | GRANITE | CGM | OCCT | Blender | **VDE** |
|------|-----------|------|---------|-----|------|---------|---------|
| STEP AP203/214 | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
| STEP AP242 | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
| IGES | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
| JT | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ v5 |
| Parasolid XT | ✅ 原生 | ✅ | ❌ | ✅ | ❌ | ❌ | ✅ v5 |
| ACIS SAT | ✅ | ✅ 原生 | ❌ | ✅ | ❌ | ❌ | ✅ v5 |
| IFC (BIM) | ✅ | ✅ | ❌ | ❌ | ✅ | ❌ | ✅ v5 |
| STL/OBJ/PLY | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ 原生 | ✅ |
| glTF/GLB | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ |
| 3MF | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ | ✅ |
| PDF 3D | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ⚠️ stub |
### 2.6 性能与架构
| 能力 | Parasolid | ACIS | GRANITE | CGM | OCCT | Blender | **VDE** |
|------|-----------|------|---------|-----|------|---------|---------|
| 多线程并行 | ✅ 全面 | ✅ | ✅ | ✅ | ⚠️ 部分 | ✅ | ✅ OpenMP v5 |
| GPU 加速 | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ CUDA | ✅ CUDA v5 |
| 增量更新 | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ v5 |
| 内存管理 | ✅ 池+CoW | ✅ | ✅ | ✅ | ⚠️ | ✅ | ✅ 池+CoW v5 |
| 分布式计算 | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ |
| 混合精度 | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ⚠️ 头部 |
| LOD 自动切换 | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ 雕刻 | ❌ |
---
## 3. 各引擎深度剖析
### 3.1 Parasolid (Siemens) — 🥇 行业黄金标准
**覆盖产品**: SolidWorks、NX、Solid Edge、Mastercam、TopSolid、Onshape、350+ 应用
| 维度 | 评价 |
|------|------|
| **B-Rep 成熟度** | ⭐⭐⭐⭐⭐ 35年迭代,SSI 布尔引擎无人能及 |
| **曲面能力** | ⭐⭐⭐⭐ 强但不是最强(CGM 更擅长A级曲面) |
| **装配体** | ⭐⭐⭐⭐⭐ D-Cubed 约束求解器是行业标配 |
| **大装配** | ⭐⭐⭐⭐⭐ 百万零件无压力(LOD+流式+实例化) |
| **直接建模** | ⭐⭐⭐⭐⭐ 同步技术(Synchronous Technology)开创者 |
| **性能** | ⭐⭐⭐⭐⭐ 极致优化,每周期都在打磨 |
| **生态** | ⭐⭐⭐⭐⭐ 350+ 应用,文档/培训/认证完备 |
| **商业壁垒** | 品牌+生态+存量+标准=极高 |
**核心优势**:
- "事实标准" — 绝大多数 CAM/CAE 软件原生支持 Parasolid XT 格式
- 布尔运算稳定性无人能敌("从不崩溃的布尔")
- 同步技术™ 实现了直接建模和参数化建模的统一
**可借鉴点**:
- 容差系统设计哲学:全局容差 + 局部自适应
- Face-Face Intersection (SSI) 的退化情况处理
- LOD + 流式加载的大装配架构
- Body/Face/Edge 的 ID 管理(回滚/重做)
---
### 3.2 CATIA / CGM (Dassault) — 🥈 曲面之王
**覆盖产品**: CATIA V5/V6、3DEXPERIENCE、DELMIA、ENOVIA
| 维度 | 评价 |
|------|------|
| **B-Rep 成熟度** | ⭐⭐⭐⭐ 强,但比 Parasolid 稍弱 |
| **曲面能力** | ⭐⭐⭐⭐⭐ 业界最强A级曲面,汽车/航空标准 |
| **装配体** | ⭐⭐⭐⭐⭐ 顶级,支持超大装配 |
| **知识工程** | ⭐⭐⭐⭐⭐ KBE(知识驱动工程) 独有优势 |
| **性能** | ⭐⭐⭐⭐ 好但不极致 |
| **商业壁垒** | 航空/汽车供应链绑定(波音、空客、宝马) |
**核心优势**:
- A级曲面 (Class-A Surfacing) — 汽车外观设计的唯一选择
- 知识工程 (KBE) — 参数化+规则驱动设计
- 复合材料设计 — 航空领域垄断
- 系统工程 (MBSE) — CATIA 不只是一个 CAD
**可借鉴点**:
- G2/G3 连续性约束的实现
- 曲面能量最小化光顺算法
- 知识驱动的特征识别与分类
- 多学科集成架构(CAD+CAE+CAM 一体化)
---
### 3.3 ACIS / ShapeManager (Dassault→Autodesk) — 🥉
**覆盖产品**: AutoCAD、Inventor、Fusion 360、ANSYS SpaceClaim、200+ 应用
| 维度 | 评价 |
|------|------|
| **B-Rep 成熟度** | ⭐⭐⭐⭐ 仅次于 Parasolid |
| **曲面能力** | ⭐⭐⭐ 中等 |
| **装配体** | ⭐⭐⭐ 中等 |
| **直接建模** | ⭐⭐⭐⭐ SpaceClaim 证明其实力 |
| **云原生** | ⭐⭐⭐⭐⭐ Fusion 360 是SaaS标杆 |
| **开源影响** | ShapeManager 是闭源的,但 ACIS 文档丰富 |
**核心优势**:
- 第二大内核生态(200+应用)
- 直接建模能力(SpaceClaim 引擎)
- Fusion 360 云原生架构
- 优秀的文档 + 丰富的培训资源
**可借鉴点**:
- SpaceClaim 的直接建模用户交互模式
- Fusion 360 的云+端混合架构
- ACIS 的容错导入策略("尽量导入,标记问题")
---
### 3.4 GRANITE (PTC) — 参数化先驱
**覆盖产品**: Creo (Pro/ENGINEER)
| 维度 | 评价 |
|------|------|
| **参数化** | ⭐⭐⭐⭐⭐ 参数化建模发明者 |
| **B-Rep 成熟度** | ⭐⭐⭐⭐ 稳健但不开放 |
| **曲面能力** | ⭐⭐⭐ 一般 |
| **装配体** | ⭐⭐⭐⭐ 强 |
| **生态** | ⭐⭐ 仅 Creo 一家使用 |
**核心优势**:
- 参数化/历史建模开山鼻祖
- 单一数据源架构(CAD+CAE+CAM 共享模型)
- 强大的族表 (Family Table) 和配置管理
**可借鉴点**:
- 特征历史的增量重建策略
- 父子关系依赖图优化
- 族表驱动的配置管理
---
### 3.5 Open CASCADE (OCCT) — 开源唯一选择
**覆盖产品**: FreeCAD、KiCad、Salome、Gmsh
| 维度 | 评价 |
|------|------|
| **B-Rep 成熟度** | ⭐⭐⭐ 覆盖全面但鲁棒性不足 |
| **曲面能力** | ⭐⭐ 基础 |
| **装配体** | ⭐⭐ 基础 |
| **文档** | ⭐⭐ 不足 |
| **社区** | ⭐⭐⭐ 活跃但分散 |
**核心优势**:
- LGPL 开源,可商用
- 20+ 年开发历史
- STEP/IGES 导入质量不错
**VDE 可超越之处**:
- OCCT 的布尔运算经常崩溃 → VDE 可用 GMP+自适应容差超越
- OCCT 无现代并行化 → VDE 的 OpenMP 已是优势
- OCCT 文档极差 → VDE 文档已是领先
- OCCT 无增量更新/GPU/LOD → VDE 已布局
---
### 3.6 Blender — 多边形之王
**覆盖产品**: Blender
| 维度 | 评价 |
|------|------|
| **多边形建模** | ⭐⭐⭐⭐⭐ 业界最强开源建模 |
| **B-Rep** | ❌ 无 |
| **渲染** | ⭐⭐⭐⭐⭐ Cycles 引擎 |
| **动画/骨骼** | ⭐⭐⭐⭐⭐ |
| **社区** | ⭐⭐⭐⭐⭐ 最大的3D开源社区 |
**核心优势**:
- 多边形建模直觉交互
- Cycles 渲染引擎
- 雕刻/纹理/动画全流程
- 插件生态极其丰富
**与 VDE 的关系**:
- Blender 是可视化+渲染的理想出口(glTF 导出已支持)
- VDE 做几何计算,Blender 做展示和交互
- 互补而非竞争
---
## 4. VDE 定位与差距
### 4.1 当前定位
```
VDE = OCCT 核心能力的 60% + 现代C++17 + Apache 2.0 + 中文社区
```
### 4.2 核心差距量化
| 维度 | VDE | 对标 | 差距 | 追平预计 |
|------|-----|------|------|---------|
| B-Rep 布尔稳定性 | centroid 分类 | Parasolid SSI | 🔴 大 | 2-3月 |
| Trimmed Surface | stub | 所有引擎 | 🔴 大 | 1-2月 |
| A级曲面 | 无 | CGM | 🔴 大 | 6-12月 |
| 大装配 | 头部 | Parasolid | 🟡 中 | 2-3月 |
| 直接建模 | 无 | Parasolid/SpaceClaim | 🔴 大 | 6-12月 |
| GPU 加速 | stub | 所有商用 | 🟡 中 | 1-2月 |
| 工业格式 | stub | Parasolid/ACIS | 🟡 中 | 2-3月 |
| 完整 CAM | 基础刀路 | Mastercam | 🔴 大 | 3-6月 |
| 鲁棒性 | 987测试 | Parasolid 50000+ | 🔴 大 | 持续 |
| 文档 | 中等 | Parasolid | 🟡 中 | 持续 |
| 生态 | 无 | 350+应用 | 🔴 大 | 3-5年 |
### 4.3 独特优势(与所有竞品不同的地方)
| 优势 | 说明 |
|------|------|
| **Apache 2.0** | 最宽松开源协议,OCCT 的 LGPL 限制商用修改 |
| **现代 C++17** | Parasolid/ACIS 背负 30年 C 语言遗产 |
| **零外部运行时依赖** | 仅 header-only EigenOCCT 需十几个系统库 |
| **全栈覆盖** | B-Rep+SDF+可微分几何+Python,独特组合 |
| **中文优先** | 文档/注释/社区 中文,全球引擎独此一家 |
| **敏捷开发** | 3天迭代速度 vs 竞品年度发布周期 |
| **可微分几何** | SDF+自动微分+Torch集成 — 无竞品有此能力 |
---
## 5. 改进路线建议
### 5.1 短期 (1-3月):追平 OCCT
```
P0: TrimmedSurface 深度集成 → B-Rep 真正确立
P0: 鲁棒 SSI 布尔重写 → 核心可靠性
P1: 拓扑修复完善 → STEP 导入可用
P1: 大装配 LOD 实现 → 万件场景
P2: JT 导入导出实现 → 工业互操作
P2: GPU MC 实现 → 性能突破
```
### 5.2 中期 (3-6月):差异化超越
```
P1: A级曲面 (G2/G3) → 对标 CGM
P1: 直接建模 → 对标 Parasolid 同步技术
P2: 完整 CAM 策略 → 3轴/多轴
P2: 特征识别深化 → 制造特征+设计特征
P3: 渐进式 Web 查看器 → 轻量化协作
```
### 5.3 长期 (6-12月):生态建设
```
P1: Python API 全覆盖 → 脚本化/自动化
P2: 插件系统 → 社区扩展
P2: Blender 集成插件 → 可视化+渲染
P3: 云端部署 → SaaS 化
P3: WASM 编译目标 → 浏览器原生运行
```
### 5.4 不可追赶的壁垒(承认差距)
| 壁垒 | 原因 | 策略 |
|------|------|------|
| Parasolid 生态 | 350+应用,40年积累 | 通过格式兼容参与生态 |
| CATIA 航空绑定 | 波音/空客认证 | 不与巨头正面竞争 |
| Blender 社区 | 3M+用户 | 做 Blender 的几何引擎后端 |
| 历史数据兼容 | 30年 Parasolid XT 文件 | 读格式,不做原生 |
---
## 6. 一句话总结
> **VDE 是全球第一个以 Apache 2.0 协议发布的全栈 B-Rep 几何引擎。
> 对标 OCCT 已覆盖其 60% 核心能力,在并行化、可微分几何、现代 C++ 方面已超越。
> 与 Parasolid/ACIS/CGM 的差距主要在布尔鲁棒性(30年打磨)和生态(350+应用),
> 但在开源协议、迭代速度、中文社区方面具有独特优势。**