一种模拟车间中原料研磨过程的形状提取方法

阅读: 评论:0



1.本发明属于材料加工技术领域,具体涉及一种模拟车间中原料研磨过程的形状提取方法。


背景技术:



2.在用于研磨的模拟时,需要用一些曲面表示铣刀边界,一些曲面表示待研磨的原料;研磨的过程实际上是在每个小的时间步内追踪铣刀的位置,将原料和铣刀做求差运算(difference),即将原料与铣刀的补集进行求交运算,得到的结果为被研磨后的原料。模拟的好处有两点:

模拟相比于实际试验而言是一个非常高效的方式,它节省了制造铣刀和生产原料的成本,并且电脑的模拟比实际试验更快捷方便;

模拟时可以随意修改铣刀的参数(如大小、形状等)以及研磨的参数(如研磨时间、铣刀个数、分布等),寻研磨效果最好的铣刀和最高效的研磨方式。类似的,可以按上述步骤实现刀片切割原料、原料黏合等加工过程的模拟。
3.如图1所示的研磨模拟流程中用曲面表示原料和铣刀属于实体建模中的边界表示法,三维连续介质的数学建模被称为实体建模,这是一个成熟的领域,它在工程和科学领域有着基础而重要的意义。实体建模强调物体的保真性,且希望捕捉到实体的几何结构,是计算机辅助设计(cad)和计算机辅助工程(cae)的基础;实体建模中常用的方法有三种:构造实体几何(csg)、边界表示法(brep)和单元分解法。csg方法将实体表示为基元进行一系列运算(如求交、求并)得到的结果,这里的基元是一些预先给定的参数化的实体,如正方体、球、圆柱等等;基元和它们经过运算得到的结果可以进行平移和伸缩。一个csg实体的描述往往是精确的,可以对它进行参数化和编辑,使得它适用于程序化、高层次的建模。边界表示法利用边界来表示实体,为了在计算机中能够表示,这里的边界通常用一些离散的面片近似,比如三角形或矩形,分别被称为三角网格和矩形网格,边界表示法能够精确地表示实体的几何和拓扑结构。单元分解法将空间分解为单元的集合,这些单元可以是同等大小的正方体也可以是其他多面体,实体表示为它所占空间的全体单元的并集。
4.对实体建模的模型而言,布尔代数是一个强有力的工具,它既可以用于处理几何问题,也可以用于检测拓扑变化。布尔代数是一系列布尔运算构成的代数,包括求交集、求并集、求补集以及它们的复合运算,上述流程中铣刀和原料的求差运算属于求交和求补的复合运算。在布尔运算设计中,最常用的实体建模方法是边界表示法[xiaotong jiang,qingjin peng,xiaosheng cheng,ning dai,cheng cheng,and dawei li.efficient booleans algorithms for triangulated meshes of geometric modelingputer-aided design and applications,13(4):419

430,2016],这是因为构造实体几何和单元分解法表示实体所需的内存较多并且无法如边界表示法一般精确捕捉到实体的几何结构,所以基于这两种方法设计的布尔算法效率并不高。在边界表示法中,使用最广泛的是三角网格,所以现有的布尔算法主要针对三角网格;大多数布尔算法可以归纳成三步:

计算两个边界表示法表示的实体的求交;

判断需要保留和需要丢弃的部分;

将保留的部分重
构成一个新的边界表示。对于三角网格,第

步可以分成三小步:首先将两个三角网格中的三角形两两求交得到一系列交线;然后对每个三角网格,将其中三角形根据交线重新进行三角剖分;最后将三角网格沿这些交线剪开成若干曲面片。
[0005]
近年来,人们在这个框架上作了许多改进,文献[ming chen,xiao yu chen,kai tang,and matthew m.f.yuen.efficient boolean operation on manifold mesh surfacesputer-aided design and applications,7(3):405

415,2010]使用ldi模型加速三角形求交和判断曲面片是否保留,他们的算法只适用于边界是流形的三角网格。文献[xiaotong jiang,qingjin peng,xiaosheng cheng,ning dai,cheng cheng,and dawei li.efficient booleans algorithms for triangulated meshes of geometric modelingputer-aided design and applications,13(4):419

430,2016]利用octree技术加速了三角形的求交,并设计了根据三角形的法向判断与之相交的三角形是否需要保留的算法,从而可以对非闭合的曲面进行布尔运算。文献[landier.boolean operations on arbitrary polygonal and polyhedral meshesputer-aided design,85:138

153,2017]、文献[ landier.boolean operations on arbitrary polyhedral meshes.procedia engineering,124:200

212,2015]以及文献[hichem barki,guennebaud,and sebti foufou.exact,robust,and efficient regularized booleans on general 3d meshesputers mathematics with applications,70(6):1235

1254,2015]都对多个三角形在同一条交线处相交的情形设计了选择算法,从而可以处理一些非流形的情况,其中barki设计的选择算法还可以处理实体有洞、无界等情况。
[0006]
生产模拟中,如上述提到的研磨、切割等过程中,由于需要将模拟总时间分为很多时间步,在每个时间步内都要进行布尔运算,所以会频繁地涉及拓扑变化和退化情形(如非流形点、连通性改变等等),现有算法并不能保证正确处理所有的情况。事实上,上述基于边界表示法的布尔算法是缺乏理论基础的,他们大多只给出算法的步骤,却很少有严格的数学证明来保证算法的正确性。只有文献[hichem barki,guennebaud,and sebti foufou.exact,robust,and efficient regularized booleans on general 3d meshesputers mathematics with applications,70(6):1235

1254,2015]给出了一些算法步骤的证明,然而他们的方法只适用于一些简单的有洞的情况,并不能处理全部情况。
[0007]
以上算法在遇到复杂拓扑如洞在内部与实体相切时并不能给出正确的结果,原因在于边界表示法的研究到目前为止还没有给出三维连续介质边界的一个一般的刻画,所以以上方法都只能基于一些简单情况来设计。同时,在模拟过程中,拓扑信息(如连通分量个数、洞的个数)是非常有用的,比如在模拟刀片切割原料时,模拟者会希望知道现在这个时间点,刀片是否将原料切成两半,这实际上等价于原料的连通分量个数是否为2,而用以上算法进行布尔运算,得到的边界表示的拓扑信息是难以计算的。综上所述,现有的实体建模方法并不能支持研磨模拟中的固体建模和布尔运算。


技术实现要素:



[0008]
鉴于上述,本发明提供了一种模拟车间中原料研磨过程的形状提取方法,能够保
证布尔运算的正确性并且在研磨过程中始终知道原料的拓扑信息。
[0009]
一种模拟车间中原料研磨过程的形状提取方法,包括如下步骤:
[0010]
(1)通过三角剖分算法及相应操作获得铣刀与原材料的曲面片;
[0011]
(2)对曲面片进行黏合以得到若干曲面;
[0012]
(3)根据步骤(2)中得到的曲面计算确定铣刀与原材料的交集;
[0013]
(4)计算确定铣刀与原材料交集的补集,进而将原材料与该补集求交即得到研磨完成后原材料的形状。
[0014]
进一步地,所述步骤(1)的具体实现方式如下:
[0015]
1.1利用三角剖分算法获得铣刀和原材料的界面,进而求得两界面之间的交线;
[0016]
1.2将铣刀界面与原材料界面的三角网格沿交线重新做三角剖分;
[0017]
1.3将重新剖分后两界面新的三角网格沿交线剪开,得到铣刀与原材料的若干曲面片。
[0018]
进一步地,所述步骤1.3中对于任一铣刀的曲面片,若其包含在原材料空间内部,则将其保留,否则删除;对于任一原材料的曲面片,若其包含在铣刀空间内部,则将其保留,否则删除。
[0019]
进一步地,所述步骤(1)中得到的曲面片,其法向量方向指向铣刀与原材料的外部。
[0020]
进一步地,所述步骤(2)的具体实现方式如下:
[0021]
2.1对于任一曲面片t1中的任一边界曲线a,寻其他曲面片的边界曲线,若存在有一曲面片t2的边界曲线与边界曲线a重合且方向相反,则计算曲面片t2法向量方向与曲面片t1法向量方向的夹角,从而确定两个曲面片的夹角;
[0022]
2.2根据步骤2.1选择与曲面片t1夹角最小的曲面片,将其与曲面片t1沿边界曲线a黏合起来;
[0023]
2.3根据步骤2.1~2.2遍历所有曲面片的边界曲线,直到所有边界曲线被黏合,从而得到若干曲面。
[0024]
进一步地,所述边界曲线为其所在曲面片法向量方向的右手螺旋确定。
[0025]
进一步地,所述步骤(3)的具体实现方式为:对于步骤(2)中得到的任一曲面,计算求取其所有自相交的线,沿这些线剪开后得到的曲面片个数若为1,则将该曲面输出并纳入铣刀与原材料的交集;若得到的曲面片个数大于1,则将这些曲面片的法向量方向反向,并返回执行步骤(2)后将得到的曲面输出并纳入铣刀与原材料的交集。
[0026]
进一步地,所述步骤(4)中对于铣刀与原材料的交集,其由若干曲面组成,计算求取这些曲面所有自相交的线,沿这些线剪开得到若干曲面片,然后将这些曲面片的法向量方向反向,并返回执行步骤(2)得到若干曲面,对于这其中任一曲面,计算求取其所有自相交的线,沿这些线剪开后得到的曲面片个数若为1,则将该曲面输出并纳入铣刀与原材料交集的补集;若得到的曲面片个数大于1,则将这些曲面片的法向量方向反向,并返回执行步骤(2)后将得到的曲面输出并纳入铣刀与原材料交集的补集。
[0027]
本发明方法实现了研磨过程的模拟,其方法对于任意形状和个数的铣刀与原材料都适用,并且在研磨过程中,可以始终知道研磨剩下的原材料的连通分量个数、洞的个数,这有助于后续的分析。
附图说明
[0028]
图1为原料研磨过程的模拟示意图。
[0029]
图2为利用拓扑排序算法构建的hasse图。
[0030]
图3为本发明采用的各算法之间的依赖关系示意图。
具体实施方式
[0031]
为了更为具体地描述本发明,下面结合附图及具体实施方式对本发明的技术方案进行详细说明。
[0032]
在设计本发明技术方案之前,我们对具有任意复杂形状的铣刀与原材料进行数学建模。
[0033]
给定三维连续介质y,同胚于将一系列二维紧曲面沿着与一维cw-复形同胚的子集进行黏合得到的结果。
[0034]
这个定理揭示了:对于一个具有复杂拓扑的铣刀或原材料,它的边界总等于将一系列二维紧曲面沿着一维的交线黏合。之前的布尔运算方法专注于设计算法,而忽略了对建模对象本身的研究。有了这个定理后,我们可以设计对具有任意复杂拓扑的铣刀与原材料都成立的布尔算法。
[0035]
为了得到铣刀与原材料边界的唯一表示,需要定义表示的基元,也就是黏合紧曲面。黏合紧曲面是一个紧曲面或是这个紧曲面的商空间,其商映射将紧曲面沿着与1维cw-复形同胚的集合进行黏合,如果将这个集合删去,剩余的曲面片仍然是连通的。下面给出了单连通的铣刀与原材料的边界表示:
[0036]
定理

:一个有界连通的铣刀或原材料的边界可唯一地分解为一个正定向黏合紧曲面和若干(可为0)负定向黏合紧曲面,正定向黏合紧曲面包含所有负定向黏合紧曲面,负定向黏合紧曲面之间互不包含,任意两个黏合紧曲面之间无恰当交,交集与1维cw-复形同胚。一个无界连通的铣刀或原材料的边界可唯一地分解为若干(可为0)负定向黏合紧曲面,负定向黏合紧曲面之间互不包含,且无恰当交,任意两个黏合紧曲面之间的交集与1维cw-复形同胚。
[0037]
定理

:对于有界连通铣刀或原材料y,定理

导出的边界表示记为导出的边界表示记为其中为正向黏合紧曲面,为负向黏合紧曲面。对于一个无界连通连续介质y,由定理

导出的边界表示记为其中为负向黏合紧曲面;根据这个记号,我们有其中int根据黏合紧曲面的定向来取内部。通过将每个连通分量根据定理

进行表示,我们建立了一般的铣刀或原材料的边界表示理论。
[0038]
定理

:一个有界连通的铣刀或原材料的边界可唯一地分解为:一个有界连通的铣刀或原材料的边界可唯一地分解为连通分量个数为n,洞的个数为所有中负向黏合紧曲面个数的和;一个无界连通的铣刀或原材料的边界可唯一地分解为连通分量个数为n+1,洞的个数为所有和中负向黏合紧曲面个数的和,其中和分别为有界连通和无界连通的铣刀或原材料的边界表示。
[0039]
事实上,定理

给出的边界表示中的所有黏合紧曲面以包含关系为偏序构成了一个偏序集,可以利用拓扑排序算法构建hasse图来清晰地表示这个偏序集,如图2所示,灰圆代表正向黏合紧曲面,白圆代表负向黏合紧曲面,有边相连的两个圆之间存在偏序关系(包含关系);由于顶部的两个黏合紧曲面都为正向,所以表示的连续介质有界,根据定理

,其边界表示为其中从而连通分量的个数为4,洞的个数为3。从hasse中我们可以直接得到连续介质的拓扑信息,时间复杂度为o(1)。
[0040]
根据上述边界表示,我们设计了布尔算法,首先需要定义三个基本运算,分别是切割运算、黏合运算和拆分运算,这三个运算是布尔运算设计的核心。
[0041]
切割运算:
[0042]
输入:黏合紧曲面集sg、交线集is
[0043]
输出:切割完的有向曲面片集sp
[0044]
算法步骤:对g∈sg,取出is中所有属于g的交线,将g沿这些交线进行切割,得到若干有向曲面片,将这些有向曲面片添加到sp当中。
[0045]
黏合运算:
[0046]
输入:有向曲面片集sp
[0047]
前置条件:sp中的有向曲面片恰好是由某个连续介质y(铣刀或原材料)的边界θy沿某交线集切割得到的。
[0048]
输出:闭合曲面集ss
[0049]
算法步骤:
[0050]
(1)遍历sp,对于已经闭合的有向曲面片,将其初始化为黏合紧曲面,添加到ss当中。
[0051]
(2)从sp中取出一张有向曲面片β,对β的每一条边界曲线b,取其上一点p的充分小邻域,曲面在这一小邻域内近似平面,可求得外法向量nb(称作关于p的外法向量),b在β中定向由nb做右手螺旋决定。从sp当中寻边界包含b且b在其中定向与在β中定向相反的有向曲面片,对于满足条件的有向曲面片βc,其关于p的外法向量记为nc,计算nb和nc的夹角α(0<α<π),则β和βc在b处的夹角angle=π-α。如果nb×
nc与b在b0点的方向向量点乘小于0,令angle=2π-angle,我们计算所有满足条件的有向曲面片的angle,选择其中最小的,对应的有向曲面片记为β
out
,将β和β
out
沿b进行黏合,得到γ。重复以上操作直到γ闭合,将闭合曲面γ添加到ss当中,删掉sp中对应的曲面片。
[0052]
(3)重复(2)直到sp空。
[0053]
拆分运算:
[0054]
输入:闭合曲面集ss
[0055]
前置条件:ss中每张闭合曲面都为某个连通连续介质(铣刀或原材料)的边界,且闭合曲面上任意一点的外法向量的反方向都指向这个连通连续介质,任两张闭合曲面之间以及一张闭合曲面内都无恰当交。
[0056]
输出:黏合紧曲面集sg
[0057]
算法步骤:
[0058]
(1)从ss中取出一张闭合曲面s,求出s的所有自交线,添加到自交线集is中;
[0059]
(2)将s沿is进行切割,得到有向曲面片集sp;
[0060]
(3)若sp的元素个数为1,将s初始化为黏合紧曲面并添加到sg中,算法终止;
[0061]
(4)将sp中所有曲面片定向反向;
[0062]
(5)调用黏合算法,将sp黏合得到黏合紧曲面集sg;
[0063]
(6)将sg中所有黏合紧曲面定向反向;
[0064]
(7)重复(1)~(6)直到ss空。
[0065]
可以证明,拆分运算与黏合运算的复合是切割运算的逆运算,从而基于这三个算法设计的布尔运算关于定理5.13给出的边界表示是封闭的,这是以往的工作所做不到的。下面给出求补算法和求交算法:
[0066]
求补运算:
[0067]
输入:连续介质y的边界对应的黏合紧曲面集gy[0068]
输出:y

的边界对应的黏合紧曲面集
[0069]
算法步骤:
[0070]
(1)将gy中的黏合紧曲面两两求交,得到交线集is;
[0071]
(2)调用算法4.9,对gy按is进行切割运算,得到有向曲面片集sp;
[0072]
(3)将sp中的所有有向曲面片方向取反;
[0073]
(4)调用算法4.10,对sp进行黏合运算得到闭合曲面集ss;
[0074]
(5)调用算法4.11,对ss进行拆分,得到并输出。
[0075]
求交运算∧:
[0076]
输入:连续介质y1和y2的边界对应的黏合紧曲面集和
[0077]
输出:y1∩y2的边界对应的黏合紧曲面集
[0078]
算法步骤:
[0079]
(1)将中的黏合紧曲面与中的黏合紧曲面两两求交(不对或内的两张黏合紧曲面求交),得到交线集is(包含重合曲面的信息);
[0080]
(2)调用算法4.9,对与按is进行切割运算,得到有向曲面片集sp1与sp2;
[0081]
(3)将sp1与sp2中重合的有向曲面片取出,如果方向相同,则添加其中任意一张到有向曲面片集sp,无论方向是否相同都从sp1与sp2中删去这张有向曲面片;
[0082]
(4)对sp1中的有向曲面片β,如果β上除边界以外的点构成的集合包含于y2,则将β添加到sp;
[0083]
(5)对sp2中的有向曲面片β,如果β上除边界以外的点构成的集合包含于y1,则将β添加到sp;
[0084]
(6)调用黏合算法,将sp进行黏合运算得到闭合曲面集ss;
[0085]
(7)调用拆分算法,对ss进行拆分,得到并输出。
[0086]
求并运算可以根据demorgan律,由求交和求补运算直接得到。
[0087]
g上的求并运算v:g
×g→
g定义如下:
[0088][0089]
图3给出了各个算法之间的依赖关系。可以证明,我们设计的布尔算法关于铣刀与
原材料的边界空间g构成了一个布尔代数。
[0090]
在实际操作时,输入为铣刀与原材料边界分解得到的一些黏合紧曲面,这些黏合紧曲面往往是三角剖分的形式,黏合紧曲面的定向决定了三角形边的遍历顺序是顺时针还是逆时针(三角形边的遍历顺序按右手螺旋规则产生的外法向量与黏合紧曲面的外法向量一致)。无论是求交还是求补算法,我们首先都要对黏合紧曲面进行两两求交。两张黏合紧曲面的求交,实际是对这两张黏合紧曲面中的所有三角形两两求交,每一个三角形都记录对应的交线和重合的信息。
[0091]
给定两个三角形tria和trib,求交分为两种情形:(1)当tria和trib共面的时候,我们先将它们投影到合适的坐标平面,得到tria

和trib

,将tria

中的每条边e都与trib

进行求交(可以转化为e所在直线分别与trib

的三条边求交),将trib

中的每条边也都与tria

进行求交,将结果还原回原空间并记录下来,如果存在交点,这两个三角形的关系记为重合;(2)当tria和trib不共面的时候,我们首先求出当tria所在平面和trib所在平面的交线l,将tria与l投影到合适的坐标平面进行求交,再将trib与l投影到合适的坐标平面进行求交(两个坐标平面未必相同),将两次求交的结果还原回原空间并合并。
[0092]
在所有三角形求交完毕后,为了后续的切割和黏合,需要将每一个三角形根据它记录的交线重新进行三角剖分。我们的三角剖分算法如下:给定三角形,我们将它的所有交线的端点和三角形的顶点都添加到顶点集当中,每次从顶点集取两个顶点,如果它们的连线与已有的所有交线、添加的连线、三角形的边都不重合且没有除端点以外的交点,就将这两个顶点连起来,重复以上操作直到所有顶点对判断完毕。最终得到的即为三角形关于给定交线的一个三角剖分,对那些剖分后与交线重合的三角形的边,我们额外标记为交线边。
[0093]
接下来需要将黏合紧曲面沿交线进行切割,这在具体实现时更像是一种黏合。
[0094]
切割算法实现:
[0095]
输入:黏合紧曲面集g的三角剖分包含的所有三角形vectri
[0096]
前置条件:vectri已经关于交线重新进行三角剖分
[0097]
输出:g中的黏合紧曲面沿交线切割得到的曲面片集sp
[0098]
算法步骤:
[0099]
(1)从vectri中任取一个三角形tri,遍历tri的三条边,如果不是交线边,就继续搜索与这条边相邻的三角形;如果是交线边则换下一条边,将搜索到的所有三角形从vectri中删去,初始化为一个曲面片p,并添加到sp当中;
[0100]
(2)重复(1)直到vectri为空,输出sp。
[0101]
我们的切割算法是一个特殊的深度优先搜索,从一个小三角形出发将搜索到的相邻三角形黏合起来,当遇到了交线边,则交线的相邻三角形就不黏合,最终实现的效果就是将黏合紧曲面沿交线切割成曲面片。
[0102]
下面将讨论最后一个难题,判断曲面片是否在连续介质内部,这个问题的本质难题在于判断一个点与一张黏合紧曲面的位置关系,算法如下:
[0103]
判断一个点与一张黏合紧曲面的位置关系:
[0104]
输入:r3中一点p,一张黏合紧曲面对应的三角形集vectri
[0105]
前置条件:vectri中三角形边的遍历顺序决定了三角形的外法向量n(对三角形任意两条边e1和e2,若顺序为从e1到e2,则e1×
e2的方向与n的方向相同),n与黏合紧曲面在这
一点的外法向量方向相同
[0106]
输出:1(在黏合紧曲面有界补集内),0(在黏合紧曲面上),-1(在黏合紧曲面无界补集内)
[0107]
算法步骤:
[0108]
(1)从p出发,任作一条射线l,将l与vectri中所有三角形求交。如果没有交点,返回-1;
[0109]
(2)选取与p距离最短的交点q,如果p和q重合返回0;
[0110]
(3)设q对应的三角形为tri,如果q在tri内部,设tri的外法向量为n,计算dot(n,q-p),如果大于0则返回1,小于0则返回-1;
[0111]
(4)重复(1)(2)(3)。
[0112]
这个算法成立的原因在于从p出发的射线与黏合紧曲面的所有交点当中,我们选取的是最近的交点q,线段pq上除q以外的点同属于一个连通分量,所以它们与黏合紧曲面的位置关系是一样的,如果向量q-p与q所在三角形外法向量的夹角小于九十度,则q-p必然属于黏合紧曲面内部;如果大于90度,则q-p属于黏合紧曲面外部;不存在等于90度的情况,因为q是三角形的内点,并且是射线上离p最近的点。
[0113]
我们的算法在设计过程中都遵循一个不确定性参数的唯一准则:当两个点的距离小于用户给定的容忍度∈的时候,我们将其视为同一个点。
[0114]
不确定性参数的唯一准则的意义在于:(1)浮点系统是有误差的,对于同一个点,在计算过程中坐标可能会有差异,这一准则可以让我们忽略这些差异,保证算法的正确运行;(2)线段求交点是计算几何当中很困难的一个问题,当两条线段的斜率充分接近时,计算出的交点的误差会非常巨大。而这一准则可以使得我们在线段求交时,将这种病态的情形视为平行的情况来求交点,对于斜率相差较大的线段才使用通常的求交,从而使得我们的计算误差减小,程序更稳定。
[0115]
下面将讨论如何将这一准则应用到程序当中。首先,我们定义了一个顶点比较函数pointcompare(point a,point b),这个函数会判断点a和点b的距离是否小于∈,在所有需要添加顶点或是判断点与点之间关系的算法,都会调用这个函数。比如,在三角剖分时,会构造一个顶点集,这在c++当中是一个set,它的比较函数是我们定义的pointcompare函数,这保证了顶点集中的点之间的距离都是大于∈的。利用pointcompare函数,可以定义segmentcompare函数,用来比较两条线段是否相等,它会判断两条线段的两个端点是否相等,如果两条线段的两个端点分别相等(距离小于∈),则认为这两条线段也重合。在判断平行关系的时候,比如线段是否平行,对于线段s1和s2,设其对应的向量为和我们计算其中norm()函数返回给定向量的模长,当结果小于∈时,认为s1和s2平行。对于程序中涉及数字比较的算法,也会引入这一准则,这可以保证程序运行时忽略浮点误差带来的影响。
[0116]
上述对实施例的描述是为便于本技术领域的普通技术人员能理解和应用本发明,熟悉本领域技术的人员显然可以容易地对上述实施例做出各种修改,并把在此说明的一般原理应用到其他实施例中而不必经过创造性的劳动。因此,本发明不限于上述实施例,本领域技术人员根据本发明的揭示,对于本发明做出的改进和修改都应该在本发明的保护范围之内。

技术特征:


1.一种模拟车间中原料研磨过程的形状提取方法,包括如下步骤:(1)通过三角剖分算法及相应操作获得铣刀与原材料的曲面片;(2)对曲面片进行黏合以得到若干曲面;(3)根据步骤(2)中得到的曲面计算确定铣刀与原材料的交集;(4)计算确定铣刀与原材料交集的补集,进而将原材料与该补集求交即得到研磨完成后原材料的形状。2.根据权利要求1所述的形状提取方法,其特征在于:所述步骤(1)的具体实现方式如下:1.1利用三角剖分算法获得铣刀和原材料的界面,进而求得两界面之间的交线;1.2将铣刀界面与原材料界面的三角网格沿交线重新做三角剖分;1.3将重新剖分后两界面新的三角网格沿交线剪开,得到铣刀与原材料的若干曲面片。3.根据权利要求2所述的形状提取方法,其特征在于:所述步骤1.3中对于任一铣刀的曲面片,若其包含在原材料空间内部,则将其保留,否则删除;对于任一原材料的曲面片,若其包含在铣刀空间内部,则将其保留,否则删除。4.根据权利要求2所述的形状提取方法,其特征在于:所述步骤(1)中得到的曲面片,其法向量方向指向铣刀与原材料的外部。5.根据权利要求1所述的形状提取方法,其特征在于:所述步骤(2)的具体实现方式如下:2.1对于任一曲面片t1中的任一边界曲线a,寻其他曲面片的边界曲线,若存在有一曲面片t2的边界曲线与边界曲线a重合且方向相反,则计算曲面片t2法向量方向与曲面片t1法向量方向的夹角,从而确定两个曲面片的夹角;2.2根据步骤2.1选择与曲面片t1夹角最小的曲面片,将其与曲面片t1沿边界曲线a黏合起来;2.3根据步骤2.1~2.2遍历所有曲面片的边界曲线,直到所有边界曲线被黏合,从而得到若干曲面。6.根据权利要求5所述的形状提取方法,其特征在于:所述边界曲线为其所在曲面片法向量方向的右手螺旋确定。7.根据权利要求1所述的形状提取方法,其特征在于:所述步骤(3)的具体实现方式为:对于步骤(2)中得到的任一曲面,计算求取其所有自相交的线,沿这些线剪开后得到的曲面片个数若为1,则将该曲面输出并纳入铣刀与原材料的交集;若得到的曲面片个数大于1,则将这些曲面片的法向量方向反向,并返回执行步骤(2)后将得到的曲面输出并纳入铣刀与原材料的交集。8.根据权利要求1所述的形状提取方法,其特征在于:所述步骤(4)中对于铣刀与原材料的交集,其由若干曲面组成,计算求取这些曲面所有自相交的线,沿这些线剪开得到若干曲面片,然后将这些曲面片的法向量方向反向,并返回执行步骤(2)得到若干曲面,对于这其中任一曲面,计算求取其所有自相交的线,沿这些线剪开后得到的曲面片个数若为1,则将该曲面输出并纳入铣刀与原材料交集的补集;若得到的曲面片个数大于1,则将这些曲面片的法向量方向反向,并返回执行步骤(2)后将得到的曲面输出并纳入铣刀与原材料交集的补集。

技术总结


本发明公开了一种模拟车间中原料研磨过程的形状提取方法,其首先对铣刀和原料进行建模,得到三角剖分,进而对三角剖分进行三角形求交、重三角化、切割、筛选合适的三角面片、黏合、拆分操作,从而得到原料研磨后的结果。本发明实现了研磨过程的模拟,其方法对于任意形状和个数的铣刀与原材料都适用,并且在研磨过程中,可以始终知道研磨剩下的原材料的连通分量个数、洞的个数,这有助于后续的分析。这有助于后续的分析。这有助于后续的分析。


技术研发人员:

张庆海 邱云昊 谭焱

受保护的技术使用者:

浙江大学

技术研发日:

2022.09.05

技术公布日:

2022/11/18

本文发布于:2022-11-25 20:07:24,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/4/3296.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:曲面   铣刀   边界   角形
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图