什么是几何内核,它实现了哪些功能,这些功能对 CAD 用户有多重要?任何CAD 系统都是一组共享公共平台的最终用户应用程序,该平台基于多种基本技术,通常在称为技术组件的独立模块中实现每个组件负责不同的事情:三维模型的创建和编辑、其在显示器上的可视化、参数化、以某种格式导入/导出数据等此类组件要么由 CAD 开发人员自己设计、编码和维护,要么从第三方技术供应商(例如Spatial、Tech Soft 3D或LEDAS,ASCON,华云三维)技术组件是构建 CAD 建筑的基础其他一切都取决于这个基础——各种工具的能力、它们的性能、抗错误能力,甚至系统的整体智能在基础上打好某个组件后,开发人员意识到以后要用另一个组件替换它会相当困难通常这个问题是通过拆除旧建筑并建造新建筑来解决的,即 新一代(不要与下一个版本混淆)软件产品的发布3D 模型的核心表示是基于 B-Rep(边界表示),其中几何元素是规范对象或NURBS高阶多项式是 NURBS 的特例之一但是,当涉及到具有弯曲边界的 3D 网格时,最有可能是CAE问题在这种情况下,根据具有特殊模块的 B-Rep 模型进行构建,超出了几何内核的功能如果将来需要将此类模块直接包含到内核中,则可以这样做从程序员的角度来看,每个组件都是一组带有编程接口 ( API )的库,允许您从应用程序调用各种函数在几何内核的情况下,我们正在讨论使用基本类型的几何数据(点、线、曲线、面)和对它们的操作(变换、投影、交集),对边界模型的拓扑进行建模,实现布尔运算符以及用于创建和编辑三维实体和曲面(扫掠轮廓、圆角边缘)、创建三角形网格以及以不同格式(内核或中性IGES / STEP原生)导出/导入数据的典型命令内核函数列表只需一段,但它们的实现却需要数十甚至数百人年的时间事实是,每个基本操作(例如两个NURBS的交集)背后都有一个计算算法,其实现和调试是一项非常费力的工作内核中有数百个这样的操作(考虑到您必须使用的各种数据类型)并非所有 CAD 供应商都愿意在底层技术上投入如此多的资金,并且更愿意许可完成的内核,每年向开发公司支付一定的费用(通常包括从每个销售的最终产品副本中提取一定的金额)同样重要的是,许可内核通常已经在其他系统中“测试过”,因此它具有丰富的功能和高度的可靠性最后,通过选择第三方内核,CAD 供应商将能够完成其产品的开发并更快地将其推向市场有时这个时间是决定性的——如果你晚一两年发布,市场可能被竞争对手占领最明显的例子是 CAD SolidWorks 的发布,它成为第一个适用于 Windows 平台的参数化实体建模系统开发商后来也走上了同样的道路KeyCreator、Alibre Design、IRONCAD、MicroStation、T-FLEX、ADEM、SpaceClaim和许多其他系统还有一群人优先考虑完全控制源代码的可能性,及时修复错误和增强功能,快速移植到新平台,并准备用自己的资源为此付出代价CATIA、NX、Creo Elements/Pro、Solid Edge、Autodesk Inventor、think3、KOMPAS-3D 的开发人员正在走这条艰难的道路世界上第一个基于边界表示几何的商业几何内核实体建模,1982 年由 Ian Brady、Charles Langley 和现在的 Shape the Data 发布开发是用 Fortran 语言进行的,并基于在实验程序 BUILD I 和 BUILD II 中测试的想法ROMULUS 的第一个商业许可证即将出售买家 Hewlett-Packard 使用它来创建他们的 ME30 CAD 系统(由 CoCreate OneSpace Modeler 继承,现在由 PTC 所有,最近更名为 CREO Elements/Direct)1981 年,Shape Data 成为 Evans & Sutherland 硬件公司的一部分(其创始人之一是传奇的 CAD 先驱Ivan Sutherland),并于 1985 年开始开发 Parasolid 包,这是 ROMULUS 几何内核的直接继承者这个继任者很快就出现了一个有力的竞争者——Unigraphics公司,当时该公司意识到基于建设性方法 ( CSG ) 的实体建模是一条死胡同的发展道路Unigraphics 的主要产品是 CAD UniSolids(现在以NX为名,由Siemens PLM Software 所有),基于 PADL 自己的 CSG 核心,需要转换为刚体的边界表示1988 年,Unigraphics 谨慎地权衡了所有选择,从 Evans & Sutherland 手中完全收购了 Parasolid 业务,并开始投资于核心的开发一年后,发布了完全基于 Parasolid 的 UG/Solids 有限用户包,但该公司仅在 1990 年代中期才开始将 Parasolid 许可给第三方开发商,当时它暂时成为 EDS 的一部分在 Parasolid 的工作开始后不久(积极参与相应技术规范的起草),Shape Data 的三位领先员工——Ian Braid、Charles Lang 和 Alan Grayer——离开公司并以 Three-Space Ltd 的名义创建了自己的公司.,原则上开始开发新的几何内核 - ACIS该开发项目由Spatial Technology (USA)订购,该公司打算将 ACIS 用于其自身目的1986 年创立 Spatial 的 Dick Sowar 最初计划将新核心用于他创新的实体建模 Strata CAM 系统,但几年后意识到将核心本身授权给其他公司的业务更有利可图,并削减了其余的开发迪克通常更看重提供技术的公司的前景,当然不是定制产品,因此他将部分资金投入了另一位剑桥科学家约翰欧文的项目,他用这笔钱创建了D-Cubed开发世界上第一个商业几何约束求解器后来,剑桥的开发商 Three-Space(最终被 Spatial 收购)和 D-Cubed 紧密合作,在新世纪初围绕 ACIS 的事件发展中起了决定性的作用从一开始,ACIS 就是用 C++ 开发的,1989 年发布了第一个版本(它可以在 UNIX 平台和 MS DOS 上运行),HP 再次成为第一个客户
Control Data和Autodesk很快获得了 ACIS 的许可最后一份合同对 Spatial 来说是非常有利可图的——该公司每售出 AutoCAD 的每份副本即可获得 25 美元(自第 13 版以来,它总是包括 ACIS)几年后,Autodesk 意识到了自己的错误,并说服 Spatial 重新谈判协议,每份 6 美元加上每年 100 万美元其他主要的 ACIS 客户是Bentley Systems和Intergraph在 Spatial 成立前一年,发生了一件很快改变了整个 CAD 行业的重大事件:来自苏联的移民塞缪尔·盖斯伯格( Samuel Geisberg)创立了PTC(参数化技术公司)以开发Pro/ENGINEER,这是世界上第一个参数化实体建模系统基于结构元素(它使用构造树在进行更改时自动重新生成模型)Pro / ENGINEER(现称为 CREO Elements / Pro)从一开始就基于自己的几何引擎,专为支持实体建模而设计然而,该公司长期以来一直犹豫是否将其核心提供给其他开发商,直到 2001 年才这样做这时候市场已经属于ACIS和Parasolid,所以GRANITE(这个名字被赋予核心)主要是为了与Pro/E交换数据,而不是为了创建自己的实体建模系统这个核心还在这个位置Pro/E 的成功(新成立的公司在短短几年内成为行业内销售额的领先者,成为历史上第一家年收入突破 10 亿美元的 CAD 公司)迫使所有竞争对手在他们的系统最有远见的是约翰·赫什蒂克和迈克尔·佩恩(Michael Payne),他在离开 PTC 后于 1993 年成立了自己的公司,目的是为 Windows 平台开发 Pro/E 的类似物为了加快开发速度,他们决定不开发自己的几何内核,而是使用现成的试用 ACIS 后,开发人员对其功能并不满意(许多在 Pro/E 中正常工作的功能将错误返回给 ACIS)而且,由于 Mike 试图与 PTC 高管就其几何核心的许可进行谈判以失败告终(PTC 有先见之明地看到了未来的SolidWorks他的竞争对手),并且 Spatial 对 ACIS 中的这些错误的反应不适合他,因此他决定测试 Parasolid结果,事实证明,在一组已开发的测试中,Parasolid 的表现比 ACIS 好得多,并且 CAD 世界中的主要投标之一被决定对其有利毫无疑问,SolidWorks 的成功很大程度上归功于 Parasolid 的开发人员日本公司理光意识到将其核心授权给第三方开发商可以获得多么有利可图,于是凭借其Designbase产品进入了市场理光使用这个核心来设计他们的相机,对表面的复杂性提出了很高的要求Designbase 是第一个可以单独设计曲面和实体的核心,可以从一个视图无缝地移动到另一个视图此外,Designbase 使用了元建模的概念,它会自动生成模型创建的历史记录,从而可以进一步轻松地对几何进行参数修改目前,Designbase 核心已经从技术组件市场上消失了,但您仍然可以找到基于它的 CAD 系统——这就是Helix实体建模系统由 Futjitsu、CADRA (SofTech)、GMSWorks (C-Solutions) 等在日本发行法国公司Dassault Systemes不得不赶上已经领先的竞争对手作为 3D 设计的先驱之一,并在第四版CATIA中实现了实体建模功能(于 1993 年发布),该公司 - 与 CAD 市场的许多其他老前辈一样 - 跳过了 Windows意识到完全可移植到新的 CATIA 4 平台(用 Fortran 语言编写并专注于 UNIX 架构)是不可能的,达索决定从头开始创建新一代 CATIA代号为 CNext 的新开发项目于 1998 年以 CATIA V5 的名称闻名于世(此后又花了几年时间将 V5 提升到其前身的功能水平)选择 C++ 作为编程语言,而不是过时的 Fortran,新系统的几何核心被命名为CGM - CNext / CATIA Geometric Modeler 并且是从头开始编写的 - 没有来自以前系统的任何一行代码在里面
2008 年发布的 V6 PLM 平台基于相同的 CGM 几何核心这些年来,核心一直在不断改进和发展从一开始,CGM 就允许我们对由不同维度的流形组成的几何建模:零(点)、1-流形(曲线框架)、2-流形(表面)和 3-流形(刚体),任意混合它们同一型号内通过押注新的现代核心,达索赢得了胜利——CATIA V5 和相关的 PLM 产品使该公司成为全球 CAD 市场的绝对领导者(正如 PTC 曾经做过的那样)然而,这需要付出高昂的代价:在 CATIA 4(基于旧内核)中创建的数据无法在 V5 中得到充分利用更准确地说,DS的最大客户空中客车公司不得不为此埋单,该公司在CATIA第四版和第五版同时设计最大的客机A380时,却错过了调试的所有条款,并因此蒙受了损失60 亿美元原因 - 在多核 CAD 系统之间传输几何模型时出错没有人想到 CATIA(公司的至圣之物——作为制造可口可乐浓缩液的秘诀)的几何核心会获得许可但去年夏天,该公司开始通过其子公司 Spatial 向所有人提供 CGM(当然,为此必须更改第一个字母的解码:“C”现在不是“CATIA”,而是“Convergence”,这让所有人感到惊讶) )因此,目前四大三维建模引擎(Parasolid、ACIS、CGM、C3D、DGM)核心可用于许可然而,CGM 并不是唯一的法国实体建模引擎早在 1990 年代初期,来自该国的另一家公司Matra Datavision 就开始开发 CAS.CADE 环境,这是一组构成 CAD 基础的组件基于它的第一个产品是EUCLID QUANTUM CAD/CAM 系统,由 Matra 于 1996 年发布但它在市场上并没有取得太大的成功,1999 年 Dassault Systemes 从 Matra 手中收购了大部分 CAD 业务由于 CAS.CADE 核心仍然无人认领(达索已经拥有自己的 CGM 核心),Matra 决定发布其源代码并组织一家服务公司,为决定以该核心作为其产品基础的开发人员提供服务Open CASCADE 就是这样诞生的开源业务早已证明其价值对此的证实之一是 Open CASCADE SAS 的命运,它已经改变了几个所有者,但仍然继续存在:最新的内核版本 (7.6) 可追溯到 2021 年 12 月除了 Open CASCADE,该公司还在开发一个基于它的平台,用于通过计算 SALOME 进行工程,也可在源代码中免费获得客户主要是能源领域的欧洲公司,以及中国的CAE公司许多其他公司也曾在开发几何内核领域工作过,但都没有取得显着的成果例如,您可以回想起已故的 XOX 公司及其核心形状(在 CADKEY 的第一个版本中使用,后来被 ACIS 取代)自 1996 年以来,美国公司IntegrityWare一直在开发一套用于几何计算的库自 1998 年以来,它们由 Solid Modeling Solutions分发(以SMLib的名义),它为购买许可证的每个人提供的不仅是目标代码,还有内核的源代码,以及为自己修改的权利目的2004 年,IntegrityWare 发布了SOLIDS++几何建模引擎... 内核采用C++编程语言实现,具有模块化架构,支持同一模型内不同维度的拓扑结构,几何公差可调,允许模型三角剖分,实现复杂拓扑结构的顶点舍入,可以建模曲面曲率控制 G2 和 G3但是,对于基于此核心的商用 CAD 系统一无所知纵观英法美日的成功,中国和俄罗斯开发商也不能坐视中国由华天软件2010年开发研发三维建模引擎DGM和约束求解器DCS,历经十年核心技术攻关、五大版本迭代、两轮全国公测,2021年9月8日CrownCAD正式面世俄罗斯由ASCON领导,该公司于 2000 年发布了KOMPAS-3D的第一个版本,完全基于其自己的几何引擎(C3D)2002 年,该计划得到了STC APM 的支持,他们创建了自己的 APM 引擎,用于 APM Studio 实体和曲面建模系统从 1995 年的开发到 2012 年,Ascon 专门使用这个核心来满足自己的需求,作为CAD KOMPAS-3D 的一个组件2012 年,Ascon 开放了 C3D 内核进行第三方授权核心的开发和市场推广由 Ascon的成员C3D Labs 进行下表列出了相当完整的开发人员示例列表,包括第一类和第二类它表明,获得许可最多的核心是 ACIS(由 Dassault Systemes 的子公司 Spatial 开发和支持)和 Parasolid(Siemens PLM Software)
产品厂商产品内核4MCAD IntelliCAD4M S.A., 希腊CAD, AECOpen CASCADE TechnologyAdamsMSC Software, 美国CAEParasolidADEMADEM 集团公司,俄罗斯-以色列-德国CAD, CAM, CAPPACISADINA ModelerADINA R&D Inc., 美国CAEParasolid和 Open CASCADE TechnologyAlibre Design3D Systems, СШАMCADACISAllplan德国 Nemetschek AGAEC/BIMSMLibAMPSolidAMPS 技术公司,美国CAEACISANSYSANSYS Inc., СШАCAEACIS和 ParasolidAPM StudioSTC APM,俄罗斯MCADAPM引擎ArchiCADGraphisoft, 匈牙利AEC/BIMСобственноеARESGraebert,德国CADACISAshlar-Vellum Cobalt, Xenon, ArgonAshlar-Vellum, СШАMCADACISAutoCADAutodesk, 美国CAD, AEC, GIS原生 (ASM) ACIS 兼容Autodesk InventorAutodesk, 美国MCAD原生 (ASM) ACIS 兼容Autodesk MoldflowAutodesk, 美国CAEParasolidAutodesk Revit ArchitectureAutodesk, 美国AEC/BIM原生 (ASM) ACIS 兼容bonzai3dAutoDesSys, 美国CADACIS结合自己的内核BricscadBricsys NV, 比利时AEC, MCADACISBtoCADYuanFang Software Co., Ltd., 中国CADACISCADopiaCADopia Inc., 美国CADACISCATIADassault Systemes, 法国CAD/CAM/CAE, AECCGMCimatronCimatron Limited, 以色列CAMACISCollabCADNational Informatics Centre, ИндияCAD/CAMOpen CASCADE TechnologyCreo (прежнее название – Pro/Engineer)Parametric Technology, 印度MCADGRANITECreo Elements/Direct Modeling (CoCreate)Parametric Technology, 美国CADACISEdgecamPlanit Software, Вел英国CAMParasolid和 GRANITEESPRITDP Technology Corp., 美国CAMParasolidform-ZAutoDesSys,美国CADACIS结合自己的内核FreeCAD德国CADOpen CASCADE TechnologyGibbsCAMCimatron, 以色列CAD/CAMParasolid 和 GRANITEGstarCADSuzhou Gstarsoft Co., Ltd, 中国CADACISIRONCADIronCAD LLC, 中国MCADACIS 和ParasolidKeyCreatorKubotek USA Inc., 日本-美国CADACISMastercamCNC Software, 美国CAD/CAMACISMasterworkTecnos G.A., 意大利CAMOpen CASCADE TechnologyMicroStationBentley Systems, 美国AECParasolid (早期版本– ACIS)Moment of InspirationTriple Squid Software Design, СШАCADSOLIDS++NXSiemens PLM Software, 德国CAD/CAM/CAEParasolidPatranMSC Software, 美国CAEParasolidPower NURBSIdeate Inc., 美国CADSOLIDS++PowerSHAPEDelcam plc, Велико英国CAD/CAMParasolidprogeCADprogeCAD Srl Uninominale, 英国CADACISRadanPlanit, ВеликобританияCAD/CAMACISRhinocerosRobert McNeel and Associates, 美国CADSOLIDS++ (单独的模块)Shark LTEncore, 美国CADACISSmartCAMSmartCAMcncCAMACISSolid EdgeSiemens PLM Software, 德国MCADParasolid (早期版本– ACIS)SolidWorksDassault Systemes, 法国MCADParasolidSpaceClaimSpaceClaim Corp., 美国MCADACISSTAR-CCM+CD-adapco, 英国-美国CAEParasolidStruCadAceCad Software, В英国AEC/BIM自有核心T-FLEXTop Systems, 俄罗斯MCADParasolidThinkDesignVersata, 美国MCAD自有核心TopSolidMissler Software, 法国CAD/CAMParasolidTurboCADIMSI/design, 美国AEC, MCADACISVectorworksNemetschek,德国AECParasolid (早期版本– SMLib)ViaCAD 2D/3DEncore, 美国CADACISZW3D (прежнее название – VX CAD/CAM)ZWCAD Software, 中国ZWCAD Software, 中望MCAD自己的核心 (VX Overdrive)ZWCADZWCAD Software, 中国ZWCAD Software, 中望CADACISАSCON, 俄罗斯SINOVATION华天软件,中国CAD/CAM/CAECRUX VCrownCAD华云三维,中国CAD/CAM/CAE/AECCAD/CAM/AECDGMACIS、Parasolid 和 Designbase 之间在 1990 年代后半期开发的几何内核市场竞争导致许多 CAD 供应商面临一个选择:如果他们对所用内核的质量或开发商的支持水平,那么他们就可以更换供应商Bentley Systems 和 Intergraph 利用这个机会,将他们的 CAD 系统(分别是 MicroStation 和 Solid Edge)从 ACIS 迁移到 ParasolidIRONCAD 的开发商 3D / EYE 走得更远:1995 年将 ACIS 核心集成到他们的系统中,1999 年他们在那里添加了 Parasolid,允许用户在它们之间自由切换
系统仍然保持这种架构,这有助于用户在处理导入的几何图形(在另一个 CAD 系统中创建)时降低成本不同的几何内核通常以不同的方式解释几何公差,以不同的精度计算曲线和曲面的交点,结果是一个完全正确的模型,当转移到基于另一个内核的系统时,由于许多错误而无法运行以半自动模式进行修正两个核心——谁更多?达索可以做得更多随着 2000 年收购 Spatial,法国人获得了 ACIS 核心——除了为 CATIA 提供动力的 CGM 和为 SolidWorks 提供动力的获得许可的 Parasolid但 Dassault 高管无意在他们的 CAD 系统中使用 ACIS相反,他们聘请了 SolidWorks 的创始人Michael Payne来领导 Spatial ,后者的任务是与 ACIS 的主要被许可人 Autodesk 进行谈判在研究了 Spatial 案例后,Mike 很快意识到为什么 Bentley 和 Intergraph 放弃了这个核心以下是他最近接受 Dilip Menezes 采访时的话:“产品不可靠尽可能地,它是一个半成品顾客很生气客户支持服务不存在价格各不相同,具体取决于某人在本季度末能够支付的金额并且有一个零质量控制系统”在与 Autodesk 首席执行官卡罗尔·巴茨( Carol Bartz)的会面中,迈克承诺会解决这个问题然而,Autodesk 本身随后认为相反,Mike 是在敲诈他们,威胁如果 Autodesk 不接受 Dassault 成为 SolidWorks 经销商的提议,将其竞争产品Inventor从市场上移除,则威胁将完全停止核心的开发结果,Autodesk利用了许可协议,在一次性支付了650万美元后收到了ACIS源代码以此为基础,公司开始开发自己的几何内核,称为形状管理器... 很快就找到了这个特定工作的合格程序员的答案——当然在剑桥,还有其他地方
与 D-Cubed 达成协议后,Autodesk 将这项开发工作外包给了 ACIS 的实际作者(几乎不可能了解 Spatial 和 D-Cubed 之间的遗传联系;我们只能说这两家公司自 1986 年以来一直密切合作,和他们的主要员工在剑桥大学的同一个 CAD 实验室中携手合作)Spatial 起诉 Autodesk 但败诉因此,剑桥树结出了第五个果实(BUILD、ROMULUS、Parasolid、ACIS、Shape Manager)——惊人的生产力
核战争到此结束顺便说一下,ACIS 核心在 Dassault 的框架内开发得相当成功定期发布新版本,增加功能以支持直接几何编辑不知疲倦的 Mike Payne 离开 Dassault创立了 SpacaClaim,这次不是在 Parasolid 上构建系统,而是在 ACIS 上构建系统多亏了两家公司开发人员的个人相识,他们进行了很好的合作,现在所有 Spatial 客户都可以使用这种合作成果大多数直接建模系统(SpaceClaim、KeyCreator、IRONCAD 和部分 Creo Elements / Direct)都是基于 ACIS 构建的,这并非巧合另一件事是,在极短的时间内开发几何内核需要巨大的投资,只有非常大的公司或国家才能负担得起例如,开发 Parasolid 的总劳动强度估计为 850 人年(核心于 1985 年在剑桥开始开发)类似的估计最有可能真正为其它几何内核- C3D,ACIS,CGM,DGM当然,在开发新的 3D 核心时,需要依靠前人的经验,才能从这次经验中汲取精华,不再重蹈覆辙因此,在随后的出版物中,我们计划简要介绍之前尝试创建 3D 建模内核的历史,并讨论现在正在创建的俄罗斯内核与它们的不同之处
0 评论