From 989f1f232817669183e5ef2378dc4a284c8da296 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8C=82=E4=B9=8B=E9=92=B3?= Date: Mon, 27 Jul 2026 07:58:19 +0800 Subject: [PATCH] docs: CGM Class-A surfacing deep gap analysis + catch-up plan MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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% --- docs/31-曲线曲面深度追赶计划.md | 127 ++++++++++++++++++++++++++++++++ 1 file changed, 127 insertions(+) create mode 100644 docs/31-曲线曲面深度追赶计划.md diff --git a/docs/31-曲线曲面深度追赶计划.md b/docs/31-曲线曲面深度追赶计划.md new file mode 100644 index 0000000..d7eb63e --- /dev/null +++ b/docs/31-曲线曲面深度追赶计划.md @@ -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 年汽车/航空供应链磨合的专有算法 +- 波音/空客/宝马的内部标准验证 +- 人类顶尖曲面工程师的毕生经验结晶