1 / 92
文档名称:

基于B-rep的工程CAD系统Translator的设计与实现.pdf

格式:pdf   页数:92
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

基于B-rep的工程CAD系统Translator的设计与实现.pdf

上传人:山吉 2014/2/26 文件大小:0 KB

下载得到文件列表

基于B-rep的工程CAD系统Translator的设计与实现.pdf

文档介绍

文档介绍:上海交通大学
硕士学位论文
基于B-rep的工程CAD系统Translator的设计与实现
姓名:杜红亮
申请学位级别:硕士
专业:软件工程
指导教师:肖双九;刘义强
20090501
基于 B-rep 的工程 CAD 系统 Translator 的设计与实现
基于 B-rep 的工程 CAD 系统 Translator 的设计与实现

摘要
随着 B-rep(Boundary representation)技术的发展与成熟,大多数的 CAD 都采用了
其作为内核的主要技术,来描述各自的产品信息。其中主流 CAD 的内核又以 Spatial 的
ACIS、UGS(Unigraphics Solution Inc)的 Parasolid 和 PTC(Parameter Technology
Corporation)的 Granite 为主要代表。各种 CAD 文件之间的相互转换是当今工业界的市
场需求。
一般的以 STEP 为中间文件的转换[1],并不能满足用户的所有需求。基于各自 CAD
系统特点的文件属性在转变到另一个系统中,某些属性可能丢失或者错误。导致这样结
果的原因可能有很多。这一方面跟各自系统定义的差别有关,如精度问题的不同,对
NURBS(Non-uniform Rational Bspline)的正确性影响很多。Non-manifold 在不同内核
的支持程度不一样也会导致不一样的 B-rep 的结构。因此,工程 CAD 系统一般采取
Translator 来直接读取和存出其他的 CAD 的文件,尽可能多的保留其中的产品信息。
由于 B-rep 内核之间存在着比较大的差异,因此在任意两个不同内核的文件之间相
互读取或者写入经常会造成数据的丢失或者异常。不同 CAD 系统对于对象和属性的定
义也不完全一样,跟客户期望的最大可能格式互换也会有一定的差距,这也会给工业产
品的描述和生产带来问题。
本文主要研究和实现了一个 TRANS 系统。根据主流 B-rep 内核(ACIS 与 Parasolid)
的模型对象和拓扑结构的特点,从 Body、Lump、Shell、Face、Loop、Coedge、Edge
和 Vertex 各个层次,设计了 TRANS 系统的总体架构和基本的模块设计,包含了导入和
导出两大流程;根据 B-rep 内核的几何结构特点,主要分析了各种几何模型的参数表达,
从 Surface 和 Curve 两个层次,实现了 TRANS 系统的几何接口,包含了导入和导出两大
流程。
接着研究和实现了 TRANS 系统的对象和属性。在 Solid 对象中,给出了创建导入
一个 Solid 的方法,并研究了如何判别它是一个封闭 Solid 的算法。接着研究了当前很多
CAD 支持的一种 Multi-Solid Body 结构,以及在 TRANS 系统中,这种 Multi-Solid Body
跟单个 Solid Body 的映射关系。在 Surface 对象中,研究了主要类型表示,一些复杂的
I
基于 B-rep 的工程 CAD 系统 Translator 的设计与实现
Surface 类型在 TRANS 系统中是通过 Nurbs 曲面来转换的。在 Wire 对象中,主要从 3D
和 2D 两个方面分析了它们在 TRANS 系统中的实现,并且支持了 Point 对象、工作特征、
装配焊接(Assembly Weld),对 CAD 中常用属性进行了研究。
在关键技术部分,研究和实现了非流型模型(Non-manifold)向流型(Manifold)
模型转换的算法。针对 Non-manifold 模型和 Manifold 模型的拓扑几何特点,通过增加
Edge、复制几何信息、更新拓扑结构来完成 Non-manifold 向 Manifold 模型转换。解决
了部分 B-rep 内核(如 ACIS)系统在奇异点(Singularity Point)处的定义与其它 CAD
内核不一致的问题。在有些 CAD 的 B-rep 结构中,是没有 Vertex 的拓扑结构的,或者
无 Vertex 值。重点研究了如何有效地创建 Vertex 这一拓扑算法,并研究了一个 Face 含
有多个 OuterLoop 如何拆分成一个 Face 只携带一个 Outerloop 的算法,因为多数 B-rep
内核只支持后者的情况。
接着研究了逆向工程在 TRANS 系统中的应用。它主要基于大多数 CAD 文件采用
pound File Binary Format)。分析了 NX 文件中
一些基本的数据