3D CAD 建模内核解析:Parasolid、ACIS、Open CASCADE 与 CGAL 架构

1973 年,剑桥大学。在大学 CAD 研究组中,博士生 Ian Braid 在导师 Charles Lang 的指导下编写了一个名为 BUILD 的程序:计算机如何凭借精确的数学法则,不仅知晓物体的线框轮廓,更能确定其内部体积、质量属性与实体边界?一年后的 1974 年 1 月 1 日,Lang、Braid、Alan Grayer 与 Peter Veenman 将这一学术探索转化为商业实体:Shape Data Limited。1978 年问世的 Romulus 成为了世界上首款商用实体建模内核,采用 Fortran 编写,专门用于嵌入各类 CAD 系统。如今,无论工程师开启的是 SOLIDWORKS、Onshape、Autodesk Inventor 还是 FreeCAD,这些软件本身均不直接执行底层几何拓扑运算。在图形用户界面与参数化历史树之下,运转着这一剑桥渊源的独立“几何内核引擎”。理解各大内核的技术架构与数学模型,是机械工业软件架构中最关键的核心决策之一。[5][1][2]

⚡ 一览速查:主要几何建模内核与技术规格

Parasolid(西门子 Siemens): B-Rep 内核;1980 年代末首发,当前版本 v39.0(2026年7月)• 西门子官方统计支持超过 350 款商业工业软件:SOLIDWORKS、NX、Solid Edge、Onshape、MicroStation、Shapr3D[1]
ACIS(Spatial / 达索): 1989 年推出,最早采用 C++ 构建的商业内核之一 • BricsCAD、KeyCreator、IronCAD;AutoCAD 与 Inventor 则使用 2001 年基于 ACIS 7.0 分叉定制的 ShapeManager[2][6]
Open CASCADE Technology(OCCT): 1999 年开源;当前版本 8.0.1(2026年7月30日);LGPL-2.1 附带豁免许可 • FreeCAD、SALOME、CAD Exchanger、KiCad(STEP/BREP 导出引擎)[3]
CGAL(计算几何算法库): 1996 年由欧洲科研机构联合发起;当前版本 6.2.1;开源 GPL v3+ 或商业授权(GeometryFactory),部分基础模块 LGPL v3+ • OpenSCAD(2021.01 稳定版)、SFCGAL/PostGIS[4]
C3D Toolkit(C3D Labs / ASCON): 2012 年从 KOMPAS-3D 拆分商业化的 B-Rep + 参数化求解器 • KOMPAS-3D、nanoCAD(2016年起引入)、ESPRIT CAM、Altium Designer[7]
底层表示方式: 边界表示法(B-Rep)拓扑体系 + NURBS 非均匀有理 B 样条与解析曲面几何

B-Rep、CSG 与 Mesh:三维几何的三种核心语言

三维模型在计算机内存中的数学表达方式,决定了其在上层软件中的全部工程能力。现代三维技术世界主要由三种截然不同的几何表示体系支撑:

  • 1. 边界表示法(B-Rep, Boundary Representation): 工业机械 CAD 领域的通用语言。它将实体分为两个紧密耦合的层级:拓扑结构(顶点 Vertex、边 Edge、环 Loop 与面 Face 的层级连接关系)和几何形态(支撑面层的解析平面、圆柱面或 NURBS 自由曲面数学方程)。当这些曲面严密闭合为流形空间时,即构成具有质量特性的工程实体。
  • 2. 构造实体几何(CSG, Constructive Solid Geometry): 将复杂实体表达为球体、圆柱、立方体等基础解析体素通过布尔运算(并集、交集、差集)组合而成的二叉树结构。OpenSCAD 等代码驱动建模工具即基于此逻辑。CSG 能完好保留建模历史意图,但在自由曲面过渡与倒圆角(fillet/blend)处理上存在局限。
  • 3. 多边形网格(Polygon Mesh): 常见于 Blender、Maya 与 3ds Max 等动画建模软件。网格并不求解连续的解析体积,仅通过空间中离散的三角形或四边形平面拼接模拟物体表面。网格适用于 3D 打印 STL 文件与实时渲染,但无法直接进行机械精度级的参数化编辑。

第一转折:内核依赖与达索-西门子技术悖论

全球工业 CAD 领域存在一个为人熟知的技术现象:机械桌面端应用广泛的 SOLIDWORKS 隶属于法国达索系统(Dassault Systèmes)。然而,驱动 SOLIDWORKS 底层运转的核心几何引擎,却是达索最大的跨国竞争对手西门子旗下的 Parasolid。[1][6]

1997 年达索以 3.1 亿美元股票并购 SOLIDWORKS 时,该软件已深深植根于 Parasolid。SOLIDWORKS 研发团队在原型阶段曾测试过 ACIS,但在 1995 年首次商业发布前决定全面迁移至 Parasolid。达索自身拥有专有内核 CGM(Convergence Geometric Modeler),并于 2000 年收购 Spatial 获得了 ACIS。替换底层内核并非隐秘工程:2010 年前后,达索曾公开展示基于 CATIA V6 平台与 CGM 内核的“SolidWorks V6”。然而,由于数以千万计的历史工程图纸对倒角微公差存在极度敏感的兼容要求,换核方案并未替代传统桌面版。CGM 随后被部署于网页端 xDesign 及 3DEXPERIENCE WORKS 产品线中,而两套内核之间的数据交换仍主要依赖无参数历史的“哑实体”模型。分析机构 Schnitger Corporation 在 2020 年的技术报告中指出:要确保不同内核在海量复杂倒角与拓扑交叠中得出百分之百一致的几何结果,在工程上难以实现。因此,SOLIDWORKS 桌面版至今依然由 Parasolid 提供底层支持。[6][1]

SOLIDWORKS 创始人 Jon Hirschtick 在云端 CAD 领域做出了相似的技术权衡。2012 年离开达索后,他与 John McEleney 共同建立了 Belmont Technology(后更名为 Onshape)。他们没有选择耗费数年自研全新内核,而是直接将成熟的 Parasolid 部署于 AWS 云端计算集群上。2015 年 3 月 Onshape 开启公开测试,作为原生云三维 CAD 系统,于 2019 年被 PTC 以 4.7 亿美元全资收购。[8]

第二转折:拓扑命名难题(Topological Naming Problem)

开源 CAD 软件在长达数年的时间里未被全面引入高强度工业生产,其核心瓶颈之一正是参数化建模中天然伴随的拓扑命名难题(Topological Naming Problem, TNP)。设想在一个机械底座的顶面(内部标识为 Face4)定位并打孔。若随后返回参数历史树修改底层草图的拉伸尺寸,内核将自底向上重新构建整个几何拓扑。[3][9]

若建模内核缺乏完备的面元素持久化唯一标识(persistent ID)追踪机制,重算后的原 Face4 极易被重新编排为 Face6。依附于旧标识的孔特征因丢失基准而产生断链,导致模型树出现大量报错。这一问题绝非开源领域独有:FreeCAD 官方技术文档明确指出,主流商业 CAD 同样存在此类歧义,没有任何内核能在纯数学上百分之百“消除”拓扑命名问题,商业软件是通过数十年累积的启发式映射算法实现了平滑规避。[9]

在开源 Open CASCADE(OCCT) 内核中,历史上并未包含内建的拓扑跟踪层;FreeCAD 早期模型重构报错的根源正源于此。社区开发者随后开展了长期攻关:开发者“realthunder”在其 LinkStage3 分支中验证了拓扑跟踪算法原型;随后在 Ondsel 商业资金资助与全职工程师协助下,该机制被重构并合入主线。2024 年 11 月 19 日发布的 FreeCAD 1.0 正式在草图(Sketcher)与零件设计(PartDesign)工作台中启用了拓扑命名跟踪,显著改善了参数化特征链的稳定性。[3][9]

第三转折:CGAL 与高精度数型架构

主流 B-Rep 内核依赖 IEEE 754 64 位双精度浮点计算。浮点数计算不可避免地在小数点后十余位引入累积舍入漂移(epsilon drift)。当两处曲面处于极度接近的微小相切或微米级狭缝相交时,B-Rep 内核往往难以判定点处于实体内部还是外部,导致布尔运算偶发性锁死或面求交失败。

CGAL(计算几何算法库) 正是在这一背景下展现其独特价值。CGAL 始于 1996 年欧洲多家学术机构(包括 INRIA、马克斯·普朗克计算机科学研究所、苏黎世联邦理工学院等)的联合研究,采用精确几何计算(Exact Geometric Computation, EGC)范式:谓词逻辑完全基于严格的有理数类型进行求解,使拓扑内外判断免于浮点精度波动干扰。布尔实体求交、三维 Delaunay 三角剖分与 Voronoi 图等高精度几何形态均获益于此。OpenSCAD 在其 2021.01 稳定版中以 CGAL 作为核心 CSG 引擎,其优势在于几何结果精确可靠,而成本则是较高的计算资源占用。为兼顾效率,OpenSCAD 在 2024.09.28 构件中引入了 Manifold 几何后端作为可选方案。Manifold 在多核硬件上提供了出色的计算速度,而 CGAL 则继续作为高精度算法验证的技术支柱。[4][10]

主流建模内核特性全景对比

特性与指标 西门子 Parasolid Spatial ACIS Open CASCADE(OCCT) CGAL 开源库
几何表示方式 流形与非流形 B-Rep、NURBS、聚合建模(Convergent Modeling) 流形与非流形 B-Rep、NURBS 工业级 B-Rep 与 STEP 解析引擎 精确 CSG、多面体 Polyhedron、Nef 多面体
计算精度范式 64位双精度浮点 + 容差几何 64位双精度浮点 + 容差几何 64位双精度浮点 + 容差缝合及 ShapeFix 修复机制 严格解析精度(精确数型系统)
软件授权模式 西门子商业 OEM 专有授权 Spatial/达索商业专有授权 LGPL-2.1(附带特殊豁免条款) GPL v3+ 或商业授权;部分基础包 LGPL v3+
原生数据格式 .x_t, .x_b .sat, .sab .brep, STEP AP203/214/242 .off, .poly, STL
直接建模适配性 行业领先;NX 同步建模技术基于该内核与 D-Cubed 求解器构建 良好;SpaceClaim 在 2024 R2 前基于 ACIS,2025 年起引入 Parasolid 逐步完善中(FreeCAD 零件设计模块) 不适用(纯计算几何体系)
代表性应用软件 SOLIDWORKS、NX、Onshape BricsCAD、KeyCreator、IronCAD(AutoCAD/Inventor 采用 ShapeManager) FreeCAD、CAD Exchanger、SALOME OpenSCAD 2021.01、SFCGAL/PostGIS、MeshLab(部分网格算法)

工程决策矩阵:按研发目标合理选型

在设计或采购三维软件系统时,明确工程目标与内核优势的匹配关系至关重要:

  • 大型工程装配与汽车航空制造: 面向数万个零件的超大型装配体与复杂自由曲面过渡,西门子 Parasolid 具备深厚的工程验证积累;生成标准的 .x_t 格式可在主流高端工业生态中免损互通。[1]
  • 开源自研、数据自主与工业工具链: 若需要构建无单机席位授权成本约束的自动化几何处理流水线、CAM/CAE 前后处理工具链,Open CASCADE(OCCT) 搭配 FreeCAD 1.0 是具备成熟工业级 B-Rep 功能的开源首选。[3]
  • 代码参数化与算法构型: 针对点阵晶格结构(Lattice)与代码控制的参数化形态,OpenSCAD 提供了灵活的工作模式——追求极限数学严谨性选择 CGAL 后端,追求高频交互响应选择 Manifold 后端。[10]
  • 概念方案快速直接推拉: 针对无历史树约束的快速概念设计与外来 STEP 模型修复,支持直接建模工具(如基于 ACIS 的 BricsCAD 或基于 Parasolid 的 SpaceClaim/Shapr3D)展现了显著的操作敏捷性。[2]

结语与工程启示

选用一款 CAD 软件不仅是选择界面操作习惯,本质上是确立了技术资产底层的几何计算内核。1973 年剑桥大学提出的那个问题至今依然回响:计算机如何严密地描述一个实体?Parasolid 与 ACIS 代表了先驱研究者给出的商业工程答卷;而 OCCT 与 CGAL 则展示了开源技术世界的坚定回应。在工程实践中,为了确保数字资产在跨越数十年后仍可无损重构,除保存私有工程文件外,同时导出标准化的 STEP AP242 归档至关重要。设想未来工业环境若出现重大平台技术演进,存量海量模型文件的跨内核转换将何去何从?追求计算吞吐率的新型引擎是否足以完全替代传统高精度几何验证?这些问题依然值得每一位系统工程师持续关注。


📚 权威引证与工程参考资料

  1. 西门子数字工业软件(Siemens Digital Industries Software)• Parasolid 官方产品架构手册(“支持 350+ 款工业软件”)及 Tech Soft 3D 渠道分发指南 • 西门子 Parasolid 页面 • Tech Soft 3D 官方发布
  2. Spatial Corporation(达索系统子公司)• 3D ACIS Modeler 技术白皮书;Ansys Discovery 2025 发行文档(SpaceClaim 从 ACIS 转向 Parasolid 架构说明) • Spatial ACIS 主页 • Ansys 2025 R1 发行说明
  3. Open CASCADE SAS • OCCT 开发者指南及官方 7.9.0 与 8.0 里程碑公告 • OCCT 官方技术文档 • OCCT 社区公告
  4. CGAL 开源项目团队 • 授权许可规范说明(GPL/LGPL 与 GeometryFactory 商业双轨授权) • cgal.org 官方网站 • CGAL 许可文档
  5. 维基百科 / 实体建模协会(Solid Modeling Association)• Shape Data Limited(1974)、Romulus(1978)及 2008 年 Pierre Bézier 终身成就奖(Braid, Grayer, Lang) • Shape Data 词条 • Romulus 历史 • Bézier Award 官方记录
  6. upFront.eZine / Design Engineering / Schnitger Corp. • ShapeManager 技术分叉史(2001)、SolidWorks V6 与 xDesign 历程、内核重构隐藏成本深度剖析 • ShapeManager 记录 • xDesign 架构报道 • Schnitger 2020 报告(PDF)
  7. C3D Labs • nanoCAD 工业客户应用实践及 2016 年授权整合公告 • C3D Labs nanoCAD 案例 • C3D Toolkit 架构
  8. Engineering.com / 维基百科 • Jon Hirschtick 深度专访(Parasolid + AWS 云架构设计)及 Onshape 创立收购历程 • Hirschtick 专访全文 • Onshape 档案
  9. FreeCAD 开源项目组 / Ondsel • 拓扑命名难题(TNP)维基专页、FreeCAD 1.0 正式里程碑公告(2024年11月19日)及 Ondsel 工程解析 • FreeCAD TNP 维基 • FreeCAD 1.0 发布公告 • Ondsel 深度分析
  10. OpenSCAD 开源项目组 • Manifold 几何计算引擎整合公告及项目路线图 • OpenSCAD 开发者邮件列表 • OpenSCAD 档案

在我们的主流 3D 建模软件全景指南中,深入探索商业工业软件与底层建模引擎的选型对比。

The DigiLiner editorial team publishes with dual-source verification, a public corrections log, and human-supervised AI assistance. Editorial Policy

发表评论

评论经审核后显示。含链接或推广内容的留言不会发布。