数据结构论坛

首页 » 分类 » 定义 » 俄罗斯三维建模引擎C3D内核
TUhjnbcbe - 2024/5/3 16:41:00

几何建模的核心:

GeometricModelingPackage(也称为GeometricCore)是一组允许您使用几何(如实体)建模功能的API。许多领先的CAD系统(如CATIA、Pro/E、NX)都是建立在它们自己的几何内核(分别为CGM、GRANITE和Parasolid)的基础上,而其他的(SolidWorks、T-FLEX、ADEM)等)是建立在许可几何内核的基础上的。流行的商业内核(用于大多数CAD系统)有Parasolid(来自SiemensPLMSoftware)、ACIS(来自SpatialCorp.,DassaultSystèmes的子公司)和GRANITE(PTC)。OpenCASCADE核心在开源中免费分发。国内华云三维DGM

1.核心是什么?

3D建模在背后拥有30多年的经验。历史。并非所有提出的想法都富有成效。并非所有3D建模公司都能在市场动荡中幸存下来。但最好的经验是在称为3D建模内核的软件组件中获得的,它现在是几乎所有CAD(以及CAE和CAM)的基础。这些组件要么由工程软件开发人员自己设计、编码和维护,要么从第三方技术供应商处获得许可。3D核心是构建任何现代CAD建筑的基础。其他一切都取决于这个基础——各种工具的能力、它们的性能、抗错误能力,甚至系统的整体智能。

从程序员的角度来看,几何内核是一个函数/类库,用于创建几何对象(点、线段/圆弧/曲线、一块曲面、实体),改变它们的形状和大小,创建基于几何对象的新对象他们,在计算机屏幕上可视化模型并与其他程序交换3D数据。内核函数的列表可以压缩成一句话,但它们的实现需要几十个几百人年的时间。事实是,在每个基本操作(例如NURBS类的两个曲面的交集)背后都有一个计算算法,该算法的实现和调试是一项非常费力的任务,需要对计算数学设备的无懈可击的知识和学科领域的专业知识。

并非所有CAD开发人员(尤其是CAE和CAM)都准备好在底层技术上进行如此大量的投资,因此他们中的大多数人更愿意从第三方制造商(有时从他们的直接竞争对手那里)获得现成的3D核心的许可),定期向核心开发公司付款(通常包括为每份售出的最终产品支付一定金额)。作为回报,他们有机会使用已经在其他系统中“测试过”的内核,因此它具有丰富的功能和高度的可靠性。最后,通过采用现成的内核,CAD开发人员将能够快速将其软件产品推向市场。有时这个因素是决定性的——如果你的产品发布晚了一两年,市场可能会被竞争对手占领。最引人注目的例子是MCAD(机械CAD)SolidWorks的发布,它成为世界上第一个Windows平台的参数化实体建模系统,并且在销售许可数量方面仍然是MCAD(机械工程)行业的绝对领导者.这条道路随后被许多其他成功系统的开发人员遵循,包括俄罗斯公司ADEM和TopSystems。

基于Parasolid内核的T-FLEXCAD(顶级系统)

然而,在CAD世界中,有少数公司优先考虑完全控制源代码的可能性、及时修复错误和增强功能、快速移植到新平台,因此准备为此付出代价。自己的资源。该集团包括收入数十亿美元的CAD市场的四大领导者(达索、Autodesk、西门子和PTC)和俄罗斯开发商ASCON以及华云三维:CrownCAD。

KOMPAS-3D(C3D),基于自己的内核创建

CrownCD(DGM),基于自己的内核创建

下表列出了相当完整的开发人员示例列表,包括第一类和第二类。它表明,获得许可最多的核心是ACIS(由DassaultSystemes的子公司Spatial开发和支持)和Parasolid(SiemensPLMSoftware)。

目前,有两种主要的几何内核可供许可:Spatial的ACIS(由达索所有)和西门子的Parasolid。这两个模型都是在年左右建立的,并在90年代被CAD公司广泛采用。Parasolid是达索SolidWorks、西门子NX和SolidEdge、BentleyMicroStation和NemetschekVectorworks的核心建模引擎。ACIS用于多种产品中。它是AutoCAD中的核心建模工具,目前仍用于各种产品,包括SpaceClaim、Bricscad和Kubotek。在开发Inventor时,Autodesk正在开发其ShapeManager(ASM)内核,作为ACIS7.0的分支。Autodesk现在在ASM上构建其产品。有趣的是,由于使用ACIS开发ASM,Autodesk被达索起诉违反合同。达索最终败诉,因为Autodesk与Spatial的原始交易授予Autodesk进行更改的权利。

达索希望看到CGM成为授权抽奖的主要竞争者,达索也明确表示希望将SolidWorks视为CGM产品,但它必须谨慎行事,以保持对其庞大的SolidWorks用户群的支持。与此同时,大公司正表现出对专利发动机的偏好。PTC拥有自己的Granite引擎,Nemetschek也在内部构建了自己的大部分技术。

这并不是说这些新的几何内核实际上都是新的。达索的CGM和阿斯康的C3D开发始于90年代中期。Autodesk的ShapeManager于年开发。

CPDA和CIMdata的分析员肯·维斯普里尔(KenVersprille)一直深入于所谓的内核战争。作为CAD先锋Computervision的研发主管,他负责监督CADD的开发,CADD现在是PTC产品。Versprille今天在圣彼得堡的C3D发布会上谈到了geometry内核的市场。他说,一些小型独立公司和组织已经构建了几何内核,但他指出,随着新的几何内核的出现,CAD世界正在进入一个新时代。Versprille列举了几个有助于推动新引擎需求的因素。CAD供应商面临着利用并行计算的挑战。对直接制造方法(包括CAM、激光切割、3D打印和FEA)的兴趣激增,也促使人们对创建用于制造的3D模型的新方法产生兴趣。Versprille还对CAD程序适应点云数据的能力感兴趣。他认为这是未来CAD系统的一项重要功能。

在国内有一个误传,就是LEDASLGS约束求解器并没有用于KOMPAS-3D,ASCON公司有自己的组件部门,自主的C3D内核和约束求解器,只是选项产品VDM(变分建模)用的是LGS组件,一般发行版不提供。

华云三维:CrownCAD内核DGM由梅敬成博士团队年开发。

当然,在开发新的3D核心时,需要依靠前人的经验,才能从这次经验中汲取精华,不再重蹈覆辙。

2.ASCONC3D内核

ASCON是设计和数据管理工程软件的领先开发商,推出了几何核心C3D-创建设计系统(CAD)及其应用程序、计算系统(CAE)、为CNC机器准备控制程序的系统(CAM)的关键组件),工艺流程建模。

自年以来,ASCON一直在开发自己的几何内核。第一个基于它的计算机辅助设计系统KOMPAS-3D5.9于年发布。从那时起,核心一直在不断发展,并已达到足以将其作为独立产品推向PLM市场的水平。

C3D内核的潜在用户包括需要处理3D模型和2D图形的CAD/CAM/CAE系统和应用程序的开发人员。其中有供应商公司和大型工业公司的部门,它们为内部需求创建软件。对于第三方开发人员,使用ASCON内核将允许扩展其产品的功能,提高其性能和可靠性;基于现有2D系统快速创建3D建模器;降低自身开发成本。

我们称几何内核为构建真实和虚构对象的数值模型的系统部分。我们的内核是一个单独的模块。它由五组对象和算法组成:第一组-基本对象和算法,包括向量、矩阵、点、曲线、曲面、用于构建投影、交集、共轭的算法。

第二组是用于构造物体的对象和算法。

第三组-用于构建三角测量的对象和算法,计算模型的惯性特征,检查其元素的碰撞,构建模型的关联投影。

第四组-几何约束的对象和算法,在几何模型的元素之间建立变分关系。

第五组-提供与其他系统数据交换的转换器的对象和算法。

核心有什么特点?什么标准可以用来比较它们?

首先,几何内核的特点是功能性,即提供给几何建模系统的一组功能、运算、计算等能力。其其他特点是操作的速度和可靠性。整个系统的质量很大程度上取决于几何内核。

对于我们这些开发人员来说,几何内核的结构性、算法的简单性和清晰度非常重要。这些品质使您能够以最少的时间和其他资源投资来开发核心。

“曲面建模”和“实体建模”介绍:

“曲面建模”和“实体建模”这两个术语的出现是由于建立模型的顺序和方法的一些特点。

在曲面建模中,会根据需要创建和修改曲面,这些曲面描述了建模对象的各个元素。然后,通过缝合,从产生的表面组装模型。曲面建模使您可以专注于复杂的形状。在表面建模中,动作是在一组点上执行的,这些点描述了被建模对象的表面。

在实体建模中,工作是通过位于建模对象表面和内部的许多点来完成的。模型构建过程首先创建具有简单形状的模型。然后根据需要更改模型。

几何建模也使用类似于雕刻的建模过程。为此,可以使用任何准备阶段的模型:简单形式的毛坯或几乎完成的模型。这种可能性在我们的系统中尚未实现。已经为此奠定了基础。

(1)谁需要几何核?

几何核心是应用程序解决方案开发人员的软件组件。它是一种数学方法的软件实现,用于构建真实和虚构物体的几何形状的数值模型,以及控制这些模型的数学方法。数值模型用于执行建模对象的设计(CAD)、计算(CAE)和生产准备(CAM)的系统中。

应用解决方案的每个开发人员都面临着一个选择:是自己编写必要的数学算法还是购买第三方组件。每种方法都有其优点和缺点。

开发人员从使用第三方内核中得到什么?最重要的是能够在不解决几何建模问题的情况下快速增加产品的功能,而是解决应用程序的应用问题。第二个重点是降低产品开发成本,因为数学算法是计算机辅助设计系统中最复杂、最耗时的部分。

几何内核的主要消费者是CAD开发人员和3D封装制造商。但不要忘记内核对教育机构也很有用!特别是,它将帮助教授学生描述几何、计算机图形学、几何建模和计算几何等课程,以培养未来的数学家-程序员和CAD开发人员。对于需要3D几何模型的研究和开发项目,您可以直接使用内核(而不是CAD系统API)。此外,几何建模的核心既可用于编写大学专用软件,也可用于在大学积极创建的小型创新企业的框架内创建商业软件。

顺便说一下,关于企业。如果一个组织有复杂的、高度专业化的任务,而市场上没有软件(或由于某种原因无法使用),那么许可内核将允许您自己创建此类软件。当然,企业的员工应该包括具有必要经验和知识的程序员和分析师。

如您所见,几何内核有很多任务,但内核本身很少。成熟的商业几何建模内核已由世界上的各个团队开发,在俄罗斯,ASCON是唯一成功的公司。现在是谈论我们的C3D的时候了。

几何建模包的典型功能是提供一组用于创建线框、曲面、实体或位图建模应用程序的编程接口(数据结构、函数和类)。通常相关的接口被分组为模块,其中有:

基本类型和操作;

边界表示拓扑建模;

几何对象和对它们的操作;

布尔和表面编辑操作;

隐藏线去除和渲染;

用于读取和写入流行格式的几何文件的模块。

(2)什么是C3D?

上世纪末,俄罗斯几乎所有的CAD系统都有自己的几何内核。然而,在功能方面,这些内核落后于它们的世界同行。此外,系统本身并未进入商业状态。为了使国内系统与世界同类系统竞争,它们需要改进。由于几何内核的开发难度较大,国内很多CAD厂商都离开了自己的开发,购买了现成的几何内核。ASCON采取了不同的行动:它决定创建自己的核心。因此,KOMPAS-3D系统是目前国内唯一成功与世界同类产品竞争并以自身几何核心运行的CAD系统。

作为创建三维建模系统KOMPAS-3D工作的一部分,ASCON于年决定编写自己的几何内核,该系统于年进行商业发布。直到年,核心才成为商业产品,仅用作其自己的CADKOMPAS-3D的一部分。这些年来它一直在改进,确保了KOMPAS-3D的功能开发。让我们列出主要的里程碑:

年:创建了足够数量的三维实体建模算法以用于CAD;

年:实现几何约束求解器和主要交换数据格式的转换器;

:创建从三维模型构建关联视图的机制;

年:曲面造型基础的出现;

年:描述用于创建表体元素的数学算法;

:多体建模的实现;

:支持线框模型;

年:实现用于建模机构的运动学耦合;

:支持几何模型的属性;

年:出现成熟的曲面建模;

年:实现跨平台;

年:实施直接建模元素。

年:Englishdocumentationlocalized;supportfortestapplicationsadded

年:Modelconversiontotextformatsappeared

年Objectsthreadsafetyprovided

年:Developmentenvironmentsextended,theC3DVisionvisualizationenginereleased

年:FreeC3DViewerforreading3DmodelsfromfilesinstandardCADdataformatsreleased

年:AddingsupportfornewfileformatsJT,grdecltoC3DConverter

年:C3DB-ShaperforconvertingpolygonalmeshmodelstoB-repsolidsreleased

17年来,开发团队一直在开发几何内核:改进其架构、创建新功能、对以前实施的方法进行现代化改造。如果没有基于KOMPAS-3D在数万个工作场所的实际应用的独特体验,就不可能谈论将C3D发布到免费商业导航中的可能性。没有实践经验,根本不可能从零开始打造具有竞争力的核心。

作为软件开发工具,C3DToolkit执行三维建模、三维约束求解、多边形网格到B-rep转换、三维可视化和三维文件转换。它包括五个模块:

(1)C3DModeler构建几何模型,生成模型的平面投影,执行三角剖分,计算模型的惯性特征,并确定模型元素之间是否发生碰撞;

ODA的C3DModeler通过开放设计联盟的ODA标准“OdDb3DSolid”API实现高级3D建模操作;

(2)C3D解算器在几何模型的元素之间建立连接,并考虑正在编辑的模型的几何约束;

(3)C3DB-Shaper将多边形模型转换为边界表示(B-rep)实体

(4)C3DVision使用数学仪器和软件以及工作站硬件控制三维模型的渲染质量;

(5)C3D转换器以各种标准交换格式读取和写入几何模型

所有这些模块现在不仅可供ASCON内的开发团队使用,而且可供所有人使用。

C3D内核由尼古拉·戈洛瓦诺夫领导的阿斯康团队开发。它是用C++开发的,并在VisualStudio中编写。年,Ascon的Kompas3D内核开始工作。如今,阿斯康表示,他们拥有名用户,其中大部分在俄罗斯。显然,C3D作为构建Kompas3D补充产品和附加组件的工具已经有了坚实的基础。C3D业务团队由OlegZykov领导。

阿斯康对其技术和俄罗斯数学家向世界提供更好的几何内核的能力深感自豪。Golovanov说,内核的速度和效率会影响基于它构建的产品的性能。

Zykov说,C3D的产品开发正在进行中,新的改进即将到来。例如,C3D有志于更好地创建一个能够利用现代处理器并行性的建模引擎。到目前为止,遗留CAD在这方面远远落后。此外,正在开发C3D,以更好地使产品能够进行直接建模以及基于约束的建模。

在2D和3D两种方面都能解决问题。它与Parasolid、ACIS或其他内核一样好。

在俄罗斯的活动中,戈洛瓦诺夫告诉观众,C3D内核非常重要,因为它是目前功能最全的建模工具。除三维建模器外,该引擎还包括二维绘图和草图绘制、三维曲面和实体建模、参数化约束以及到大多数主要格式的转换。

戈洛瓦诺夫说,该团队正在继续对C3D建模器进行改进。特别是,他说,他们正专注于内核的直接建模功能,以实现混合工作流。他们也在改进它以导入STL和VRML。目前,C3D读取STEP、IGES、X_T(Parasolid)和SAT(ACIS),并写入STEP、IGES、X_T(Parasolid)、SAT(ACIS)、STL和VRML。C3D支持Windows32位和64位以及Linux64位。这家新兴公司的员工将C3D视为小型公司新一代设计工具的推动者。除了三个月的免费评估期外,他们还提供慷慨的支持。他们有早期顾客。除了用于其母公司的Kompas3D产品外,俄罗斯EspritCAM分销商ZAO“LOCNITI”也在使用C3D,并将其作为Bazis中心的家具设计工具。

C3DModeler执行构建二维草图和全尺寸三维模型所需的所有几何计算。它使用边界表示(b-rep)方法定义形状并基于三维实体构建几何模型。对于合成三维实体,它使用曲面和曲线。在创建更复杂的部件之前,它会将生成的三维实体编组为构建块。

除了b-Rep之外,C3DModeler还支持几何模型的多边形表示。内核通过三角剖分建立多边形三维模型。边界表示和多边形模型的总体结构完全相同,但多边形模型通常由近似的板形和多边形形状的项组成,因此便于进行计算和生成可视化效果。

当实体和框架构建到几何模型中时,它们会生成单独的构建日志。系统记录所有采用的方法、采取的顺序和输入的数据。日志使以后编辑几何图形,然后使用新参数重建模型变得更容易。有关对象几何体(以曲面、曲线和点的形式)的详细信息保存在模型对象的拓扑元素中,如面、边和顶点。每个对象的项或对象作为一个整体的附加信息可以以属性的形式保存在它们内部。

C3D的团队包括经验丰富的专家和年轻员工。他们是莫斯科国立大学莫斯科物理技术学院的毕业生。罗蒙诺索夫和其他大学。球队的“骨干”由亚历山大·马克西缅科、安德烈·彭金、尤里·科祖林组成。他们每个人都负责一个重要的工作领域。我们一直在寻找能够开发新方向的有才华的专家。

从事内核工作的专家受过什么样的教育?去哪里学习才能为你工作?

NikolaiNikolaevichGolovanov:几何建模。它借鉴了数学领域,如微分几何和数值方法。对于想法的实际实施,需要编程。

具有高等技术教育、了解C++编程语言、数值方法和高等数学知识的专家从事几何核工作。所列知识可以在任何高等技术教育机构获得。专家在数值方法的软件实现方面具有经验以及应用高等数学知识解决实际问题的能力对我们来说很重要。您可以在大学学习期间或毕业后工作期间获得指定的经验和技能。

核心开发:NikolaiNikolaevichGolovanov

尼古拉·戈洛瓦诺夫出生在柏林,他的父亲是一名军官。像所有军人家庭一样,他们经常搬家:Davlekanovo、Patrikeevo、Borisoglebsk、Balashov。尼古拉毕业于波兰斯普罗塔瓦市的高中。我进入了MVTUim的机械工程学院。Bauman并获得了太空运载火箭设计师的专长。然后他来到了机械工程设计局(Kolomna),ASCONAlexanderGolikov和TatyanaYankina的未来创始人在那里工作,这里成为了KOMPAS系统的祖地。尼古拉·戈洛瓦诺夫处理力量:他准备实验,进行计算,包括使用计算机。当时,许多设计局和研究机构正在开发使企业工作自动化的应用程序。在KBM,系统开发允许使用计算机进行各种工程计算和绘制图纸。除了其他工作外,NikolaiNikolaevich还开发了一个分析壳结构强度和稳定性的程序。

年,AlexanderGolikov和TatyanaYankina离开了KBM,创建了ASCON公司。尽管这一切都是从电子绘图板开始的,但即便如此,他们还是构想了一个三维参数化建模系统,该系统将允许以三维模型而不是平面绘图的形式来确定设计理念。ASCON的创始人与NikolaiGolovanov分享了他们的想法,并于年在ASCON找到了一份固定工作。

当时,固态和表面建模系统已经在工作站上运行。KOMPAS开发人员梦想在一台普通的个人计算机上创建类似甚至更好的东西。三个人在ASCON参与了数学问题-YuriPokidov、VladimirZorin和NikolaiGolovanov。今天,尼古拉·尼古拉耶维奇是三人中唯一的一位。VladimirZorin离开俄罗斯,在PTC(专业/工程师开发人员)工作,然后转到SolidWorks。几年前,尤里·波基多夫(YuriPokidov)因重病去世。

NikolayGolovanov和15年前一样,继续推导公式并开发算法,用于内核的开发和改进。与他一起工作的年轻专家-新一代的数学家。他们共同创造了知识填充物,即KOMPAS-3D系统的大脑。

(3)C3D解算器

C3DSolver是一个强大的2D约束求解器,用于2D绘图和3D草图绘制,以及用于装配和运动分析的3D约束求解器。

能够诊断覆盖的约束系统。在KOMPAS-3D中,此功能以橙色突出显示“不必要”限制的形式实现。

NURBS曲线的参数化得到了改进:约束系统的可解性得到了改进,NURBS与其他曲线的多次接触成为可能。对末端情况给予了特别

1
查看完整版本: 俄罗斯三维建模引擎C3D内核