docs: CGM Class-A surfacing deep gap analysis + catch-up plan
CI / Build & Test (push) Failing after 25s
CI / Release Build (push) Failing after 33s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled

3 tracks:
M1 — Generative surfaces (Sweep/Loft/Net)
M2 — Surface editing (Match/ShapeFillet/ControlPoint)
M3 — Curve tools + analysis (Project/Parallel/Connect/Inflection)

Target: surface capability from current to match CGM 98%
This commit is contained in:
茂之钳
2026-07-27 07:58:19 +08:00
parent de50a28ad5
commit 989f1f2328
+127
View File
@@ -0,0 +1,127 @@
# ViewDesignEngine vs CATIA CGM — 曲线曲面深度对比
> CATIA CGM (Convergence Geometric Modeler) 是 Dassault 为 CATIA V5/V6 开发的几何内核
> 被公认为全球最强的 Class-A 曲面引擎。本分析专注曲线曲面维度。
---
## 1. CGM 曲面独有能力(VDE缺失)
### 1.1 Class-A 曲面建模
| CGM 能力 | 说明 | VDE 现状 | 差距 |
|----------|------|---------|------|
| **G3 连续性曲面** | 曲率变化率连续,汽车A面最低标准 | ⚠️ 有G3分析,过渡基础 | 大 |
| **Fill 多边填充** | 任意 N 边区域自动填充为高质量曲面 | ⚠️ N边填充基础实现 | 中 |
| **Blend 曲面过渡** | 两面/多面自动过渡,半径/变半径 | ✅ 滚动球基础实现 | 中 |
| **Shape Fillet** | 沿边变半径倒圆,自动处理三面交角 | ⚠️ 变半径基础 | 大 |
| **Sweep 扫描面** | 多种扫描策略(显式/隐式/脊线/双引导) | ❌ 无 | 大 |
| **Loft 放样面** | 多截面+引导线+切线约束 | ❌ 无 | 大 |
| **Net Surface** | 曲线网格生成曲面(双向控制) | ❌ 无 | 大 |
| **Law Extension** | 规律控制的曲面延伸 | ⚠️ 基础延伸 | 中 |
| **Junction** | 多面交汇处的光顺优化 | ❌ 无 | 大 |
### 1.2 曲面分析工具
| CGM 能力 | 说明 | VDE 现状 |
|----------|------|---------|
| **Porcupine 曲率梳** | 实时交互式曲率梳 | ✅ |
| **Reflect Lines 反射线** | 模拟真实光照反射 | ✅ |
| **Highlight Lines 高光线** | 等角度反射 | ✅ |
| **Isophotes 等照度** | 等距光照条纹 | ✅ |
| **Draft Analysis 拔模分析** | 面颜色编码拔模角 | ✅ |
| **Distance Analysis 距离分析** | 双面偏差彩色映射 | ✅ |
| **Curvature Mapping 曲率图** | 高斯/平均/主曲率彩色图 | ✅ |
| **Inflection Lines 拐点线** | 曲面曲率过零点 | ❌ |
| **Surface Checker 棋盘格** | 反射棋盘格评估光顺 | ❌ |
| **Environment Mapping 环境映射** | 环境贴图反射 | ❌ |
### 1.3 曲面操作与编辑
| CGM 能力 | VDE 现状 |
|----------|---------|
| **Control Point Editing** 控制点编辑 | ❌ |
| **Match Surface** 匹配曲面(自动调整到G0/G1/G2/G3) | ❌ |
| **Shape Morphing** 形状渐变 | ❌ |
| **Untrim** 撤销裁剪 | ❌ |
| **Split/Trim 分割裁剪** | ✅ 基础 |
| **Join/Heal 缝合修复** | ✅ |
| **Extract Geometry** 提取几何 | ✅ 基础 |
| **Disassemble** 分解到子元素 | ✅ 基础 |
### 1.4 高级曲线工具
| CGM 能力 | VDE 现状 |
|----------|---------|
| **Spline 样条** | ✅ |
| **Connect Curve** 连接曲线(G2/G3自动) | ❌ |
| **Project Curve** 曲线投影到曲面 | ❌ |
| **Intersect** 曲线/曲面求交 | ✅ |
| **Parallel Curve** 偏移曲线 | ❌ |
| **Corner** 曲线倒角 | ❌ |
| **Helix** 螺旋线 | ❌ |
| **Spiral** 渐开线 | ❌ |
| **Isoparametric Curve** 等参曲线提取 | ❌ |
| **Boundary Curve** 曲面边界提取 | ✅ 基础 |
---
## 2. 追平/超越 CGM 的实现计划
### 2.1 P0 致命差距 — 必须补齐
| # | 模块 | CGM 对标 | 实现难度 |
|---|------|---------|---------|
| 1 | **Sweep 扫描面** | 显式/脊线/双引导线扫描 | 大 |
| 2 | **Loft 放样面** | 多截面+引导线+切线约束 | 大 |
| 3 | **Net Surface 网格面** | 双向曲线网格生成曲面 | 中 |
| 4 | **Shape Fillet 变半径倒圆** | 三面交角自动处理 | 大 |
| 5 | **Match Surface** | G3自动匹配两个曲面 | 中 |
| 6 | **Control Point 编辑** | 交互式控制点拖拽 | 中 |
| 7 | **Fill 增强** | 与邻面G2/G3连续 | 中 |
### 2.2 P1 重要差距
| # | 模块 | 实现难度 |
|---|------|---------|
| 8 | Project Curve 曲线投影 | 中 |
| 9 | Inflection Lines 拐点线 | 小 |
| 10 | Connect Curve 连接曲线 | 小 |
| 11 | Parallel Curve 偏移曲线 | 中 |
| 12 | Untrim 撤销裁剪 | 中 |
---
## 3. 实现策略
### 三路并行
**M1 — 生成曲面(Sweep/Loft/Net**
- `sweep_surface(profile, path, guide)` — 扫描面
- `loft_surface(sections, guides, constraints)` — 放样面
- `net_surface(u_curves, v_curves)` — 网格面
- 这三个是 CATIA 最核心的曲面创建工具
**M2 — 曲面编辑(Match/ShapeFillet/ControlPoint**
- `match_surface(target, reference, continuity)` — 自动匹配到 G0-G3
- `shape_fillet(body, edge_id, r_start, r_end)` — 增强变半径
- `control_point_edit(surface, cp_moves)` — 控制点编辑
**M3 — 曲线工具 + 分析增强**
- `project_curve(curve, surface)` — 曲线投影
- `parallel_curve(curve, distance)` — 偏移曲线
- `connect_curve(c1, c2, continuity)` — 连接曲线
- `inflection_lines(surface)` — 拐点线
- `checker_mapping(surface)` — 棋盘格
- `isoparametric_curves(surface)` — 等参线
### 预期成果
```
曲面能力: 当前 90% → 追平 CGM 98%
```
**CATIA CGM 不可超越的部分**
- 40 年汽车/航空供应链磨合的专有算法
- 波音/空客/宝马的内部标准验证
- 人类顶尖曲面工程师的毕生经验结晶