基于STL模型的逆向工程实体建模技术(1)_第1页
基于STL模型的逆向工程实体建模技术(1)_第2页
基于STL模型的逆向工程实体建模技术(1)_第3页
基于STL模型的逆向工程实体建模技术(1)_第4页
基于STL模型的逆向工程实体建模技术(1)_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精品 料推荐基于 stl 模型的逆向工程实体建模技术内容摘要 : 摘要:针对以stl 数据表示的零件模型,在分析结构件模型几何特点的基础上, 提出了一种以几何体素分离与拓扑关系重建为基础的 stl 模型逆向工程实体建模技术。通过对三角面片的合并实现平面、柱面、锥面等基本几何体素的分离, 并利用 parasolid 系统完成体素重构,进一步提取几何体素之间的布尔关系, 从而实现含拓扑关系的产品模型重构。 利用这一方法, 可以实现 re/rp系统与通用 cad系统之间的快速集成, 实现产品数据在不同系统之间顺畅传递。模型重建 1 逆向工程 cad技术与 stl模型逆向工程 cad技术一般以数字化测

2、量设备的输出数据为原始信息来源 1 。摘要:针对以 stl数据表示的零件模型,在分析结构件模型几何特点的基础上,提出了一种以几何体素分离与拓扑关系重建为基础的stl 模型逆向工程实体建模技术。通过对三角面片的合并实现平面、柱面、锥面等基本几何体素的分离,并利用 parasolid系统完成体素重构, 进一步提取几何体素之间的布尔关系,从而实现含拓扑关系的产品模型重构。利用这一方法,可以实现re/rp系统与通用cad系统之间的快速集成,1精品 料推荐实现产品数据在不同系统之间顺畅传递。关键词: stl;逆向工程;实体建模;模型重建1 逆向工程 cad技术与 stl 模型逆向工程 cad技术一般以数

3、字化测量设备的输出数据为原始信息来源1 。由于测量方式的不同,数字化测量设备可以分为接触式和非接触式。随着测量技术的发展, 不论何种测量方式, 产生的测量数据都是非常多的,尤其是非接触式的激光测量, 可以产生几十万甚至上百万测量点的测量数据。 我们将这种数据称为“点云”数据。 一般来说, 数字化测量设备都带有数据处理软件。 这个软件的主要功能是对测量设备输出的数据进行初步处理, 如去除明显噪声点、 多块数据拼合、 数据格式转换等。一般的测量设备除了按照自定义格式输出数据外,都提供iges格式的数据输出。 随着软件功能的加强,目前很多测量设备可以在输出测量数据的同时输出三角网格数据( 即经过三角

4、化以后的数据) 或者stl 格式数据。但是这些stl格式数据一般没有经过测试( 如不保证封闭性,可能存在裂隙等 ) ,不能直接用于逆向工程建模或rp制造。由测量设备输出的stl数据必须经过修补、 纠错处理, 才能用来进行逆向工程 cad建模。因此,逆向工程中重要的一个环节就是数据的预处理。2精品 料推荐本文研究重点是几何模型重建,因此我们使用的数据都是经过预处理以后的有效数据,而非来自测量设备的原始数据。2 基于 stl模型的逆向工程实体建模stl 模型是以三角形集合来表示物体外轮廓形状的几何模型2 。在实际应用中对stl 模型数据是有要求的,尤其是在stl模型广泛应用的rp领域,对 stl模

5、型数据均需要经过检验才能使用。这种检验主要包括两方面的内容: stl 模型数据的有效性和stl 模型封闭性检查。有效性检查包括检查模型是否存在裂隙、孤立边等几何缺陷; 封闭性检查则要求所有 stl三角形围成一个内外封闭的几何体3 。本文中讨论的stl模型重建技术中的stl 模型,均假定已经进行有效性和封闭性测试,是正确有效的stl 模型。由于 stl 模型仅仅记录了物体表面的几何位置信息,没有任何表达几何体之间关系的拓扑信息, 所以在重建实体模型中凭借位置信息重建拓扑信息是十分关键的步骤。另一方面,实际应用中的产品零件( 结构件 )绝大多数是由规则几何形体( 如多面体、 圆柱、过渡圆弧 ) 经

6、过拓扑运算得到,因此对于结构件模型的重构来讲拓扑关系重建显得尤为重要。实3精品 料推荐际上,目前 cad/cam系统中常用的b-rep 模型即是基于这种边界表示的基本几何体素布尔运算表达的。因此 stl 模型重建的过程如下:首先重建stl 模型的三角形拓扑关系;其次从整体模型中分解出基本几何体素;重建规则几何体素; 然后建立这些几何体素之间的拓扑关系;最后重建整个模型。2.1三角形拓扑关系重建stl 模型中仅仅包含产品的几何位置信息,而且 stl数据中包含大量的重复数据。 stl 中的三角形顶点是重复记录的,其重复度为n(n 为以该点为顶点的三角形数目) 。为了在后续步骤中提高运算效率,有必要

7、首先去除冗余数据,提高存储和运算效率4 ,同时建立 stl模型三角形拓扑关系, 即建立三角形的边信息结构,记录每条边的左右三角形。考虑到排序运算效率, 我们采用双向链表的方式记录每一条边的左右三角形信息。三角形拓扑关系的建立不但精简了stl模型数据,而且是后序几何体素分离的基础。4精品 料推荐2.2stl模型几何体素分离由于 stl 模型是由三角形集合构成的,因此直接利用三角形数据无法将不同的几何体素互相分离。如果将描述模型平面部分的三角形合并,然后提取出平面的边界,利用边界就可以将不同的几何体素区分开来。平面是最简单的几何元素。根据平面特性, 我们可以得到平面边界提取准则:如果具有相邻边的两

8、三角形法矢平行,则这两个三角形构成一个平面。以此外推, 所有与该平面具有相邻边且法矢平行的三角形都属于该平面。平面识别过程是一个递归循环:设任一三角形为“种子”三角形,其法矢为n0。 ni 为与“种子”三角形有相邻边的三角形的法矢,计算 n0、ni 的夹角 =arccos(n0.ni/|n0|ni)。若( 为三角形合并阈值 ) ,则三角形i 可以与“种子”三角形合并。发生三角形合并后,原来的“种子”三角形边界扩充为多边形边界,“种子”三角形成为“种子”多边形。以新得到的“种子”多边形边界为依据,寻找相邻三角形, 再重复以上合并步骤,使“种子”多边形不断长大,最终当所有相邻三角形均无法与“种子”

9、多边形合并时,递归停止。 这时得到的是由多条边界组成的平面多边形。此时我们发现, 即使是简单矩形, 依然是由很多短边组成的多边形,这5精品 料推荐显然不适合特征造型的要求。为此还需要进行边直化。边直化就是将共线的短边合并成为一条直线边。完成边直化以后就得到了正确的平面多边形,其法矢就是初始三角形的法矢。对完成平面边界提取的模型基础,从边界边链表中的任意一条边开始,总可以找到与它位置相连的组成一个封闭几何体的所有边。这时,剩下的边就成为另一个与当前几何体无几何位置联系的独立几何体。当边界边链表中所有的边都遍历分离以后,就可得到所有组成零件的独立几何体的各自的边集合。按照该方法,类似阶梯孔之类的特

10、征将会被分解为n 个(n 为阶梯的层次数 ) 独立的几何体。体素分离的过程见图1。图 1a 是 stl 模型,图 1b 是提取平面边界后的模型。我们可以看到, 原来 stl 模型上所有的平面都被提取出来了,而诸如圆角、 圆柱面、 圆锥面等二次曲面部分则还保留着三角形描述。图1c 是体素分离以后的stl 模型 ( 成为 4 个独立的几何体素) 。对于这些独立体素, 我们需要将其中规则几何体重新利用参数化方法重构,这样才能使最终重建模型成为一个参数化的、有一定拓扑关系的实体模型。6精品 料推荐图 1几何体素的分离2.3规则几何体素重构由于大多数结构件模型可以分解为平面和各种二次曲面( 圆柱面、球面

11、、锥面等 ) 的组合,因此将这些规则几何体利用参数化方法重构以后,就可以得到具有参数信息的结构件模型。对于由平面围成的体素,可以直接将所有平面拼合在一起构成实体体素。对于包含圆柱面、 圆锥面等非平面的体素,根据这些几何体的特点以及 stl 模型能够提供的信息, 我们对几类常见几何体的判断给出了准则。通过实际建模证明,这些准则可以较准确地重建这些几何体。(1) 圆柱 ( 外圆柱面、内孔面 ) 体素重建 由于 stl模型是用离散的数据表示连续曲面, 因此 stl 模型中的圆 ( 柱 ) 实际上是一个多边形 ( 体) 。对于圆柱面的判断,我们根据其几何特性提出如下准则:7精品 料推荐条件 1 成 柱

12、的三角形集合 , 内所有具有相 、法矢共面且平行的三角形 成 柱的两个端平面, 2a。条件 2 内所有具有相 、法矢共面但不平行的三角形 成 柱面, 2b。 柱 面三角形的法矢 ni(i=0 ,1, m, m 三角形数量 ) ,ci 三个法矢的混合 :cj=(ni ni+1).ni+2 , i=0 ,1, m-2 若 ci=0, 所有三角形法矢共面。同 ,由于任意两法矢均不平行,故 些三角形 成 柱面。以上准 可同 适用于等半径 渡 柱面的判断。 柱体素几何参数提取方法如下:在确定了 成 柱面的三角形后,就可以根据 些三角形确定 柱面的直径、高度、几何位置等参数。 首先,8精品 料推荐合并这些

13、三角形的公共边,得到两个由三角形边界边组成的多边形( 即圆柱上下端面的圆) 。然后根据多边形顶点数据,计算出两个多边形的几何重心 ( 圆柱位置参数 ) 、外接圆直径 ( 即圆柱直径 ) 以及由两个几何重心确定的圆柱方向、高度。(2) 圆台、圆锥体素重建类似圆柱面的识别,圆台、圆锥面的判别准则同样以三角形法矢之间的关系为依据。条件 1设组成圆台 ( 锥) 的三角形集合为,则 内所有具有相邻边、法矢共面且平行的三角形组成圆台( 锥) 面的端平面。条件 2 内所有具有相邻边、法矢不共面的三角形组成圆台( 锥 ) 面。圆台 ( 锥) 体素几何参数提取方法如下: 首先,合并组成圆台 ( 锥 ) 面的三角

14、形的公共边, 得到由边界边组成的多边形。 如果得到两个多边形, 则该体素为圆台, 若只有一个多边形 ( 另一个多边形退化为一点 ) ,则该体素为圆锥。根据得到的边界多边形,可以计算出其重心、直径。对于圆台,得到上下圆面直径、方向、几何位置、高度;对于圆锥,得到底面直径、方向、几何位置,由于圆锥只有一个边界多边形,因此需要借助侧面三角形计算圆锥体的高度。9精品 料推荐(3) 其它二次曲面体素重建在完成平面、圆柱面、圆台、圆锥面的提取后,利用剩下的尚未识别的三角形数据构造逼近曲面,并通过逼近曲面识别出这些三角形是否为球面、抛物面等二次曲面, 并提取二次曲面相关参数。 有关通过逼近曲面识别球面、抛物

15、面、 旋转面等的算法很多5 , 6 。根据计算出的曲面类型和参数,利用现有几何造型软件( 如parasolid)可直接构造出几何体。2.4基本拓扑结构重建仅仅依靠独立的几何体素是无法正确重建模型的,只有明晰体素之间的拓扑关系,并据此完成拓扑运算后才能得到正确的零件模型。拓扑关系的运算包括布尔“和”、布尔“减”、布尔“差”3 种。由于 stl 模型表达模型的外轮廓面信息, 因此在 stl模型中布尔“差”是不会出现的。 因此只要分析出两两几何体之间的“和”、 “减”关系就可以完成模型重建。对 a、b 两个独立的几何体素,需要相互进行包容性测试。包容性测试可以判断出体素的顶点与另一体素的关系: 顶点

16、在体素内、 顶点在体素10精品 料推荐外、顶点在体素上。 根据顶点与体素的关系可以得到两个体素的相互位置关系,进一步得到它们的拓扑关系。通过分析我们确定了两体素之间的 6 种位置关系,见图 3。分别将这 6 种位置关系对应到拓扑关系中,就可以确定两个体素之间的布尔运算类型。2.5零件模型重建在确定所有组成零件的几何体素两两之间拓扑关系以后,需要进行布尔运算得到最终的模型。此时需注意的是, 不同的布尔运算次序会产生不11精品 料推荐同的结果。 图 4 是利用相同体素通过不同布尔运算次序产生的零件。可以看到,不同的次序产生了两个完全不同的新零件。如何能得到需要的正确结果,可通过对 stl 模型的分析, 正确的方法是先对所有的体素进行布尔“和”运算,然后在“和”运算的基础上进行布尔“减”运算,这样才能保证运算结果的正确性、有效性。3 实例图 5 和图 6 是两个结构件模型 stl 数据的重建结果。 stl模型数据由测量数据经过简化得到,利用以 parasolidv14.0 为内核开发的 cad造型软件进行几何模型重建。 由于 parasolid 所保存的 xt/xb 文件具有很好12精品 料推荐的通用性 ( 如 ug、 solidworks 等 cad软件均可以直接读入) ,因此我们

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论