首页/文章/ 详情

俄罗斯三维建模内核 RGK:功能、优势和集成

1年前浏览11969

    计算机辅助绘图系统创建于 1960 年代,以取代“库尔曼”绘图板(十八世纪工业革命后世界各地的建筑师和工程师使用的传统绘图工具)。如今,计算机辅助制图已从常规的自动化辅助工具演变为工业各个领域创新的关键工具——计算机辅助设计系统。


   现代建筑师不是绘制楼层布局和外墙,而是使用 CAD 来开发建筑物的信息 (3D) 模型。室内设计师与客户讨论办公室或公寓的外观,在虚拟 3D 模型中移动,融入真实建筑的环境中。艺术家可以在复杂的 3D 表面而不是纸张上创建草图。工业设计师在 3D 打印机上打印一个现成的模型,并将其转发给人体工程学专家进行进一步分析。在几秒钟内,设计工程师就能够定位和修改包含数十万个组件的组件中的故障块,这是通过对负载下的产品行为进行自动模拟而确定的。规划工程师可以迅速为数控机床组装一个无错误的控制程序,能够从未完成的产品中切割出具有非常复杂的表面几何形状的零件,理想地设计为具有所需的功能质量。负责产品组装和维修的工人使用 3D 模型作为参考——以所需的角度和近似值查看特定操作的演示。这只是当今可以使用 CAD 解决的任务的一小部分。3D 模型在这里起着关键作用。

   早在 1970 年代,世界各地的科学家与军方和工业界的代表合作,开始研究在计算机上表示 3D 数据的各种方法,以方便后续的工作。直到最近,3D 模型只存在于设计师的头脑中,这在产品设计、制造、操作和处置方面产生了许多问题和错误。近年来积累的领先公司的经验表明,在产品生命周期的各个阶段使用产品的 3D 数字模型可以降低设计成本,加速产品发布,降低 制造成本,并能够及时引入变更,建议由用户,对产品设计和对环境的有害影响减少到必要的最低限度。最终,


   迄今为止,3D 建模已有 30 多年的历史。绝不是所有的想法都变成了富有成效的。并非所有开发 3D 建模工具的公司都能在市场动荡中幸存下来。然而,最好的经验似乎是为称为 3D 建模内核的软件组件积累的,它现在构成了几乎所有 CAD(以及 CAE 和 CAM)应用程序的基础。工程软件的开发人员要么设计、编码并独立支持此类组件,要么从第三方组件提供商处获得许可。3D 内核构成了任何现代 CAD“构建”的基础。其他一切都取决于这个基础——各种工具的能力、它们的速度性能、容错能力,甚至整体系统智能。


  从程序员的角度来看,几何内核是一个函数/类库,用于对几何对象(点/区间/弧/曲线、一块表面、实体)进行建模,改变它们的形状和大小,在其上创建新对象在他们的基础上,在计算机屏幕上可视化模型并与其他程序交换 3D 数据。内核函数的列表可以用一句话来压缩,但它们的实现却被拉长了几十甚至几百人年。问题是在每个基本操作(如跨越两个 NURBS 曲面)背后都有一个计算算法,实现和调整这是一项相当劳动密集型的任务,需要完美地掌握计算数学的工具以及特定的专业知识主题。



   并非所有 CAD 开发人员(尤其是 CAE 和 CAM)都准备在基础技术上进行如此大量的投资,因此大多数人更愿意从第三方供应商(有时是他们的直接竞争对手)那里获得现成的 3D 内核的许可,并定期付款给开发内核的公司(通常是每个销售的最终产品副本的特定金额)。作为回报,他们能够使用已经在其他系统中尝试过的内核,因此具有丰富的功能并且非常可靠。最后,通过获得现成的内核,CAD 开发人员将能够更快地启动其软件产品。有时,这个因素是主导因素——如果一家公司推迟发布产品一两年,市场可能会被竞争对手占领。一个突出的例子是 MCAD(机械 CAD)系统 SolidWorks,这是世界上第一个适用于 Windows 的参数化实体建模系统,并且仍然是 MCAD 中销售许可证数量的绝对领导者。后来许多其他成功系统的开发人员探索了同样的途径,包括俄罗斯公司 ADEM 和 Top Systems。




Ascon 基于自己的 3D 内核的 KOMPAS-3D


2021主流CAD/CAM/CAE/AEC所用几何引擎具体是什么

SoftwareVendorDomain3D-kernel
4MCAD IntelliCAD4M S.A., GreeceCAD, AECOpen CASCADE Technology
AdamsMSC Software, USACAEParasolid
ADEMADEM, Russia-Israel-GermanyCAD, CAM, CAPPACIS
ADINA ModelerADINA R&D Inc., USACAEParasolid & Open CASCADE Technology
Alibre Design3D Systems, USAMCADACIS
AllplanNemetschek AG, GermanyAEC/BIMSMLib
AMPSolidAMPS Technologies, USACAEACIS
ANSYSANSYS Inc., USACAEACIS & Parasolid
APM StudioНТЦ АПМ, RussiaMCADOwn kernel (APM Engine)
ArchiCADGraphisoft, HungaryAEC/BIMOwn kernel
ARESGraebert, GermanyCADACIS
Ashlar-Vellum Cobalt, Xenon, ArgonAshlar-Vellum, USAMCADACIS
AutoCADAutodesk, USACAD, AEC, GISOwn kernel (ASM) compatible with ACIS
Autodesk InventorAutodesk, USAMCADOwn kernel (ASM) compatible with ACIS
Autodesk MoldflowAutodesk, USACAEParasolid
Autodesk Revit ArchitectureAutodesk, USAAEC/BIMOwn kernel (ASM) compatible with ACIS
bonzai3dAutoDesSys, USACADown kernel + ACIS
BricscadBricsys NV, BelgiumAEC, MCADACIS
BtoCADYuanFang Software Co., Ltd., ChinaCADACIS
CADopiaCADopia Inc., USACADACIS
CATIADassault Systemes, FranceCAD/CAM/CAE, AECCGM
CimatronCimatron Limited, IsraelCAMACIS
CollabCADNational Informatics Centre, IndiaCAD/CAMOpen CASCADE Technology
Creo (former Pro/Engineer)Parametric Technology, USAMCADGRANITE
Creo Elements/Direct Modeling (former CoCreate)Parametric Technology, USACADACIS
EdgecamPlanit Software, UKCAMParasolid & GRANITE
ESPRITDP Technology Corp., USACAMParasolid
form-ZAutoDesSys, USACADown kernel + ACIS
FreeCADOpen projectCADOpen CASCADE Technology
GibbsCAMCimatron, IsraelCAD/CAMParasolid & GRANITE
GstarCADSuzhou Gstarsoft Co., Ltd, ChinaCADACIS
IRONCADIronCAD LLC, USAMCADACIS & Parasolid
KeyCreatorKubotek USA Inc., Japan-USACADACIS
KOMPAS-3DASCON, RussiaMCAD, AECOwn kernel(C3D)
MastercamCNC Software, USACAD/CAMACIS
MasterworkTecnos G.A., ItalyCAMOpen CASCADE Technology
MicroStationBentley Systems, USAAECParasolid (previous versions used ACIS)
Moment of InspirationTriple Squid Software Design, USACADSOLIDS++
NXSiemens PLM Software, Germany-USACAD/CAM/CAEParasolid
PatranMSC Software, USACAEParasolid
Power NURBSIdeate Inc., USACADSOLIDS++
PowerSHAPEDelcam plc, UKCAD/CAMParasolid
progeCADprogeCAD Srl Uninominale, ItalyCADACIS
RadanPlanit, UKCAD/CAMACIS
RhinocerosRobert McNeel and Associates, USACADSOLIDS++ (particular modules)
Shark LTEncore, USACADACIS
SmartCAMSmartCAMcnc, USACAMACIS
Solid EdgeSiemens PLM Software, Germany-USAMCADParasolid (previous versions used ACIS)
SolidWorksDassault Systemes, France-USAMCADParasolid
SpaceClaimSpaceClaim Corp., USAMCADACIS
STAR-CCM+CD-adapco, UK-USACAEParasolid
StruCadAceCad Software, UKAEC/BIMOwn kernel
T-FLEXTop Systems, RussiaMCADParasolid
ThinkDesignVersata, USAMCADOwn kernel
TopSolidMissler Software, FranceCAD/CAMParasolid
TurboCADIMSI/design, USAAEC, MCADACIS
VectorworksNemetschek, GermanyAECParasolid (previous versions used SMLib)
ViaCAD 2D/3DEncore, USACADACIS




ZW3D (former VX CAD/CAM)ZWCAD Software, ChinaMCADOwn kernel (VX Overdrive)


CAD/CAM/CAE
SINOVATION华天软件CAD/CAMCRUX IV



  然而,在 CAD 世界中,很少有公司专注于实现对源代码的完全控制、及时纠错和构建功能、快速转移到新平台的可能性,因此准备使用自己的资源为达到这个。该集团由收入达数十亿的 CAD 市场的四大领导者(达索、Autodesk、西门子和 PTC)以及少数几家小公司(包括俄罗斯领先的 CAD 供应商 ASCON)组成。


从表中可以看出,获得许可最多的内核是 ACIS(由 Dassault Systemes 的子公司 Spatial 开发和支持)和 Parasolid(Siemens PLM Software)。然而,很快,3D 内核市场上就会出现一个新的参与者。



   三维建模内核是设计用于在计算机上以 3D 形式表示和精确建模物理对象的软件组件。从内核开始,开发最终用户应用程序,例如 CAD(计算机辅助设计)、CAM(计算机辅助制造)和 CAE(计算机辅助工程),以及工程领域的许多其他产品。所有这些系统都需要精确、高效的工具来使用软件模型来创建、存储和分析 3D 数据,执行专门的计算等等。


  从软件的历史中可以清楚地看出,创建工业级几何建模内核是开发工程软件中最困难的任务之一。找到合适的解决方案结合了数学、计算机系统架构、软件设计和 CAD 专业知识的顶级能力。目前全球市场上只有少数内核供应商;CAD 市场和相关产品的很大一部分在商业和技术上都依赖于它们。


   自 2007 年以来,俄罗斯联邦政府一直在实施“国家技术基地”联邦专项计划,旨在创造最先进的新技术和设备,将新开发的技术引入生产中,将新技术商业化,奠定基础。为开发先进的科学密集型产品和改善俄罗斯的环境条件奠定科学技术基础。在该计划的框架下,工业和贸易部和俄罗斯联邦宣布了一项关于“开发俄罗斯许可软件——作为计算机辅助计算机系统基础的 3D 建模的数学内核”的研发工作招标。复杂工程产品的设计”。作为新一代计算机设计系统的基础,逆向工程、生产计划和绘制技术文件,这个内核将促进俄罗斯工业创新产品的开发,这将在全球市场上具有竞争力,成为国家工程能力的一部分。中标的是“STANKIN”莫斯科国立技术大学——联邦国家高等教育预算教育机构,LEDAS成为分包商之一。



  开发新的 3D 内核重要的是要依靠前人的经验来采纳他们的最佳成果并避免他们的错误。


   本文将 RGK(俄罗斯几何内核)描述为由俄罗斯联邦工业和贸易部资助的项目的一部分,该项目旨在建立对俄罗斯高科技行业具有重要意义的独立组件基础。该项目由 STANKIN Moscow(国立技术大学)监督,并由几个俄罗斯开发人员和专家小组组成的综合团队执行。有关该项目及其参与者的更多信息,请参见以下出版物 [2, 3]。RGK内核的工作始于2011年;该产品目前处于积极的内部测试阶段。同时,客户(工贸部)正在考虑支持、实施、许可、开发和应用程序构建等问题。


 RGK 俄罗斯几何内核由 STANKIN 莫斯科国立技术大学领导的开发团队领导,同时聘请了几家俄罗斯 CAD 软件公司和学术团队来承担他们最能胜任的项目部分,特别注意制定像这样的复杂计算机系统背后的方法和架构。



(1)莫斯科国立技术大学

 STANKIN Moscow State Technological University

   莫斯科模具加工学院(也称为 STANKIN 莫斯科国立技术大学)成立于 1930 年,旨在支持当时最重要的经济部门之一——工具制造行业。通过培训高素质的专业人士,它帮助开发了机床设备、新技术、控制系统以及任何国家的国民财富的关键组成部分之一——工程制造设施的全面计算机化。


 今天,斯坦金不仅仅是一个教育机构;它还作为研发中心和生产设施,将研究、学术和生产中心网络整合到国家工程中心。


(2)Top Systems 


   俄罗斯莫斯科的 Top Systems 开发和发布用于计算机辅助工程以及生产和管理规划的完全集成的软件解决方案。其产品包括提供信息模型和产品生命周期管理的 T-FLEX CAD/CAM/CAE/CAPP/PDM 软件包。它处理所有任务,从客户要求开始,一直到测试和调试。Top Systems 的软件产品用于各种行业,包括机械 CAD、工具制造、航空航天、汽车和造船,以及建筑和家具生产。


   Top Systems 首席技术官 Sergey Kozlov 指出:“我们项目最重要的成就之一是在紧迫的时间内将几何建模和计算几何领域的大量有能力的公司和个人专家的努力结合起来。” . “从某种意义上说,这个重要的项目及其成果是一项独特的成就,无疑具有良好的前景。


 

  Top Systems 公司执行的最重要的实际任务是开发由现代多核平台和图形计算设备支持的 3D 内核的通用架构,”Kozlov 先生继续说道。“结果将是能够开发在许多平台和操作系统上运行的最终用户应用程序。作为项目架构的开发者,我们公司在选择项目参与者提出的各种技术解决方案时,扮演了分析师、协同源代码工作的协调者和仲裁者的角色。Top Systems公司将与 LEDAS 一起在 COFES Russia 展示俄罗斯新 3D 内核的优势。”


(3)LEDAS


   LEDAS Ltd. 成立于 1999 年,是一家私营的、员工所有的俄罗斯软件公司。LEDAS 以开发基于约束的设计工具和相应的技术组件而闻名。该公司为 CAD、CAM、CAE 和 PDM 市场提供范围广泛的高质量软件开发和咨询服务。LEDAS在世界著名的新西伯利亚研究中心运营,并与新西伯利亚国立大学有着密切的联系。


  LEDAS 在与国际市场合作方面拥有十多年的经验,包括开发自己的高科技产品(LGS 几何求解器)以及完成受全球 CAD 市场领导者委托的高科技项目,”Nikolay Snytnikov 解释说, LEDAS 首席运营官。“在开发这款新一代俄罗斯 3D 建模内核时,  LEDAS 正在利用我们的知识和经验来解决计算几何中的复杂任务。例如,  LEDAS 可以处理计算任意 3D 表面和实体的交点、检测碰撞、计算距离以及使用 NURBS 对象实现高速性能。”


   之所以选择 LEDAS,是因为它在为 CAD 开发关键软件组件方面拥有 13 年的经验,其中包括为工程软件市场的全球领导者开展的项目。这些项目包括开发用于基于知识的工程的最终用户工具的区间数学求解器;创建几何约束求解器及其在参数化绘图、装配设计、动画、运动学分析和直接建模中的应用;建立将多边形网格转换为细分曲面的方法,以及在平面上展开 3D 网格;计算 3D 对象之间的距离并执行实时碰撞检测;开发基于特征的 CAD 数据转换。


  LEDAS 成功完成的项目包括开发用于基于知识的工程最终用户工具的区间数学求解器;创建几何约束求解器及其在参数化绘图、装配设计、动画、运动学分析和直接建模中的应用;建立将多边形网格转换为细分曲面的方法,以及在平面上展开 3D 网格;计算 3D 对象之间的距离并执行实时碰撞检测;开发基于特征的 CAD 数据转换;并发明了变分直接建模。有趣的是,在几乎所有这些领域积累的知识和经验都被证明对“RGK 项目”的工作很有用。LEDAS 完成的 CAD 数学软件组件开发项目的总体范围达到数百人/年。

   前尝试创建3D建模内核的简要历史,并解释在新的俄罗斯内核中会有什么不同。

   C3D内核并不是俄罗斯正在建造的唯一内核。政府还授权构建俄罗斯几何内核RGK,它是一个B-rep(边界表示)建模工具,也支持NURBS曲线和曲面。RGK的描述称,它针对复杂操作进行了优化,包括使用为内核设计的特殊类型的曲线和曲面,因此,它更快、更精确。RGK由莫斯科大学的俄罗斯数学家开发,与C3D modeler一样,它支持多线程和GPU加速。它基于OpenCL作为GPU支持库。RGK支持Windows 32位和64位以及Linux平台。RGK内核的重点是并行性。开发人员表示,RGK可以使用多种方法创建模型,并支持实体、曲面和线框建模。应用程序可以同时处理同一模型中不同类型的数据。内核还支持模型的可视化技术,包括模型细分和网格生成器函数。当然,这是对GPU的支持变得重要的另一个领域。

   俄罗斯莫斯科和新西伯利亚:2013 年 4 月 2 日 – STANKIN 莫斯科国立技术大学及其承包商 Top Systems 和 LEDAS,宣布完成俄罗斯制造 3D 几何建模内核 RGK 的重要里程碑。自研发项目开始以来,首次组装了该软件的全功能版本。


  根据普遍的看法,3D内核开发需要最先进的技能,世界上可能只有三四个研发中心具备必要的知识。


  诚然,开发如此复杂的科学密集型软件需要大量高素质的计算数学、几何建模、软件开发专家以及设计和规划工程师的深入参与,他们能够胜任地指定需求并评估实现的功能.


  俄罗斯有几所根植于苏联时期的研究和工程学院,可以与世界领先的研发中心抗衡。例如,俄罗斯公司ASCON、Top Systems、LEDAS、TESIS等在某种程度上是苏联研究中心的继承者的成就,清楚地证明俄罗斯拥有世界一流的科学密集型CAD/CAM开发专家和专家/CAE 应用程序。俄罗斯还有几个非常强大的大学中心,提供符合国际标准的数学和软件工程教育和培训。顺便说一句,像RGK这样的研究强度、技术效率和系统完整性水平的项目提供了培养高技能专家的独特机会.


   几乎所有俄罗斯团队在营销方面仍然存在某些问题,这阻碍了他们在全球市场上充分建立自己的地位,但没有人怀疑这些团队的研发能力:他们当然可以在任何科学密集型解决方案上成功地与全球供应商竞争,包括几何核。事实上,在俄罗斯不断开设和扩大研发部门并长期签订最重要和最复杂的合同的最大的外国 IT 公司并没有质疑俄罗斯开发商的能力。


   RGK 是由一组高科技软件组件组成的三维几何建模内核。该软件正在作为提高俄罗斯国家工程能力计划的一部分进行开发。俄罗斯工业有必要创造在全球市场上具有竞争力的创新产品。它将成为在机械和建筑设计、制造、工程分析和产品数据管理领域执行设计工作的计算机应用程序的基础。









这里是对论文的简要描述。


今天最流行的所有内核都是在 15-30 年前创建的。在这段时间里,它们被开发、增强和调整,它们的程序架构和实现不能完全支持不断涌现的新的软件能力和硬件技术。2011年底开始研发RGK内核;在进行项目时,我们尝试使用现代、有效的解决方案以及一些新的机制和可能性,这些在论文的第一部分中有所描述。


几何内核本质上是一种技术组件,因此通过集成在其上构建了众多不同的应用程序。第二部分概述了具有应用程序的集成 RGK 内核的原理和交付。


现代几何内核的基础集成了由典型应用程序的要求确定的稳定功能。第三节介绍了任何现代几何内核必须支持的 RGK 函数。


基本内核函数(大多数应用程序所追求的)和内核 shell 之间的边界是暂定的,内核shell 支持几个专门但稳定的应用程序和过程类。一些内核供应商坚持认为此类壳(例如几何解算器或数据转换器)是内核的组成部分,而其他人则认为可配置性是他们解决方案的优势。一种或另一种方式,对标准技术操作的流行应用程序类别的支持必须与现代几何内核相关联。第四部分描述了 RGK 的功能。


如前所述,几何内核的用户是系统应用程序的开发人员,而不是最终用户。因此,内核具有特定的包装。第五部分描述了 RGK 的包装。


对理解本文有用的出版物参考在最后一节,第六节中给出。


一、现代建筑,创新解决方案


   在 RGK 内核中,使用边界表示 (B-rep) 来描述 3D 模型。但必要时使用其他描述。例如,为了优化内核函数的速度,并确保模型的精确存储和计算,使用规范对象和 NURBS 曲线和曲面。为了解决与复杂操作相关的任务(例如复杂情况下的孔覆盖曲面、N 侧补丁和混合曲面),内核使用了特殊类型的曲线和曲面。在许多情况下,结合这些解决方案可以加速核函数并使它们更精确。


   为了开发架构,使用了一套完整的高级工具和现代编码、调试、代码优化技术以及描述模型对象交互的可靠方法。让我们更详细地描述一些首次在 RGK 项目中完全实施并因此被认为是最佳实践的解决方案。


多线程


   计算机体系结构的现代趋势自然影响了内核的软件体系结构。在多核计算机上进行并行计算被选为提高计算速度的主要方法之一。当发生许多几何和拓扑数据操作时,并行计算有相当大的空间,这需要精确和深思熟虑的软件实现。我们内核的软件架构是根据这些要求开发的,它可以通过使用当今的硬件设备自动提高生产力。


   多台计算机上的并行操作可以在不同级别和不同模式下完成。可以为单个会话(文档)的整个几何内核强制禁用并行性。可以设置多个并行计算流程,并并行启动与实体的操作。特别注意开发可扩展的并行计算算法。




在 GPU 上使用计算


   在现代系统中提高生产力的另一个资源是 GPU(图形处理单元)的使用。通常,它们用于显示图形,但今天可用于通用计算。作为研究的结果,已经开发出用于 GPU 的具有证明效率的特殊算法。它们可以处理计算物体的质量惯性特性、投影、在给定点上搜索模型元素等功能。算法嵌入在几何内核中,因此可以通过设置用户选项来启动。OpenGL 是大规模计算的基础库。


多平台


   RGK的几何内核支持 32 位和 64 位架构,以及 Windows 和 Linux 平台。它可以用任何实现 С++11 标准特性的 С++ 编译器编译。



为 Linux (Ubuntu) 启动的测试应用程序的窗口


多个文件


   考虑到开发应用程序的需求,内核架构能够控制计算上下文,并有一个特殊的层来将有关当前会话的信息传递给所有正在使用的函数。因此,最终用户 CAD/CAM/CAE 应用程序的开发人员立即拥有一个现成的基础架构,可以使用他们自己的 3D 对象(例如主体)、不同的计算精度参数和其他特定设置来处理多个文档。每个会话都保持其对象集隔离;这被证明是一种控制对象初始化、创建和删除的便捷方式。保持内核会话隔离,再加上多线程处理,使我们能够创建一个现代高效的应用系统,充分利用计算机的计算能力。



测试应用程序的多文档界面。每个窗口在单独的会话中存储数据。


 实体和混合建模


  现代 CAD/CAM/CAE 系统必须支持实体、曲面和线框建模。RGK 内核拥有全套工具来解决所有这些领域的任务,甚至使应用程序能够与同一模型中的这些对象同时工作。为方便 CAD 开发人员,尽可能使用相同的类进行工作和创建不同类型的实体。例如,“放样”生成器类可以根据提供的选项或数据输入的类型成功生成实体和曲面实体的模型。



包含实体、板材和线框实体的混合模型



   内核以有限的精度执行所有计算。根据计算类型和用户设置,可以设置不同的线性和角度精度值。这可以在快速计算和精确结果之间进行权衡。线性和角度精度之间的比率由用户选择的建模尺寸决定,并且可以为每个会话单独设置。


   当无法在内核精度范围内获得几何对象的表示时,用户必须使用低建模精度;在这种情况下,使用宽容的几何表示。它的特点是对未定义的值和不连续性、拓扑中的几何错误进行了特殊处理,并考虑了模型操作中的限制。公差几何用于将数据从一种表示形式转换为另一种表示形式。一个例子是使用 IGES 和 STEP 格式在 CAD/CAM/FEA 系统之间交换信息。


二、为应用程序开发做好准备


识别模型对象


   在开发应用程序系统时,特别是对于参数化 CAD,需要以稳定的方式存储对拓扑元素(顶点、边、面)的引用。这对于设置本地编辑的参数或几何约束中涉及的元素至关重要。RGK 的几何内核具有基于专门生成的密钥的拓扑元素的稳定识别和存储机制。这种机制允许程序员停止对局部修改后变得不方便的几何参数的搜索。


使用系统和用户属性


   为了存储与模型的拓扑元素相关的附加信息,使用了典型属性的机制,这些属性与主体一起存储和复 制。除了拓扑元素,属性还可以存储在会话和用户标识符中。


详细的错误诊断 


   函数的结果作为错误代码返回。有关问题的详细信息记录在功能和性能报告中。为了帮助集中监控错误,内核有一个用户类——一个监视器——它给出了错误的详细描述。它对于调试应用程序特别方便。


   内核具有用于验证身体正确性的强大工具。对于导入的模型或用户通过低级编辑工具(例如手动修改拓扑)获得的模型,这种验证是必要的。


回滚操作


  “生成器”类是控制和编辑模型的主要手段。执行它们的结果是修改了物体的几何形状和拓扑结构。如果生成器发生错误(例如由于错误的输出),模型的状态将变得不确定或不正确。在这种情况下,几何内核对初始生成器状态执行撤销操作;这样既保证了模型的正确性,又避免了应用开发者永久复 制模型的成本。


通用平台 独立数据格式


  为了存储 3D 模型数据,我们开发了自己的交换格式。它是一个 XML 文档,数据可以存储在独立文件中,也可以作为应用程序数据的一部分。XML 数据结构的选择取决于它具有通用数据格式、具有平台 独立性、易于扩展和开放等优点。通过记录对内核函数的调用序列,该格式还用于调试目的。


质量保证和测试基础设施


作为一个3D几何内核,复杂的软件有着严格的质量要求。我们在开发和设计内核架构时达到了以下质量保证目标:


(1)为开发人员创建方便的测试基础架构,包括持续集成、测试驱动开发、每日自动构建以及在所有支持的平台和配置上运行数千个测试


(2)用新的用户场景不断扩展测试数据库,精确模拟内核函数的调用顺序


(3)在几何内核的进一步开发、改进和修改中支持向后兼容性


三、全套几何建模工具


标准和高级功能


   内核提供用于解决各种几何建模任务的功能。这些可以分为“标准”和“高级”任务。标准的功能和选项集构成了 CAD 中通用功能的支柱。其中包括生成基体的操作,以及实体和曲面的局部和全局修改。高级功能包括创建复杂形式、构建多维变形等。


   为了创建复杂形状的曲面,内核完全支持各种方法,例如使用弯曲和缩放设置沿 2D 或 3D 曲线扫描轮廓,以及处理扫描轨迹上的不连续性的规则。有针对螺旋和弹簧的特殊情况优化的发生器,具有用户定义的选项,例如改变半径或螺距。这些使它们成为创建复杂形状模型的强大工具。



由使用各种轮廓变化规律的扫描发生器创建的实体



由扫描生成器创建的管道


   放样生成器支持具有多个轮廓、相切条件、轴曲线定义等的截面。当部分具有不同的拓扑结构时,生成器的算法可以通过考虑段的每个 G1-连续区间中的不连续性数量和段数来自动协调它们。或者应用程序开发人员可以设置截面点之间的相关性。



使用不同的方式设置截面点之间的相关性,通过放样操作生成实体。


自由形式建模的另一个重要方法是在各种规则下实体和片体的变形,例如弯曲、平移、自由形式和雕塑变形,以及曲线和曲面的变形。在变形变换过程中,许多体表面可以改变它们的类型,从解析表面变为 NURBS。



将“雕塑变形”操作应用于机台模型


  几何内核包括一整套函数,用于解决两个和三个表面的混合任务,以及覆盖具有不规则形状的孔的任务。混合可以应用于连续或可变的半径和截面;特殊的曲面函数用于以曲面的形式表示,使其能够精确表示结果,并在必要时将其转换为 NURBS。算法包括滚球和圆盘与给定或计算出的轴曲线的混合。n 边补丁覆盖的任务可以解决任意数量的边界段,需要通过 G1 相切连接。




   内核提供了一组用于解决基本几何和数学任务的类和函数。这些包括向量和矩阵代数运算、几何对象(导数、法线、曲率等)的计算、边界框的计算、对象之间的距离、曲面细分以及访问模型几何和拓扑元素的函数。


   内核中包含的其他模块是几何约束求解器,用于在装配体中定位实体或模拟运动关节,以及处理 STEP 导入和导出的转换器。


低级和高级操作


   内核函数可以根据另一个标准进行分组:低级和高级。低级操作包括构造曲线和曲面(规范对象、NURBS、偏移曲线和曲面等)、在曲面上投影点和曲线、相交和延伸曲线和曲面、修改拓扑(包括欧拉运算)等在。低级操作使应用程序开发人员能够以最灵活的方式修改内核数据,实际上是在手动模式下操作。


   高级操作包括实体生成的标准操作,以及实体的布尔操作(联合、减法和相交)。它可以用于实体和曲面实体,以及两者的组合。


使用从“螺钉”体中减去圆柱体的布尔运算



应用一系列布尔运算生成齿轮的结果。左:主要部件和工具主体。中心:减法运算的结果。右:由此产生的需要的模型。


用于实体建模的高级生成器


身体生成的高级操作可以根据其用途进行分类:

(1)生成图元:平面、球体、圆柱体、圆环、锥体、NURBS 等


(2)生成运动学操作:线框或曲面实体沿 2D 或 3D 曲线、弹簧、螺旋线的挤压、旋转、扫描,可选择设置用于更改半径和步长的线性和非线性规则,等等


(3)放样和蒙皮:输入部分可以是单参数族和双参数族,对其微分属性有要求


(4)全局体修改:布尔运算、弯曲变形、旋转、不同系数的缩放等


(5)局部体修改:与连续和可变半径、刻面、锥形、空心、偏移、元素阵列、面替换、片材缝合、表面延伸、n 面贴片覆盖等混合


(6)使用隐藏线分类和去除在曲面上投影物体


(7)一种对本地操作进行分组以支持直接建模系统所需功能开发的机制。因此,使用组合变换生成新主体,而不是一系列独立的本地操作。



四、标准 CAD 任务的解决方案


装配管理


   装配体建模是 CAD 的一项关键功能。直接在内核中表示有关组装产品的多级结构的信息,可以更有效地解决典型的组装任务。此类任务包括计算质量惯性特性、解决元素之间的几何约束、验证组件以及通过光线投射选择零件。在 RGK 中,每个组件都由一组带有附加转换的零件(子组件的主体)表示,设置零件在组件中的位置。内核的功能支持创建新程序集、更改结构和删除其组件。在所有编辑情况下,模型的正确性都在控制之中。


装配和运动学仿真中的几何约束


   设置部件中零件位置的主要方法有两种:显式或通过施加几何约束(如重合、平行、相切和距离)或通过几何元素之间的运动学关节(如不同类型的齿轮)。满足几何约束的任务是通过内核中嵌入的一个特殊模块——几何求解器来解决的。然而,在 RGK 中,接口定义与求解器无关;因此,可以连接市场上可用的替代求解器,而不是嵌入式求解器。



投影生成


  投影生成器制作 3D 模型的绘图视图和草图。投影图像由一组二维片段组成,每个片段都符合人脸的一部分边缘或等倾曲线。首先,投影图像由一组投影元素(组件、主体、小平面、边缘)和投影变换确定。附加参数控制生成投影图像的过程;其中包括选择用于构建等倾曲线的算法、隐藏线移除选项以及构建内边缘线段。



去除基于其生成的隐藏线的 3D 机器模型和投影


模型查询


  获取模型信息是用户需要的重要功能。具体而言,此类信息包括计算给定方向上的模型端点,以及测量拓扑和几何模型元素之间的距离(最大值和最小值)。


   现代 CAD 系统的一个组成部分是碰撞检测,它可以在早期阶段检测并消除设计装配和结构中的错误。我们的几何内核确定实体、曲面和曲线的任意组合之间的冲突。此功能接受两组拓扑对象作为输入,然后返回所有处于碰撞状态的对象,以及它们每次碰撞的类型——干涉、接触或包含。


数据交换


  内核包括一个随时可用的功能,用于以 STEP 格式交换数据,这是当前标准(AP.203 和 214 应用协议)。它支持以当今最流行的格式导入/导出数据,以便在 CAD/CAM/CAE 系统之间交换数据。传递有关模型、特定实体和装配模型结构的信息。



从 Creo (Pro/E)、Autodesk Inventor、SolidWorks 以 STEP 格式导入的模型示例


为可视化准备数据

为了使用图形加速器显示模型,内核包括模型细分和网格生成器功能。镶嵌具有高标准,通过选项可确保数据采用适合图形加速器的格式。


用于搜索和选择对象的工具


RGK 有通过光线投射来选择多个元素的工具。它可用于 CAD 系统的用户界面,以确定元素的可见性,构建逼真的图像,并确定动力学模拟问题中的冲突。


五、包装


   从技术上讲,内核是 C++ 中动态加载的模块(DLL 左右)和头文件形式的类库。除此之外,打包还包括一组额外的项目生成文件、用户(开发人员)手册、文档、一组示例以及“RGK Workshop”演示和测试应用程序,用于交互式使用和测试整个内核功能,而无需开发CAD 应用程序。



RGK Geometric Kernel – Now on a Mobile Platform


基于演示目的的手机RGK版本。htis基于Android操作系统的项目大纲刚刚在isicad上发表了一篇文章;这是其中一张图片,标题是“即使是最苛刻的用户也可以评估RGK Mobile在其工作环境中的功能:比较数字模型和真实制作的物理样品的过程”:



来源:RationalDMIS测量技术
SpaceClaimSystemAdamsPatran碰撞非线性通用航空航天汽车建筑CATIABIMMCADPLMCAPP控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-07-15
最近编辑:1年前
山涧果子
大专 签名征集中
获赞 203粉丝 48文章 1165课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈