APP下载

曲面延拓技术及其应用

2015-05-31南京航空航天大学机电学院安鲁陵王小平王远峰

航空制造技术 2015年15期
关键词:面片自动检测角点

南京航空航天大学机电学院 何 龙 安鲁陵 王小平 王远峰

曲面延拓广泛应用于检具设计中的模拟块设计、模具分型面设计和冲压工艺补充面设计等方面[1]。在复合材料成型模具设计过程中,模板的快速设计对提高模具设计效率十分重要。模板的原始设计依据是从产品上提取出的曲面,设计模板时需要对该曲面进行延拓操作。由于提取出的曲面复杂程度差异大,若直接使用CAD软件已有功能对曲面进行延拓,受到的约束很多(如曲面外延趋势、延拓长度等),很多情况下无法实现。目前国内外学者对于曲面延拓做了一定的研究[2-5],但这些算法的应用范围有限,能够运用于实际设计过程的方法很少。

本文作者在与航空制造企业合作过程中,针对复合材料模具设计中曲面延拓的问题,结合CATIA中曲面延拓的实际应用以及CATIA二次开发技术,提出了一种曲面延拓的新策略,具体如下:对于给定的曲面,自动检测出曲面的角点,以角点划分原曲面的边界,再对划分好的曲面边界分别延拓。自动检测出边界上结合后可以延拓的最多曲线段进行延拓,对延拓后的曲面片判断延拓质量,对于结合后无法延拓的曲线段,优先使用单独延拓的方法,若不成功,则可以使用填充、扫掠等操作处理。

1 曲面边界的自动划分

直接用CATIA的命令对整个边界延拓,对于大部分的曲面都是很难实现的。为此,需要对原始的整个边界进行划分。本文提出了一种通过自动检测曲面角点,自动划分曲面边界的方法。

首先,设计角点自动检测算法。曲面在角点处是切向不连续的,但是曲面切向不连续对应的点不一定是角点。

为此,提出角点检测的方法如下:

Step 1:用切线连续的方式分割整个边界,获取分割后的边界线段,将其存入链表LIST1中;

Step 2 :遍历LIST1,获取LIST1中所有边界线段的2个端点,存入链表LIST2中,并且删去LIST2中的重复项;

Step 3:对于LIST2中每个端点P,必同时属于2条边界线段,分别过该端点作这2条曲线的切线L1、L2;

Step 4:测量L1和L2之间的夹角θ,对于给定的阈值ε,比较θ与ε之间的关系,如果θ>ε,说明端点P是角点;如果θ<ε,则说明端点P不是角点。

所以,确定合适的阈值ε,对于准确判断出角点位置非常重要。

通过角点划分边界,可以有效地减少在非角点处,延拓后出现裂缝的情况。由于2条曲线的外延趋势不一样,延拓后很可能出现裂缝。自动检测出角点之后,只要在角点检测的基础上,做相应的修改,就能将原始整个边界按角点自动划分:如果LIST2中的点P不是角点,则提取出点P属于LIST1中的2条曲线,将这2条曲线合并为1条曲线添加到LIST1中,并将原来的2条曲线从LIST1删去。

2 曲面自动延拓

曲面延拓的一个基本原则就是要尽可能多的结合边界线段同时延拓。这主要是因为在有些边界处,曲面是无法延拓的(或者延拓的形状不满足要求),但是将其与两边的边界结合后,由于曲面外延趋势的改变,就可以延拓了。

为此,在尽可能结合多的曲线段的前提下,本文提出了曲面延拓的新思路如下:

Step1:将上述链表LIST1中已经划分好的2个角点之间的一条边界(可能有n条线段)试延拓,成功,则保留结果,程序结束;失败,转Step2。

Step2:如果延拓边界的拓扑线段为n=1,则出现图1所示的情况,其处理方法为:用点P做外插延伸,得到曲线②。以曲线段①沿曲线②做扫掠。扫掠得到的曲面片就是延拓面片。

图1 单个拓扑边延拓情况及其处理方法Fig.1 Single topology boundary extension andits processing method

如果延拓边界的拓扑线段为n=2,则分别试延拓2个拓扑线段,若2个拓扑线段都能延拓成功,则延拓完毕,程序结束;若有不成功的延拓边,则会出现图2(a)和图2(b)两种情况。图2(a)中的处理方法为:分别延拓端点P、Q,并以P、Q的延拓曲线及①、②作多截面曲面,该曲面即为延拓曲面。图2(b)中的处理方法为:直接将曲线②沿曲线③做扫掠。

图2 两拓扑边延拓情况及其处理方法Fig.2 Two topology boundaries extension and their processing method

如果延拓边界的拓扑线段n>2,将n-i(i=1,2,…,n-2)段曲线段结合后试延拓,并判断试延拓之后的曲面片是否符合要求,如果满足要求,则转到Step3,如果不满足要求,i=i+1,重新结合曲线段后试延拓,不断循环。如果没有一次结合能够延拓成功的,转到Step4。

Step3:只要有一种结合后延拓能够满足要求的,延拓成功的曲面片则可能出现在该边的任意端部或者该边的中部。

对于出现在端部的情况,如图3所示。图3(a)的处理方法为:判断曲线①能否延拓,若不能延拓,则采用将②沿①作扫掠;图3(b)的处理方法为:将P点延拓并保留,对于内部点,比如Q、M,同样延拓,并比较其与①之间的夹角是否小于设定的阈值,如果满足条件,则保留,将保留的延拓曲线依次连接,再用样条曲线依次连接成封闭轮廓,用填充功能填充,得到延拓面片。

图3 多拓扑边延拓出现在端部情况及处理方法Fig.3 Several Combined topology boundaries extension occur in ends and its processing method

对于出现在中部的情况,如图4所示。图4(a)的处理方法为:分别判断曲线①、③能否直接延拓,若不能,则以曲线②、④分别沿曲线①、③作扫掠,得到的扫掠面就是延拓面片。图4(b)的处理方法为:对于上半部分,将N点延拓并保留,对于内部点,比如P、Q、M,同样延拓,并比较其与曲线段②之间的夹角是否小于设定的阈值,如果满足条件,则保留,将保留的延拓曲线用样条曲线依次连接成封闭轮廓,用填充功能填充,得到延拓面片;对于下半部分,先判断曲线段①是否能够单独延拓,如果不能,则直接将曲线段①沿曲线段②作扫掠,得到延拓面片。图4(c)分为上、下2部分处理,各部分的处理方法都与图4(b)中上半部分的处理方法类似。

Step4:对于没有一种结合后试延拓能够成功的情况,首先找寻边界上能够单独延拓,且质量较高的曲面片作为基准曲面片(质量较高指的是延拓出的曲面片应近似于平行四边形,若都不满足要求,则取两对边夹角最小的延拓面片),提取出基准曲面片的2个延拓边中的任意一个,记为C1,提取出需要延拓边界上的所有点,用这些点做外插延伸,比较延拓曲线与C1之间的夹角θ,如果θ小于设定的阈值,则保留该点的外插延伸线,将其加入LIST3中,将LIST3中的曲线依次连接组成封闭线框,利用填充功能填充线框组成延拓面。

图4 多段拓扑边延拓出现在中部情况及处理方法Fig.4 Several combined topology boundaries extension occur in middle and its processing method

3 实例

下面通过若干实例来说明以上曲面延拓方法的可行性。

如图5所示的曲面,由于曲面比较复杂,如果使用CATIA自带的功能直接进行延拓,在有些边界处延拓出的曲面无法达到预期的效果;同时如果改变曲面的延拓长度,有些边界则会出现无法延拓的情况。应用本文中的延拓的方法后,一次性延拓后延拓曲面如图5(b),能够达到预定的要求。

图5 某曲面及其延拓Fig.5 Certain surface and its extension

4 结论

为了解决在CATIA设计过程中曲面延拓困难的问题,本文提出了CATIA中曲面延拓的新方法:尽可能多地结合边界曲线段进行延拓,对存在结合后无法延拓的曲线段,采用其他方法,比如扫掠、填充等替代。该方法在CATIA二次开发环境中实现,能够快速地延拓曲面,经实际检验后,能够满足设计要求。目前,该功能已经应用于复合材料成型模具的设计中。

[1] 姜坤,周雄辉,黎旻,等. 检具设计中延伸曲面修补方法.上海交通大学学报, 2011,45(11):1720-1724.

[2] Shetty S, White P R. Curvature-continuous extension for rational B-spline curves and surfaces.Computer-Aided Design, 1991, 23(7):484-491.

[3] 余正生,雷毅.NURBS曲线曲面延伸.工程图学学报,1997(1):7-18.

[4] 赵东福,许澍虹,柯映林.组合三角Bezier曲面的延伸.机械工程学报, 2003,39(4):87-91.

[5] 初剑,魏志强,孟祥宾,等.基于Delaunay三角剖分的曲面求交技术.系统仿真学报, 2009,21(1):155-158.

猜你喜欢

面片自动检测角点
三维模型有向三角面片链码压缩方法
角接触球轴承外圈锁口高度自动检测规改进
初次来压期间不同顶板对工作面片帮影响研究
基于STM32的室内有害气体自动检测与排风系统
光电传感器在自动检测和分拣中的应用
基于FAST角点检测算法上对Y型与X型角点的检测
基于边缘的角点分类和描述算法
K-F环自动检测系统设计
基于圆环模板的改进Harris角点检测算法
甜面片里的人生