Surfacer曲面建模实验指导_第1页
Surfacer曲面建模实验指导_第2页
Surfacer曲面建模实验指导_第3页
Surfacer曲面建模实验指导_第4页
Surfacer曲面建模实验指导_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、surfacer曲面造型实验指导书一、surfacer 10.6 简介美国imageware公司推出的sufacer是一款具有强大的曲面造型功能的软件,被广泛应用 于逆向工程、自由曲面设计和计算机辅助曲面检测。surfacer的应用领域涵盖了汽车、航空航 天、电子产品、模具等行业。它具有友好的输入输出接口,可以接受儿十种数据格式,方便 地与同类软件进行数据交流。它主要包括四大功能模块,即点处理、线处理、而处理和快速 成型模块。同时还包括显示、编辑、检测等辅助功能。surfacer 10.6 中包含了 多种 entities,主要冇点云(cloud)> 曲线(curve)> 曲而(s

2、urface)组 (gouip)和图(plot)。> cloud:坐标空间中单一的点或是一群点的集合、点群间可以相加、减。> curve:分为3d curve和2d curve。询者为独立在3d空间的曲线,后者依附于曲面。> surface:裁剪曲面和未裁剪曲面。> group:由部分选择的entities组成的集合。> plot:各种分析、对比特性图。例如点的法矢、曲线的曲率图、点与面的误井图、实体间 的连续性分析图等。用surfacer 10.6进行模型重建主要可分为以下几个大的步骤:1点云预处理首先要选择正确的数据格式,将扫描点云输入软件。多视图拼合冇时所测

3、实体而积大,或测量角度多,采用激光扫描测量很难一次获取全部数据,往往 需要多角度分别测量,然后再将数据拼合在一起。surfacer对多角度测量数据进行拼合的具 体做法是在被测实体的不同地方,分别粘三个小球。在分块测量时,要求每个测视图中都包 含三个小球的点云数据。然后将各数据依次输入软件,用circle-select points命令分离岀 所有小球的点云,通过fit sphere拟合成球面。接下来耍选取其中的一块视图做基准,将要 移动的不同视图的点云与其对应的球体分别组成一个族。打开stepwise registration命令, 选择要移动族的名称,将菜单中列出的两组小球的名称,对应叠加,

4、就可将两视图并在一起。 以此类推,从而完成多视图的拼合。最将拼合后的点云做加法运算,合成一个整体。数据简化测量数据过密时,计算量大,会影响后面的操作速度,可选用sample中的多种简化命令, 去掉兀余点云。其屮space samples对化简特征多的点云非常冇效,它通过曲率计算,在平 缓的区域,保留较少的点;而在特征较多的地方,保留较多的点。在简化的同时有效地保留 了特征,是一种优化算法。数据平滑在测量时,多种因素会造成噪音点。从不同的角度观察点云的质量,杂点不多时,可用 pick delete point命令手动删除。对于质量较差的点云,可选用smooth下拉菜单中的多种 滤波命令,对点云进

5、行平滑处理,去掉坏点,提高整个点云的质量。应注意,不同的点云应 采用不同的滤波方式,不仅要去噪,还耍有效地保持模型的几何特征。当数据在较小范围内有缺损吋,fill命令可按周围点云的曲率变化,进行有效的填充。点云排序一般实物都用了多次测量的策略,导致点云杂乱无章。为了保证后面生成曲线与曲面的 质量,有时需要对点云排序。最常用sort by nearest,通过计算点云之间的距离来确定点与 点z间的几何关系。通过上述方法处理后的点云,可直接调用polygonize命令,生成三角网格,保存为stl 格式,用于快速成型。2特征提取和数据分割对数据进行分块,可将复杂的数据处理问题简化,冇利于提高曲而拟合

6、的精度。打开dense feature extraction中的sharp edges菜单,通过计算曲率來提取区域划分的特彳if点。根据 特征点,通过人机交互式的方法可以确定区域边界线。为保证后续过程中重建曲面的质量, 口j以根据需要对特征线进行光顺检验。打开radius of curve plot菜单,观察调整曲线的曲 率分布,对丁变化较急剧的地方,要手工干涉。打开control points edit菜单,选择调整 的方向,通过拖拽控制点,来提高曲线的光顺性。3曲面重构surfacer基于双精度nurbs來重构曲面,与实体模型完全集成,支持多种的曲面造型方 法,如拉伸、旋转、放样、扫掠、边

7、界拟合、点云拟合、曲面延伸、曲面裁剪等,同吋还具 有检测、修止、优化等功能。本指导书以一个柴油机进气道的测量数据为初始输入,给出在surfacer环境下建立该进 气道的分片光滑b样条曲面模型的基本过程。具屮包括数据拼合和简化的预处理部分,本指 导书屮略去,而是将重点放在根据点云数据构造b样条曲而这一难度较高的部分。本范例力 求比较全面地涵盖surfacer软件的主耍功能,使读者对逆向工程曲面重建又一个相对全面的 认识。但逆向工程软件的功能很丰富,仅一个范例是不可能完全涵盖的。要熟练地掌握逆向 工程软件,需要具有良好的曲面造型背景知识和大量的实践积累。、surfacer曲面造型范例木节以如下进气

8、道曲面模型为例,说明使用surfacer 10.6进行曲面重建的一般流程。1. 导入数据 用file->new viewpoint新建一个视图,并选择进气道测量数据文件start.asc 将数据点导入,如图1所示。2. 去除杂点由于测量时产生了明显不在物体表而上的点(也称为杂点、野点,outlier), 所以第一步可以通过交互选取删除这些点。用point->extract points->circle-select points菜单 命令或者直接点击屏幕左侧工具包屮的创图标。在弹出对话框屮,首先选择要操作的点云, 然后在selection mode屮,选择points out

9、side,用ctrl键加鼠标左键旋转,选择一个合适的 视图方向,然后左击start按钮选择包含待处理点的一个区域。用鼠标左键在视图平面上绘制 选择多边形,用中键结束选择,如图2所示。图1进气道测量数据点图2去除野点图3提取特征线3提取特征线用 curve->dense feature extraction->sharp edges 命令,点击 compute curvature按钮,计算点云曲率,然后根据曲率变化,捉取尖锐区威的特征线。将threshold percent调到9(),点击model按钮预览,满意后点击apply按钮生成特:征线,如图3所示。根4.获取截面线数据用 s

10、urface->create/cloud ->fitplane 命令,首先选取一条特征线拟合据点云曲率提取的特征线是对点云进行区域划分的依据。一个平面;然后用point->cross section->parallel命令,用平彳亍于拟合平面的4个平面与点云数据相交,获取点云的截面线数据,各参数设定如图4所示。注意,点击对话框左下脚的 interactions按钮,会弹出交互选择工具条,它根据不同的上下文有不同的按钮,方便用户选 取最正确的实体或位置。这个工具非常有用,例如在图4中,start point栏,可以利用该工具 条上的“在曲面上点取”按钮,准确地选取拟合平面

11、上一点作为起始截面的位置。jnl xi|4.59佇 parallelcloud(s) 厂 listdirection xauto calculite spacingspacing|neighborhood sizeint erac tions* interactions(surface图4提取点公截血线数据5.创建放样(loft)曲面 首先对截面线数据进行光顺,用point->smooth->filter命令,filter type 选 average, filter size 取 6。然后用 curve->create 3d/clouds->fit to tolera

12、nce 命令,在一定的公差范围内,拟合一组样条线,参数设置和拟合得到的曲线如图5所示。为了生成光滑的放样曲面,必须使这组曲线的方向和起始点(start point)-致,可以用curve->modify->reverse curve 改变一条曲线的方向,也可以用 curve->modify 3dnetwork->harmonize direction 调整一组曲线的方向一致。用 display->align view to->curve对齐视图,然ju* curve->construct 3d->line 创建一条直线,点击 curve->

13、modify->change start point,用创建的直线来对齐儿条曲线的起始点,如图6所示。注意,用ctrl+shift+d来设置 曲线显示屈性,显示起始点信息。图5带公差拟合截面illi线图6 1111线起始点调整0.0250.0000mm号file edit display basic point curve surface registration system rpm gme link help xunits|mm jj layers三ji trary(s)speci £y control pointscleaning tolerance start cont

14、inuityloft curvesx v | die update | inspection| basicstart continuity element position5nawt setuse 5b and drag to specify a distance. (current 0)g1createi ii -idlxl 一1modi ft, '厂voo+q 4 th14 mi pvn/*a tsordered curve (s)deletefi ttotolcrvjfittotolcrv 9fittotolcrv 10fittotolcrv 11closed surface0

15、end continuity| apply |surfac.©jsurfac.三)数据牲未命|老loft su.參开始h q吻回金8 ulsurfac.modeli冷>o ;題宫为了保证放样面的晶质,用curve->modify->reparameterize curve对曲线进彳亍重新参数 化,使它们控制顶点数目一致,如图 37o 点击 curve->diagnostics->curve->cloud difference 命令,分析曲线和截面点云距离误差,显示图8所示的误弟图,保证精度。用 surface->create/curves-&

16、gt;loft curves命令,依次选取各条曲线,设置边界位置连续和公差等参数,创建放样曲面。必要时,使用surface->modify->reverse direction命令调整曲面的方向, 使其指向模型外部,如图9。0.09800.0750.050图x曲线与截而数据距离谋并分析弋 surfacer v10.5 loft.imw图9创建放样而1用与以上类似的方法做出如图10的放样曲面。蠶鸚条正ffio局部於丈图10创建放样条面2图11创建区域划分曲线6. 用特征线将点云划分为若干平滑的区域前面已经根据计算点云的曲率提取了尖锐边, 可以根据尖锐边在点云上创建图11的曲线。这些曲

17、线所围区域分别对应主要曲面(base surface) 和过渡卅面(transition surface),它们分别对应平滑的点云数据和曲率变化快的点云数据。曲线 可以由 curve->construct 3d->interactive 3d b-spline 命令创建,也可以先用 point-> cross section菜单下提供的几种方式提取截而数据,再拟合曲线。区域创建的结果对最终曲面的品 质有重要的影响,主要靠用户的经验,有如下注意事项:>将点云上对应解析曲面(平面、球、旋转面、拉伸面)的区域尽可能分割出來,提高重构精 度。>尽量将单个区域划分为四边界域

18、,这样可以用边界线、分块点云、u/v等参线等信息直 接构造非裁剪曲面,方便曲面片的拼接。>裁剪曲面通常是将初始划分的曲线投影到曲面,然后对曲面进行裁剪,曲面的边界与初 始曲线不符合使裁剪曲面与和邻曲面的拼接困难或连续性很丼。所以裁剪曲面与其它主 要曲面要预留间隙给过渡曲面,>对于拟合曲而,尽量将每个区域划分为单值区域,捉高拟合精度。用曲线将点云进行划分后,就可以将每个区域用多种曲面创建和曲而拟合方法来生成曲 面。为了描述的方便,先给出重建后的曲面模型,并将每个曲面标上一个阿拉伯数字,如图 12所示,数字的顺序并不代表曲而创建的顺序。曲而12和14为前而已经介绍过的放样面, 其余曲面

19、,接下去将分别进行说明。7. 由边界曲线和点云拟合曲面1曲面1是由边界曲线和点云拟合。如图13,首先改变 圭寸闭曲线的起始(curve->modify->change start point),用右边曲线作为spine,使其位于两条曲线的交点;然后将其裁剪为两条曲线(curve->create/curves->snip curve)0再将曲线所围 点云单独提取出来(point->extract points->points within curves),选择这部分点云,顺序选择边 界曲线,由边界曲线和点云拟合曲而l(surface->fit cloud

20、 and curves),如图14,因为边界曲 线两两相交,所以曲面1完全通过这些曲线,检查曲面与点云的距离 (surface->diagnostics->surface-cloud difference),如杲不满足精度要求,就需要将这个区域 进一步划分,使拟合曲而达到精度要求。(a)视图1(b)视图2(c)视图3图12曲面片编号示意图(d)视图4(a)(b)d?1 nn; luknjo.ifl.qd nnnn£ i)闕=(a)(b)(c)图14 curves/cloud拟合曲而与误差分析8. 构造裁剪曲面2曲面2为裁剪曲面,首先用边界曲线将这一区域的点分割出来 (po

21、int->extract points->points within curves),如图 15 ,然后用自由型曲面去拟合 (surface->create/cloud->fit free form),如图16,请注意图屮的参数设定;将边界曲线向曲面 上投影(curve->create on surface->project curve to surface),再用这些投影曲线去裁剪曲而 surface->trimming operations->trim/curves,得到曲面 2,如图 17。9. 构造放样曲面8曲面8为放样面,首先用poin

22、t->cross sections菜单下的指令创建截 面数据,进行排序和光顺,再拟合为曲线(curve->create 3d/clouds->fit free form),如图18 所示。调整截面曲线的方向使其一致,再将其重新参数化为30个控制顶点,最后生成放样面 8,放样面4个边界连续都为位置(position)连续。10. 构造过渡曲面5、9、10曲面5、曲面9和曲面10位于曲率变化较大的地方,它主 要是起着连接基木曲面(base surface)的作用,称为过渡曲面(transition surface)因为过渡曲面 曲率较大,为了准确逼近数据点,采用加边界条件的点云拟

23、合曲面方&(surface->fit /cloud and curves)o与前面介绍的方法一样,首先将毎块曲面对应的那部分数据裁剪岀来,然后进行拟 合,拟合时在不影响曲而自身光滑性的前捉下,尽量和已知曲而保持tangent连续。注意,只 有当边界曲线选已有曲面的边界线或位于平面上的2d curve时,才能应用tangent和curvature 连续性条件。图19为这一部分曲面重构后的局部模型视图。 图17曲面裁剪图18创建loft的截面曲线图19模型局部视图11. 构造裁剪曲面4如图20,首先,用将曲线包围的点云裁剪出来(point->extract points->

24、;points within curves),检查点云的平面度(point->cloud characteristics->cloud flatness), 发现点云平而度误差很小,因此用平而来拟合这部分点云(surface->create/cloud->fit free form)o若平面没有完全包含封闭的边界曲线,可以将平面延(surface->extend->by length), 如图 21 所示。将边界曲线向平面投影(curve->create on surface->project curve to surface),再 用投影曲线将

25、平面裁剪(surface->trimming operations->trim/curves),得到曲面4,如图22。12. 构造uv网格线曲面6考虑到曲面6所在区域的点云沿uv等参线截面形状规则,可 以考虑由 uv 曲线网格来构造(surface->create /curves->blend uv curve network)。首先构造 曲线网格,再创建曲而,如图23所示。注意,曲线网格都相交时创建曲而品质更好;曲线网 格必须为四边域;所有曲线需要g?连续(曲率连续)。图20裁剪点云平血度检查图21平面延伸©apply |inter «cti on

26、slol x|project curve to surface图22曲面裁剪图23 uv线混合曲面13. 构造放样曲面15首先构造如图24的截面曲线,调整曲线使其方向一致,重新参数 化曲线,使其控制顶点数目同为35个;保持position连续,创建放样面。14. 构造边界线混合曲面3曲面3位于曲面1和曲面2 z间,起着过渡的角色,用边界 线混合曲面指令来构造(surface->create/curves->boundary curves)<>15. 由边界曲线和点云拟合曲面16、17、18曲而16、17和18都是规则的四边界威曲而, 都采用加边界曲线条件的点云拟合方式,

27、其基本步骤与曲而1 一致。值得注意的是,曲而16、 17、18交界区域点云数据很光滑,耍求在创建这些曲面时,后创建曲面要以已创建曲面的边 界作为封闭曲面的一部分,并添加tangent边界约束,保证曲而的光滑过渡。图25为这一部 分曲面完成后的局部视图。图24曲面15及其截而曲线图25保持c1连续拼接的曲面局部视图16. 由边界曲线和点云拟合曲面19曲面19连接曲面12、8、6、16,可以用相邻曲面的 边界组成的封闭曲线以及所圉的点云拟合曲面。如图3-26所示,依次选取图屮边1、2、3、 4形成的封闭边界,其中边1、2、4为和邻曲面的边界,边界连续性选择tangent连续,3为 两曲面的公共边,

28、保持此处的position连续。(b).apply xat«r»ct> oat图26曲面19拟合示意图17. 由边界曲线构造曲面7曲面7在曲面1和裁剪曲面2之间起过渡作用,在相邻的曲 面1、2、3、15都已经存在的情况下,可以用插值于封闭边界曲线的曲面来过渡 (surface->create/curves->blend/boundary curves),保证边界插值曲面与曲面 1、3、15 的 tangent 连续条件,与曲面2的position连续条件。18. 由边界曲线和点云拟合曲面11曲面11位于曲面18、2、6、5、10之间,因为该区 域曲率变化较

29、大,只利用边界曲线信息创建的曲面不能反映其真实形状。所以同时利用该区 域点云信息和边界信息创建曲面(surface->fit/cloud and curves)o19. 构造放样曲面13因为原始测量数据的局部缺失,前而部分将曲而14分开处理,最 后用放样面13将曲面14与曲面1、3、15连接起来。口此,就大体上完成了整个进气道模型曲面的重建。在实际应用中,最初用曲线对点云 数据进行区域划分的结果往往并不完善,需要不断对边界曲线进行调整(例如,裁剪曲面2、 4的边界与最初划分的曲线不一致,而是曲线的在曲面上的投影线)。另外,大体完成后的曲 面模型中如果某个曲面误差检查没有通过,就需要将该区

30、域划分为更多的小区域重新创建曲 面,由此又会引起与其保持边界连续的某些曲面的调整。通观木章可以看出,尽管surfacer 10.6为用户提供了强大的曲面造型功能和逆向建模能 力,但重建满足精度和光顺度要求的高品质曲面模型还需要造型工程师丰富的经验和大量的、 细致的工作!附录a: surfacer常用功能按钮一览表tool box iconsicon名称解释open file开启旧档save current view port储存前画面的资料jundo one command / undo the undo command冋复前一个指令的动作画enlit inlbrmationfntity的信息

31、,包括坐标値、控 制点等信息clear (c?ul) viewport清除l1前的屏幕画而erase (cut) entit>(s)清除所选择的entityrotate world view以世界坐标系为原点旋转整个画 iliij*translate world view以世界坐标系为原点移动整个画 血回rotate about / translate along mode旋转或移动模式、可依整体、轴、 点方式。l»1rotate / translate active lintitv旋转或移动aciic的entily(s), 或所选择的entity(s)o圏kill lo vi

32、ew将咖血扩充到全窗口迪zoom windows局部放大|hgroup i-ntities将所选择的entities做成群组un-group entities将所选择的群组炸开,让群组中 的entities成为独立个体。show entities将所选择的entities显示出來q1 lidc enlitise将所选择的lintiiics隐藏起來1circle select圈选点群hpick location将所点选的位置坐标值显示出來1 ligh resolution setting l or surfaces以髙分辨率着色曲血1爾1medium resolulion selling for s uii aces以中分辨

温馨提示

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

评论

0/150

提交评论