关于几何建模内核

发布时间:2024年01月04日

几何建模内核是用于提供计算机辅助设计 (CAD) 软件中的 3D 建模功能的软件组件。它用于设计虚拟模型以为真实对象的仿真和制造提供支持。几何建模内核使用各种不同的几何表示形式来表示真实对象。这些模型包括使用三角形表面网格粗略估计对象的小平面模型,以及使用在数学上定义的表面精确定义实体模型的 B-rep 模型。很多内核可提供广泛的建模工具。例如,可以将 2D 草图扫掠或旋转为 3D 体,或者使用布尔运算添加、减去或合并 3D 体。高级内核提供如拔模、抽壳和偏置等直接的模型编辑工具,还支持创建非常大的模型和复杂的自由曲面。几何建模内核支持基于相同内核的软件之间的无转换互操作性。对于在 CAD 软件与计算机辅助制造 (CAM) 和计算机辅助工程 (CAE) 软件之间传达 3D 设计意图而言,这一点可提高模型稳定性和性能。

1、几何内核的基本功能组成

几何内核主要包括数学、几何和拓扑对象的数据结构及相应算法;以及文件导入/导出功能,可实现IGES模型导入、STEP模型等标准文件格式的导入,并可统一转为自主文件格式。非核心需求也可称为拓展性需求,主要包含以简化用户操作为目的的通用或专用功能。

1) 基本数学对象:点、向量、直线、平面、坐标系、矩阵、坐标变换等的数据结构及相关运算;

2) 几何对象:点、线、面的数据结构,支持7种曲线、9种曲面;

3) 几何操作:也称几何运算,主要包含求交、投影、反射、坐标变换等;

4) 拓扑元素:采用B-Rep描述拓扑结构,主要的拓扑结构层次有:点(Vertex)、边(Edge)、环(Loop)、面(Face)、壳(Shell)、块(Lump)、体(Body);? ?

5) 拓扑关系:包含拓扑依赖关系及拓扑元素与几何元素间的关联,前者即点、边、面的相邻和从属关系等的查找,后者为拓扑元素到几何元素的映射关系;?? ????

6) 拓扑操作:又称拓扑运算,主要包括拉伸、旋转、阵列、布尔运算、扫掠、放样、圆角、拔模、加厚等;

7) 对象管理的常规机制:创建和删除对象集合、对象创建和删除、对象检查、stream和unstream,磁盘读写,持久化引用;

8) 剖分:将参数曲线、曲面和实体离散成若干三角形和点的操作,为显示引擎等提供数据来源;

?9) 实现自主文件格式,实现单个实体的数据表达的导入/导出函数;

10)IGES(The Initial Graphics ExchangeSpecification,初始图形交换标准)的国家标准号为GB/T 14213,对应美国国家标准US PRO/IPO-100;现行的IGES国家标准号为GB/T 14213-2008,对应于IGES 5.3;

11)对STEP AP242是最新标准支持,以及兼容AP203和AP214标准。

?2、主流几何内核

目前主流的商业三维几何内核商业有ACIS,Parasolid,这两个三维内核同宗同源,只是两个发展分支,ACIS的Spatial公司被达索收购,而Parasolid经历多次收购现收归西门子。现在的两个商业内核除了加强底层内核功能,ACIS更偏向于CAD/CAE/EDA/CAM等客户应用领域,而Parasolid更偏向于加强西门子自身业务的支撑,在CAD功能上,Parasolid要优于ACIS。

目前市面上的大多数三维CAD软件,和拥有三维几何造型仿真软件几何内核都采用ACIS或者Parasolid。

? ? ? ? ??

目前开源的几何内核有法国公司推出的Opencascade,对于小型项目的开发是个不错的选择。

2.1ACIS

ACIS是美国spatial technology公司的产品,是应用于CAD系统开发的几何平台。它提供从简单实体到复杂实体的造型功能,以及实体的布尔运算、曲面裁减、曲面过渡等多种编辑功能,还提供了实体的数据存储功能和SAT文件的输入、输出功能。? ?

ACIS的特点是采用面向对象的数据结构,用C++编程,使得线架造型、曲面造型、实体造型任意灵活组合使用。线架造型仅用边和顶点定义物体;曲面造型类似线框造型,只不过多定义了物体的可视面;实体造型用物体的大小、形状、密度和属性(重量、容积、重心)来表示。

ACIS产品使用软件组件技术,用户可使用所需的部件,也可以用自己开发的部件来替代ACIS的部件。ACIS产品包括一系列的ACIS 3D Toolkit几何造型和多种可选择的软件包,一个软件包类似于一个或多个部件,提供一些高级专业函数,可以单独出售给需要特定功能的用户。ACIS产品可向外出售接口源程序,同时鼓励各家软件公司在ACIS核心开发系统的基础上发展与STEP标准相兼容的集成制造系统。使用ACIS引擎的底层产品主要包括了AutoCAD、Inventer、Catia、MicroSolid等。

2.2Parasolid

Parasolid是一个几何建模内核,最初由Shape Data Limited开发,现在由Siemens PLM Software(前身为UGS Corp.)拥有,可以被其他公司许可用于其3D计算机图形软件产品。

Parasolid的功能包括模型创建和编辑实用程序,如布尔建模操作,特征建模支持,高级曲面设计,加厚和挖空,混合和切片以及图纸建模。Parasolid还包括用于直接模型编辑的工具,包括逐渐变细,偏移,几何替换以及通过自动再生周围数据来移除特征细节。Parasolid还提供广泛的图形和渲染支持,包括隐藏线,线框和绘图,曲面细分和模型数据查询。使用ParaSolid引擎的主要包括了UG、Solidworks、SolidEdge等。

内核

开发者

特点及优势

典型软件

注释

ACIS

spatial technology?? ? ? ?

平面造型;对比较简单的三维模型节省计算资源和存盘空间

AutoCAD、CATIA、proe、ABAQUS、Fluent、Nastran等

从平面造型发展起来

Parasolid

UGS

对造型复杂、碎面较多的实体具有优势

UG、solidedge、solidworks、ANSYS、Comos、FEMAP、Adams、Adina等

最成熟,应用最广泛的几何造型内核

? ? ? ? ??

2.3OPENCASCADE

在商用CAD软件外,还有一些比较成熟的开源CAD内核,其中使用的比较多的是OpenCascade(简称OCC)。

Open CASCADE (简称OCC)是一开源的几何造型引擎。基于该建模引擎发展了若干CAD/CAE/CAM软件,如国外的FreeCAD、HeeksCAD,国内的AnyCAD。Open CASCADE(简称OCC)为开源社区比较成熟的基于BREP结构的建模引擎,能够满足二维三维实体造型和曲面造型,国内研究和使用它的单位也越来越多.OCC可以分为建模、可视化和数据管理(OCAF)三大模块。其中建模为核心组件;可视化组件基于OpenGL,相对其他的三维可视化OpenGL平台(如Coin3d,OpenInventor,Ogre3d,OSG,VTK等),功能简单,并且显示效果比较差,不能充分利用GPU硬件加速;OCAF采用树的方式管理数据,使用比较复杂,效率比较低,并且不适合自定义扩展。因此,不推荐使用OCC的可视化和数据管理组件。? ?

? ? ? ? ??

3、可用的建模内核

? ? ? ? ??

平台

领域

三维内核

产品

公司

国家

Windows, macOS, Linux, iOS, Android

CAD, CAM, CAE, AEC

DGM

CrownCAD

华云三维

中国

Windows

CAD,CAM,CAE?? ? ? ?

CRUX IV

SINOVATION

华天软件

中国

Windows,Linux,

CAD, CAM, CAE

Overdrive

中望3D

中望软件

中国

Windows

CAD, CAM, CAE

Parasolid & ACIS

CAXA实体设计

数码大方

中国

Windows,Linux,

CAD, CAM, CAE, AEC

C3D

Kompas-3D

ASCON Group

俄罗斯

Windows

CAD, AEC

Open CASCADE

4MCAD IntelliCAD

4M S.A

希腊

Windows

MCAD

ACIS / KCM

KeyCreator

Kubotek3D

美国

Windows

AEC

C3D

KOMPAS-Builder

ASCON Group

俄罗斯

Windows

CAD

C3D + K3 kernel

K3-Furniture

Center GeoS

俄罗斯

Windows

AEC

C3D

Renga Architecture?? ? ? ?

ASCON Group

俄罗斯

iPad

MCAD

Parasolid

Shapr3D

Shapr3D zrt.

匈牙利

Android

MCAD

C3D

KOMPAS:24

ASCON Group

俄罗斯

Windows

CAD,BIM

C3D/ACIS

NanoCAD

NanoSoft

俄罗斯

Windows

MCAD

Parasolid

T-FLEX

Top Systems

俄罗斯

Windows

CAM

C3D

TECHTRAN

NIP-Informatic

俄罗斯

Windows

CAD

C3D

PASSAT

NIP-Informatic

俄罗斯

Windows, Mac?? ? ? ?

CAD, CAM

Own Kernel

Rhinoceros 3D

Robert McNeel and Associates

美国

Windows

CAD

C3D

ESPRIT Extra CAD

LO CNITI, Rubius

俄罗斯

Windows

CAD

C3D

BAZIS System

BAZIS Center

俄罗斯

Windows

CAE

Parasolid

Adams

MSC Software

美国

Windows

CAD, CAM, CAPP

C3D,ACIS

ADEM

ADEM Group

俄罗斯

Windows

CAE

Parasolid

ADINA Modeler

ADINA R&D Inc.

美国

Windows

CAD, AEC, GIS

ShapeManager

AutoCAD

Autodesk

美国

Windows

MCAD

ShapeManager?? ? ? ?

Inventor

Autodesk

美国

Windows, Mac

Solid Modeler & Machiner

ShapeManager

Fusion360

Autodesk

美国

Windows, Linux, Mac

MCAD, AEC

ACIS

BricsCAD

Bricsys

瑞典

Windows, Mac

CAD, CAM, CAE

Parasolid

Siemens NX

Siemens PLM Software

德国

Windows

MCAD

Parasolid

SolidFace

SolidFace

巴西

Windows

MCAD

Parasolid,ACIS

Solid Edge

Siemens PLM Software

德国

Windows

MCAD

Parasolid

SolidWorks

Dassault Systèmes

法国

Windows

AEC

Parasolid,ACIS

MicroStation

Bentley Systems

美国

Windows, Unix?? ? ? ?

CAD, CAM, CAE, AEC

CGM,ACIS

CATIA

Dassault Systèmes

法国

Windows

Solid Modeler

GRANITE

Creo

Parametric Technology Corporation

美国

SaaS

Solid Modeler

Parasolid

Onshape

PTC

美国

Windows, SaaS

Solid Modeler

Parasolid ,ACIS

IRONCAD

数码大方

中国

Windows

CAD

Own Kernel

浩辰CAD

浩辰软件

中国

Windows, Mac

AEC, BIM

Own Kernel

ArchiCAD

Graphisoft

匈牙利

Windows

MCAD

ACIS

Cimatron

3D Systems (Cimatron Ltd.)

以色列

Windows?? ? ? ?

MCAD

ACIS

SpaceClaim

ANSYS Inc

美国

Windows

MCAD

European Solid Modeller ESM

HiCAD

ISD Group

德国

Mac, Windows

MCAD

ACIS

Cobalt, Xenon, Argon

Ashlar

美国

Windows, Linux

CAD Optimization

Own Kernel

CAESES

Friendship Systems

德国

Windows, macOS, Linux,

CAD

Open Cascade, Coin3D,

FreeCAD

FreeCAD

? ? ? ? ? ? ? ? ??

Windows, macOS, Linux, iOS, Android

CAD, AEC, BIM

Geometry Kernel

IFCEngine, STEPEngine

RDF

保加利亚

Windows

BIM

ACIS

REVIT

Autodesk

美国

? ? ? ? ? ? ? ? ???? ? ? ?

? ? ? ? ? ? ? ? ??

? ? ? ? ? ? ? ? ??

? ? ? ? ? ? ? ? ??

? ? ? ? ? ? ? ? ??

? ? ? ? ? ? ? ? ??

Windows,LINUX

CAD

Own Kernel

CAXA电子图板

数码大方

中国

Windows,LINUX

CAD

ACIS

中望CAD

中望软件

中国

Windows

CAD,CAM

Own Kernel,OCC

JDPaint,ArtForm,SurfMill

精雕集团

中国

Windows

CAM

OCC

UltraCAM

千机智能

中国

? ? ? ? ??

4、未来发展趋势

提升性能。早期的内核数据结构设计并没有考虑到硬件的发展,默认按照当时的单CPU单核设计。而现在多CPU多核,分布式,GPU计算已经相当成熟。多线程已经在使用,但也只是基于一定接口使用,由于历史原因,这块商业和开源内核底层改进进度都比较缓慢。现在除了工业设计仿真软件外,很多业务场景对实时性都提出了很高要求,目前这一块几何内核还达不到要求。纵观近十年技术领域的发展,相比于人工智能,机器视觉,大数据,互联网的发展速度,几何内核的更新和发展速度可以算得上是龟速了。

进一步轻量化。PS提出的Convergent Modeling的初衷就在于高效的处理三维打印数据,因为三维打印数据为海量三角面片,用纯BREP结构表示性能低下。而CM正是通过简化BREP数据和操作,并融合面片数据,来处理这个矛盾。根据需求进一步简化或者轻量化数据结构,类似于“外科手术”式精准操作。? ?

BREP增强。BREP是目前主流三维几何内核的基础数据结构,但这并不意味着BREP等于三维几何内核数据结构。就如同CAD不等于AutoCAD,CAE不等同于ANSYS。BREP的优缺点之前做过描述,参见深入剖析三维几何内核(3)–基础数据结构。BREP无法表达出三维几何内部的结构,如果要用BREP对内部数据进一步细化,需要将原有结构拆分,或者建立虚拟拓扑。而基于几何特征的一些算法(比如MAR中轴变换)或者类似体渲染的技术可以有效弥补这种不足。未来有可能将这些技术和方法融合到BREP结构中,在更小的维度实现对三维实体的控制。

业务融合。利用商用内核开发通用CAD软件其实性价比已经非常低,风险也很大,除非能在应用层整出点花样出来。通用三维几何内核提供了丰富的功能,但一般的仿真软件实际上能用得上的只有一小部分,性价比很低。所以未来如果开发几何内核可以和业务融合,根据业务情况建立更符合实际的内核结构和功能。早期的CFD前处理软件就是一个很好的例子。因为CFD通常需要处理的是表面数据,所以不需要基于BREP的结构,一般的CFD前处理器会自己构建一套几何数据系统。

人工智能。几何内核在拓扑跟踪,特征模式识别,对象计算,参数建模,约束求解方面是有一定的固定模式的,AI是可以发挥作用的。

参考文献1、https://zhuanlan.zhihu.com/p/4544666122、https://www.caxkernel.com/5426.html

? ? ? ?

文章来源:https://blog.csdn.net/T20151470/article/details/135375263
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。