步文瑜,童 晶,孫海舟,劉金輝,陳正鳴
(河海大學(xué) 信息學(xué)部 物聯(lián)網(wǎng)工程學(xué)院,常州 213022)
橄欖核雕是古老的民間手工藝品,其因精美的刀工、精致的造型、多樣的藝術(shù)表現(xiàn)性而備受青睞.近年來(lái),人們開(kāi)始將數(shù)控雕刻機(jī)應(yīng)用于橄欖核雕刻領(lǐng)域,機(jī)器雕刻的出現(xiàn)解決了人工雕刻耗費(fèi)工時(shí)長(zhǎng)、品質(zhì)良莠不齊、無(wú)法大規(guī)模生產(chǎn)以及造價(jià)高等缺點(diǎn).但是如圖1所示,橄欖核形狀大小不一且中空[1],若將已有的三維模型直接用于橄欖核機(jī)器雕刻,易造成雕穿的現(xiàn)象,且無(wú)法發(fā)揮橄欖核雕隨形雕刻的藝術(shù)特色.目前業(yè)界在進(jìn)行橄欖核機(jī)器雕刻時(shí)仍然由專(zhuān)業(yè)人員使用商業(yè)CAD 軟件手工調(diào)整三維模型再進(jìn)行數(shù)控編程得到雕刻刀路.這個(gè)過(guò)程需要較高的人力成本且具有不可復(fù)制性.如果存在一種面向橄欖核機(jī)器雕刻的模型編輯與刀具路徑規(guī)劃方法,必定會(huì)大大改善目前橄欖核機(jī)器雕刻的加工效果,提高加工效率并可以以較低的成本實(shí)現(xiàn)隨形雕刻.
圖1 橄欖核外觀與內(nèi)部結(jié)構(gòu)
在橄欖核機(jī)器雕刻領(lǐng)域,硬件方面已相對(duì)成熟,除了可以使用常規(guī)雕刻機(jī)搭配橄欖核專(zhuān)用夾具進(jìn)行雕刻外,田杰宇等[2]研發(fā)了一種基于并聯(lián)機(jī)構(gòu)的核雕專(zhuān)用設(shè)備.然而目前學(xué)術(shù)界對(duì)面向橄欖核機(jī)器雕刻的模型編輯與刀具路徑規(guī)劃研究較少,難以對(duì)工業(yè)界提供具有針對(duì)性的指導(dǎo).
三維模型變形問(wèn)題一直是國(guó)內(nèi)外計(jì)算機(jī)圖形學(xué)領(lǐng)域的研究熱點(diǎn),經(jīng)過(guò)眾多學(xué)者多年研究已經(jīng)取得了諸多研究成果.空間變形技術(shù)最早由Sederberg 等[3]提出,主要思想是將待變形的目標(biāo)模型嵌入到某個(gè)控制網(wǎng)格中,通過(guò)對(duì)控制網(wǎng)格頂點(diǎn)的操作使嵌入其中的目標(biāo)模型基于函數(shù)插值進(jìn)行變形.此后學(xué)者們提出了一系列無(wú)需控制網(wǎng)格的方法如最小二乘法[4]、徑向基函數(shù)法(radical basis function,RBF)[5]及線性混合蒙皮法[6]等.其中,徑向基函數(shù)法基于徑向基函數(shù)插值技術(shù)生成光滑的插值曲面,是一種常用且快速的無(wú)控制網(wǎng)格法.Botsch 等[7]通過(guò)定義一個(gè)三維徑向基函數(shù)插值變形場(chǎng)并求解線性方程組,得到徑向基函數(shù)混合權(quán)重以及表示仿射變換的低次多項(xiàng)式的系數(shù),從而對(duì)目標(biāo)模型進(jìn)行變形.Levi 等[8]提出采用測(cè)地距離作為基函數(shù)的距離形式,實(shí)現(xiàn)了較為自然的變形.
空間變形技術(shù)運(yùn)算速度快,且對(duì)目標(biāo)模型的表示方式?jīng)]有要求,因此得到了廣泛的應(yīng)用,然而在進(jìn)行大尺度變形時(shí),空間變形技術(shù)不能很好地保持模型原有的局部特征.基于曲面的變形可以很好地解決這一問(wèn)題[9].其主要思想是:預(yù)先在目標(biāo)模型上選擇一些頂點(diǎn)作為變形控制頂點(diǎn),移動(dòng)控制頂點(diǎn),其他頂點(diǎn)通過(guò)優(yōu)化能量函數(shù)發(fā)生相應(yīng)的變化,從而得到最終變形結(jié)果[10].在此框架下,Sorkine 等[11]提出一種近似剛性(as rigid as possible,ARAP)三維模型變形方法:將模型中每個(gè)頂點(diǎn)以及該頂點(diǎn)1-鄰域的三角面片定義為一個(gè)單元,在變形過(guò)程中,將單元實(shí)際變換與剛性變換的差值定義為剛性能量函數(shù),然后在后續(xù)操作中基于“變形-求局部旋轉(zhuǎn)-再變形”的迭代過(guò)程最小化該函數(shù),保證每個(gè)單元近似剛性變形,從而盡可能地保持目標(biāo)模型的局部幾何細(xì)節(jié).此后眾多學(xué)者針對(duì)能量函數(shù)的定義、單元的定義等對(duì)ARAP 變形方法提出了改進(jìn)方案:Levi等[12]提出一種基于旋轉(zhuǎn)光滑項(xiàng)的改進(jìn)版本的能量函數(shù)SR-ARAP,Chen 等[13]將 ARAP 方法中的單元從頂點(diǎn)的1-鄰域三角面片擴(kuò)展到r-鄰域三角面片,Colaianni等[14]在原 ARAP 的能量形式中加入各向異性的局部變換等.ARAP 算法實(shí)現(xiàn)簡(jiǎn)單,易于操控,它是目前基于曲面的變形框架下變形效果較好的算法.
在基于三維數(shù)字模型的數(shù)控加工刀具路徑規(guī)劃領(lǐng)域,主要方法有偏置刀位點(diǎn)路徑截面法(cutter location,CL 路徑截面法)和刀觸點(diǎn)路徑截面法(cutter contact,CC 路徑截面法).CC 路徑截面法如圖2所示,用一組平行的約束面與被加工模型求交,將交線作為刀具接觸點(diǎn)路徑來(lái)生成刀具軌跡[15],約束面一般是平面[16],也稱(chēng)為截平面.CC 路徑截面法可以靈活控制走刀路線,生成均勻的刀具路徑,因此加工效率較高,適合復(fù)雜模型的加工[17].在對(duì)CC 路徑截面的研究中,邱曉杰等[18]采用二階連續(xù)可導(dǎo)的三次B 樣條曲線對(duì)切片得到的刀觸點(diǎn)軌跡進(jìn)行擬合,繼而按一定的加工步長(zhǎng)對(duì)其進(jìn)行插補(bǔ)得到最終的刀觸點(diǎn)軌跡.孫殿柱等[19]針對(duì)三角貝塞爾曲面引入R×S 樹(shù)快速準(zhǔn)確地獲取相交面片集,并自適應(yīng)地離散為三角網(wǎng)格,然后計(jì)算截平面與離散后的三角網(wǎng)格的交點(diǎn)并進(jìn)行偏置作為刀具路徑;Li 等[20]針對(duì)圓角刀具的特性,利用模型切片數(shù)據(jù)直接得到刀觸點(diǎn)軌跡,通過(guò)刀觸點(diǎn)偏置計(jì)算刀位點(diǎn)軌跡,然后進(jìn)行干涉檢測(cè)處理得到刀具路徑.
圖2 刀觸點(diǎn)路徑截面法
雖然三維模型變形與刀具路徑規(guī)劃皆有諸多研究成果,但是尚未有將二者有機(jī)結(jié)合并應(yīng)用于橄欖核機(jī)器雕刻場(chǎng)景以及針對(duì)該應(yīng)用場(chǎng)景進(jìn)行特定優(yōu)化的研究工作.所以當(dāng)前橄欖核機(jī)器雕刻領(lǐng)域仍存在以下不足和待解決的痛點(diǎn):若直接將標(biāo)準(zhǔn)模型應(yīng)用于橄欖核機(jī)器雕刻,如圖3所示,有一定風(fēng)險(xiǎn)出現(xiàn)雕穿的現(xiàn)象,且不能體現(xiàn)橄欖核隨形雕刻的藝術(shù)特色;若由專(zhuān)業(yè)3D 建模設(shè)計(jì)師使用商業(yè)CAD 軟件制作橄欖核雕刻模型,再進(jìn)行數(shù)控編程得到加工路徑,整個(gè)過(guò)程需要跨行業(yè)合作,時(shí)間上往往需要數(shù)小時(shí)甚至數(shù)天,有較高的人工成本與時(shí)間成本,最終效果與設(shè)計(jì)師的技術(shù)水平、審美水平高度相關(guān),不具備可復(fù)制性,不能批量生產(chǎn),同時(shí)個(gè)性化設(shè)計(jì)較為復(fù)雜.
圖3 標(biāo)準(zhǔn)模型直接雕刻出現(xiàn)雕穿的現(xiàn)象
據(jù)此,本文基于改進(jìn)的RBF 變形方法與ARAP 變形方法以及CC 路徑截面法,提出了一種面向橄欖核雕刻的模型編輯和刀具路徑規(guī)劃方法,具體技術(shù)方案流程如圖4所示.
圖4 技術(shù)方案流程圖
首先,輸入橄欖核模型與待雕刻模型,基于主成分分析法對(duì)橄欖核模型與待雕刻模型進(jìn)行剛性對(duì)齊,繼而使用改進(jìn)的RBF 變形算法與ARAP 變形算法進(jìn)行模型變形得到編輯后的待加工模型,然后基于模型拓?fù)浣Y(jié)構(gòu)與掃描平面法對(duì)編輯后的待加工模型進(jìn)行模型切片,再由切片信息作為基數(shù)據(jù)通過(guò)干涉處理與坐標(biāo)映射生成加工刀具路徑,最后進(jìn)行雕刻加工,得到加工成品.
模型編輯階段的主要目標(biāo)為:基于橄欖核模型調(diào)整編輯待雕刻模型,使待雕刻模型可以在保持基本形狀與細(xì)節(jié)的前提下,盡可能地填充橄欖核模型,避免在雕刻過(guò)程中雕穿,并做到隨形雕刻.
為方便后續(xù)待雕刻模型在橄欖核模型約束下的變形操作,首先需要將橄欖核模型O與 待雕刻模型G調(diào)整到合適的相對(duì)位置.
根據(jù)兩模型的頂點(diǎn)信息,使用主成分分析法利用協(xié)方差矩陣計(jì)算得到兩模型的主軸,進(jìn)而計(jì)算得到兩模型的方向包圍盒BO與BG,然后計(jì)算BO與BG之間的仿射變換矩陣MAffine.
對(duì)待雕刻模型G施加上述仿射變換得到G′,計(jì)算公式如式(1)、式(2)所示:
兩模型剛性對(duì)齊前后如圖5所示.此后,為方便后續(xù)刀路生成過(guò)程中刀位點(diǎn)坐標(biāo)計(jì)算,再將兩者共同進(jìn)行仿射變換至:主軸與坐標(biāo)系z(mì)軸重合,橄欖核模型O中最低點(diǎn)z軸坐標(biāo)為0.
圖5 剛性對(duì)齊前后對(duì)比
為使待雕刻模型更好地填充適配橄欖核模型,在雕刻過(guò)程中更好地保留橄欖核自身的特點(diǎn)做到隨形雕刻,需要進(jìn)行模型變形.考慮到待雕刻模型與橄欖核模型自身的類(lèi)圓柱特性,本文使用改進(jìn)的基于徑向基函數(shù)(RBF)的變形算法以及盡可能剛性(ARAP)變形算法,結(jié)合層次包圍盒樹(shù)(bounding volume hierarchy,BVH)進(jìn)行碰撞檢測(cè),最終實(shí)現(xiàn)待雕刻模型隨橄欖核模型隨形變形的效果.
2.2.1 RBF 變形
RBF 插值技術(shù)可以生成光滑的插值曲面,被廣泛應(yīng)用于網(wǎng)格變形.由一組變形控制點(diǎn)ci和相應(yīng)的權(quán)重wi定義的徑向基函數(shù)的一般形式為:
其中,‖ci-x‖表示x與ci的歐氏距離,Mx+t是一個(gè)低次多項(xiàng)式,用來(lái)表示仿射變換部分.由于待雕刻模型呈現(xiàn)出明顯的類(lèi)圓柱特性,因此對(duì)其在同一個(gè)高度(z坐標(biāo)相同)的頂點(diǎn)進(jìn)行同樣的仿射變換,會(huì)更大限度地保持原模型局部細(xì)節(jié)特征,同時(shí)會(huì)減少時(shí)間消耗.因此,可以重新定義式(3)中‖ci-x‖的為‖ci(z)-x(z)‖,表示x與ci在z軸投影距離,將式(3)改寫(xiě)成:
將N個(gè)控制點(diǎn)處的位移帶入式(4):
將式(5)與以下約束條件:
解該線性方程組可得一系列權(quán)重系數(shù)wi以及表示仿射變換的低次多項(xiàng)式系數(shù)M,t.徑向基函數(shù)φ(x)有多種形式,在本文特定網(wǎng)格變形的場(chǎng)景下,取高斯曲面函數(shù):.
下一步需要確定控制點(diǎn)并設(shè)置控制點(diǎn)位移.基于待雕刻模型的類(lèi)圓柱特性以及對(duì)‖ci-x‖的重定義,不需要進(jìn)行復(fù)雜的控制點(diǎn)選取與控制點(diǎn)位移的設(shè)置.只需選擇n個(gè)特定高度h1,···,hn,繼而對(duì)待雕刻模型中與平面z=hi相交的三角面片上所有頂點(diǎn)設(shè)為控制點(diǎn),并將控制點(diǎn)位移設(shè)置為待雕刻模型放縮rd=RO/RG倍時(shí)控制點(diǎn)的位移,RO與RG分別表示橄欖核模型O與待雕刻模型G中與平面z=hi相交的所有三角面片的重心距點(diǎn)(0,0,hi)的平均距離,如圖6所示.
圖6 放縮倍數(shù)r 的確定示意圖
根據(jù)式(8)求解得到的權(quán)重系數(shù)wi以及表示仿射變換的低次多項(xiàng)式的系數(shù)M,t,帶入式(4)即可得到任一頂點(diǎn)變形后的位置,也即得到了變形后的模型.
2.2.2 基于層次包圍盒樹(shù)的碰撞檢測(cè)
在待雕刻模型經(jīng)過(guò)一次控制點(diǎn)選取及模型變形后,為保證變形后的模型仍在橄欖核模型內(nèi)部,需要將變形后的待雕刻模型與橄欖核模型進(jìn)行碰撞檢測(cè).
為降低后續(xù)碰撞檢測(cè)計(jì)算復(fù)雜度,提高計(jì)算速度,首先對(duì)兩模型構(gòu)建層次包圍盒樹(shù).其核心思想是使用幾何特征簡(jiǎn)單的包圍盒近似表示復(fù)雜的幾何模型,在進(jìn)行碰撞檢測(cè)時(shí),僅對(duì)包圍盒重疊的模型進(jìn)一步計(jì)算.將包圍盒嵌套而構(gòu)造樹(shù)狀結(jié)構(gòu),可以方便地進(jìn)行逐層求精以及精確求交.構(gòu)建層次包圍盒樹(shù)的步驟如下.
(1)首先構(gòu)建模型的AABB 包圍盒,并將其作為層次包圍盒樹(shù)的Root 節(jié)點(diǎn);
(2)將當(dāng)前節(jié)點(diǎn)包圍盒中最長(zhǎng)軸作為分割軸;
(3)使用取中點(diǎn)劃分的分割策略,構(gòu)建當(dāng)前節(jié)點(diǎn)的左右子節(jié)點(diǎn);
(4)將當(dāng)前節(jié)點(diǎn)的左節(jié)點(diǎn)和右節(jié)點(diǎn)分別作為當(dāng)前節(jié)點(diǎn),重復(fù)步驟(2)與(3)直到所有節(jié)點(diǎn)包圍盒都只存在一個(gè)三角面片.
對(duì)橄欖核模型O構(gòu)建BVH 樹(shù)的過(guò)程示意圖如圖7所示,按上述步驟構(gòu)造的BVH 樹(shù)是一個(gè)二叉樹(shù),其結(jié)構(gòu)如圖8所示.
圖7 構(gòu)造橄欖核模型O 層 次包圍盒示意圖
圖8 BVH 樹(shù)結(jié)構(gòu)
依照上述過(guò)程完成對(duì)橄欖核模型與待雕刻模型建樹(shù)后,對(duì)兩模型進(jìn)行碰撞檢測(cè).定義碰撞檢測(cè)函數(shù),其實(shí)現(xiàn)邏輯如下:輸入兩節(jié)點(diǎn)NA與NB,若兩節(jié)點(diǎn)不相交則輸出false,結(jié)束;若相交,則將NA與NB依次賦值為其左右子節(jié)點(diǎn),遞歸調(diào)用該函數(shù),直至不相交輸出false或NA與NB皆為葉子節(jié)點(diǎn);若NA與NB皆為葉子節(jié)點(diǎn),再精確判斷兩葉子節(jié)點(diǎn)對(duì)應(yīng)的三角面片是否相交,相交輸出true,否則輸出false.將兩模型層次包圍盒樹(shù)的根節(jié)點(diǎn)NO與NG輸入到該碰撞檢測(cè)函數(shù),返回值為true 則代表兩模型相交,返回值為false 則代表兩模型不相交.
結(jié)合第2.2.1 節(jié)所述改進(jìn)的RBF 變形與本節(jié)所述基于層次包圍盒樹(shù)的碰撞檢測(cè),將待雕刻模型進(jìn)行變形.其流程如圖9所示:將每一次RBF 變形的控制點(diǎn)放縮倍數(shù)改為rd/n,rd為第2.2.1 節(jié)求得的放縮倍數(shù).每進(jìn)行一次RBF 變形后,都進(jìn)行碰撞檢測(cè),若不發(fā)生碰撞,則進(jìn)行下一次變形,否則結(jié)束變形并回退到上一次變形結(jié)果.由于橄欖核模型O在整個(gè)過(guò)程中不進(jìn)行任何改變,所以只對(duì)其進(jìn)行一次BVH 樹(shù)的構(gòu)建,減少時(shí)間消耗.
圖9 待雕刻模型變形流程圖
待雕刻模型經(jīng)過(guò)上述變形后效果如圖10(b)所示.模型變形前后較好地保持了局部細(xì)節(jié),沒(méi)有出現(xiàn)明顯的失真現(xiàn)象.
圖10 模型變形對(duì)比圖
2.2.3 ARAP 網(wǎng)格變形
由于橄欖核呈梭形“兩頭小,中間大”的特性,經(jīng)過(guò)基于RBF 的變形后,其兩端仍有部分空白空間,針對(duì)這一問(wèn)題采用ARAP 變形對(duì)待雕刻模型G進(jìn)行變形使其更好地填充橄欖核模型.
首先進(jìn)行ARAP 變形控制點(diǎn)的選取:將待雕刻模型G與z軸求交,得到兩個(gè)相交三角面片,將三角面片上所有頂點(diǎn)加入控制點(diǎn)集VC.
對(duì)控制點(diǎn)集VC中每個(gè)頂點(diǎn)v,取其周?chē)霃綖閞的球體內(nèi)的所有頂點(diǎn)作為與該控制頂點(diǎn)v對(duì)應(yīng)的自由點(diǎn)集VF.此外,為簡(jiǎn)化后續(xù)計(jì)算,提升網(wǎng)格變形速度,取頂點(diǎn)v周?chē)霃綖?r的球體內(nèi)的所有頂點(diǎn)作為與該控制頂點(diǎn)對(duì)應(yīng)的全部感興趣頂點(diǎn)集VI,r=0.2×zmax.
定義控制頂點(diǎn)v對(duì)應(yīng)的點(diǎn)集VI組成的網(wǎng)格為輸入網(wǎng)格S.獲取輸入網(wǎng)格S的鄰接信息,定義單元(cell)為網(wǎng)格S中頂點(diǎn)vi及其1-鄰域頂點(diǎn),定義一個(gè)單元變形前后產(chǎn)生的剛性能量如式(9)所示:
刀具路徑規(guī)劃階段的主要目標(biāo)為:根據(jù)模型編輯后得到的待雕刻模型,進(jìn)行模型切片、干涉處理并根據(jù)預(yù)置的刀具信息生成可供雕刻機(jī)直接讀取并執(zhí)行加工的刀具路徑.
模型切片是將一組平行的截平面依次與待雕刻模型求交,得到一系列閉合切片輪廓,作為生成刀具路徑的基數(shù)據(jù).
3.1.1 基于掃描平面法得到相交三角面片
3.1.2 相交三角面片交點(diǎn)計(jì)算
圖11 中7 種情況的代數(shù)特征及交點(diǎn)情況如表1.
圖11 三角面片與截平面相交情況
表1 三角面片與截平面相交情況的代數(shù)特征與交點(diǎn)情況
要求得具體的截交輪廓線,需要對(duì)截平面與三角面片求交,示意圖如如圖12所示.
圖12 三角面片與截平面交點(diǎn)示意圖
對(duì)與任一與截平面相交的△ABC,將(x02,y02,zi)與代入AC所在直線方程即可求得x02,y02的值:
同理可計(jì)算得到x12,y12,即可得到截平面與相交三角面片的精確交點(diǎn).
3.1.3 基于拓?fù)淠P偷玫角衅喞?/p>
第3.1.1 節(jié)與第3.1.2 節(jié)可以得到與當(dāng)前層高z相交的三角面片集合Fi以及截平面與所有三角面片的交點(diǎn).接下來(lái)需要基于模型的拓?fù)浣Y(jié)構(gòu)將上一小節(jié)得到的交點(diǎn)一定順序排列得到切片輪廓.在Fi中選擇一個(gè)未被使用過(guò)的三角面片作為種子面片,基于待雕刻模型的拓?fù)潢P(guān)系尋找種子面片的鄰接三角面片,直至遍歷Fi中所有三角面片.對(duì)于任一特定截平面z=zi,得到其切片數(shù)據(jù)的流程如圖13所示.
圖13 三角面片與截平面交點(diǎn)示意圖
首先設(shè)置Fi中每一個(gè)三角面片狀態(tài)為未遍歷;進(jìn)行第一層循環(huán),在Fi中任選一未遍歷三角面片作為種子面片;若能夠找到種子面片,則創(chuàng)建一輪廓數(shù)據(jù)contour,并將其與截平面的交點(diǎn)加入當(dāng)前contour;進(jìn)入第二層循環(huán),基于拓?fù)浣Y(jié)構(gòu)根據(jù)當(dāng)前三角面片尋找與之相鄰的未遍歷三角面片,并將其與截平面的交點(diǎn)加入當(dāng)前contour;若找不到種子面片則Fi中所有面片均已被遍歷,則輸出該層切片數(shù)據(jù)layer 并結(jié)束流程.
將待雕刻模型進(jìn)行切片,結(jié)果如圖14所示.
圖14 模型切片結(jié)果
在得到切片數(shù)據(jù)后,若直接將切片數(shù)據(jù)生成刀具路徑,則會(huì)在雕刻過(guò)程中出現(xiàn)過(guò)切干涉的現(xiàn)象,為防止這一現(xiàn)象出現(xiàn),需要進(jìn)行干涉處理.
首先,對(duì)切片數(shù)據(jù)中每一個(gè)點(diǎn),根據(jù)其笛卡爾坐標(biāo)(x,y,z)求其柱面坐標(biāo)(r,θ,z):
然后需要確定刀軸方向,對(duì)于四軸三聯(lián)動(dòng)刀具路徑,某一準(zhǔn)刀位點(diǎn)刀軸矢量為該層原點(diǎn)(0,0,zi)指向切片數(shù)據(jù)中該點(diǎn)的方向.對(duì)于切片數(shù)據(jù)中每一個(gè)點(diǎn),過(guò)點(diǎn)(0,0,zi),沿刀軸矢量方向做射線,得到一個(gè)或多個(gè)交點(diǎn).若存在多個(gè)交點(diǎn),如圖15所示,交點(diǎn)為A,B,C,則取其中柱面坐標(biāo)r最大的一點(diǎn),即點(diǎn)C點(diǎn).對(duì)切片數(shù)據(jù)中每一個(gè)點(diǎn)進(jìn)行上述操作則可得到無(wú)干涉的準(zhǔn)刀位點(diǎn).
圖15 無(wú)干涉準(zhǔn)刀位點(diǎn)計(jì)算示意圖
進(jìn)行干涉處理前后對(duì)比如圖16所示.
圖16 干涉處理前后對(duì)比
生成最終四軸三聯(lián)動(dòng)刀具路徑,需要結(jié)合具體刀具信息.為方便后續(xù)處理,保證刀軸矢量豎直向上,即將第3.2 節(jié)初步干涉處理后的切片數(shù)據(jù)根據(jù)其柱面坐標(biāo)進(jìn)行柱面展開(kāi),柱面展開(kāi)的坐標(biāo)映射關(guān)系:
其中,R為展開(kāi)半徑,一般取待雕刻模型所有頂點(diǎn)柱面坐標(biāo)中r的最大值.
接下來(lái)需要引入刀具模型,幾種常見(jiàn)刀具:球頭刀、角刀和平底刀模型如圖17所示.
圖17 常用加工刀具
在第3.2 節(jié)得到了干涉處理后的的切片數(shù)據(jù),其中點(diǎn)的坐標(biāo)作為最終刀觸點(diǎn)Pc,而刀具路徑中需要使用刀位點(diǎn)Pl,由刀觸點(diǎn)Pc得到刀位點(diǎn)Pl計(jì)算公式為:
其中,R為刀具半徑,r為刀角半徑,nt為刀軸單位矢量(0,0,1),nt為待加工模型上該點(diǎn)的單位法向量.由此可以計(jì)算出一系列刀位點(diǎn)數(shù)據(jù).但是由于式(14)的計(jì)算,會(huì)在一些刀位點(diǎn)處造成刀路自交,在另一些刀位點(diǎn)處造成過(guò)切,如圖18所示.
對(duì)于圖18(a)的情況,計(jì)算無(wú)干涉刀位點(diǎn)的過(guò)程與第3.2 節(jié)的干涉處理相似,但由于經(jīng)過(guò)了柱面展開(kāi),所以要將過(guò)準(zhǔn)刀位點(diǎn)的豎直線與刀位面求交,得到一系列的交點(diǎn),取所有交點(diǎn)中z值最大的交點(diǎn),即為該準(zhǔn)刀位點(diǎn)所對(duì)應(yīng)的無(wú)干涉刀位點(diǎn).
圖18 刀位點(diǎn)計(jì)算后刀路干涉示意圖
對(duì)于圖18(b)的情況,需要為之添加點(diǎn)保護(hù)面,由于在求解某一無(wú)干涉刀位點(diǎn)時(shí),其x坐標(biāo)保持不變,僅與y,z坐標(biāo)有關(guān),所以將保護(hù)面的三維曲面投影成二維曲線,如圖19所示.因此,該情況下求無(wú)干涉刀位點(diǎn)便轉(zhuǎn)換成直線與二次曲面的求交問(wèn)題,如圖19 中所示,其中xl=xc,yl=yc,對(duì)于zl:
圖19 點(diǎn)保護(hù)面在yoz平面的二維投影與刀觸點(diǎn)刀位點(diǎn)示意圖
平底刀:zl=zc
經(jīng)如上步驟,最終生成的刀具路徑如圖20所示.隨后,為適配雕刻機(jī),再將柱面展開(kāi)后的坐標(biāo)(X,Y,Z)映射成四軸三聯(lián)動(dòng)坐標(biāo)(X,A,Z),即將Y坐標(biāo)[0,2πR)映射到旋轉(zhuǎn)軸成為A坐標(biāo)[0,360),映射公式為:其中R為式(13)中的展開(kāi)半徑.最后將得到的四軸三聯(lián)動(dòng)坐標(biāo)數(shù)據(jù)前后加上機(jī)器能識(shí)別的特定G 代碼即可得到最終刀具路徑.
圖20 柱面展開(kāi)的最終刀具路徑
本小節(jié)將進(jìn)行實(shí)驗(yàn)驗(yàn)證本文方法的有效性.在模型編輯階段,為驗(yàn)證變形后的待雕刻模型是否可以更好地填充橄欖核模型,在橄欖核模型與待雕刻模型模型同一高度h處分別進(jìn)行采樣,得到兩模型與平面z=h相交三角面片集合,依第2.2.1 節(jié)所述的方法分別計(jì)算橄欖核模型與待雕刻模型中相交三角面片重心與點(diǎn)(0,0,h)的平均距離R與r.使用變形前后在同一采樣高度h計(jì)算得到的r/R數(shù)值作為變形后的待雕刻模型能否更好地填充橄欖核模型的指標(biāo),r/R越接近1,表示填充效果越好.
圖21 不同變形方法前后對(duì)比
為驗(yàn)證本文算法的通用性,除了對(duì)“財(cái)神”模型進(jìn)行實(shí)驗(yàn)外,還對(duì)另外3 個(gè)模型進(jìn)行了實(shí)驗(yàn),結(jié)果如圖22所示.由圖22 可以看出,變形后模型r與R之比相較變形前明顯提高,“財(cái)神”模型平均提高0.28,“小和尚”模型平均提高0.17,“小財(cái)主”模型平均提高0.19,“生肖豬”模型平均提高0.20,變形后的模型能更好地填充適應(yīng)橄欖核模型且能夠較好的保持原模型的細(xì)節(jié)特征.
圖22 模型變形前后對(duì)比
在刀具路徑規(guī)劃階段,為驗(yàn)證所得刀具路徑的實(shí)際雕刻效果,使用鈺雕機(jī)械設(shè)備廠生產(chǎn)的最高支持四軸聯(lián)動(dòng)的雕刻機(jī)進(jìn)行雕刻實(shí)驗(yàn),雕刻機(jī)如圖23所示.雕刻刀具選用常見(jiàn)的錐度平底刀(3.175×20°×0.2).
圖23 雕刻機(jī)實(shí)物圖
雕刻結(jié)果如圖24所示.由圖24 可以看出,本文所述方法可以得到較好的模型變形效果,且可以快速得到適用于機(jī)器雕刻的四軸三聯(lián)動(dòng)刀具路徑,實(shí)際雕刻效果良好,沒(méi)有出現(xiàn)雕穿的現(xiàn)象且能體現(xiàn)出橄欖核隨形雕刻的藝術(shù)特色.
圖24 4 個(gè)模型的實(shí)際雕刻效果實(shí)際雕刻效果
本文提出了一種面向橄欖核機(jī)器雕刻的模型編輯與刀具路徑規(guī)劃方法,首先,在剛性對(duì)其后基于改進(jìn)的RBF 變形算法與ARAP 變形算法,結(jié)合碰撞檢測(cè)算法在橄欖核模型的約束下對(duì)待雕刻模型進(jìn)行變形.再通過(guò)模型切片、干涉處理等步驟得到待雕刻模型的四軸三聯(lián)動(dòng)加工刀具路徑.實(shí)驗(yàn)表明,本文變形方法可以更好的生成適用于橄欖核隨形雕刻的三維模型,與初始模型相比,變形后的待雕刻模型可以更好地填充橄欖核模型,所生成的四軸三聯(lián)動(dòng)刀具路徑亦可以平穩(wěn)快速地加工得到效果良好的隨型雕刻結(jié)果,有較強(qiáng)的實(shí)用價(jià)值.
但本文方法仍存在不足之處:由于四軸三聯(lián)動(dòng)刀具路徑刀抽始終指向圓心,為避免發(fā)生干涉,在干涉處理中,部分模型細(xì)節(jié)會(huì)被舍棄.在后續(xù)研究工作中,可以使用四軸聯(lián)動(dòng)加工改善這一問(wèn)題.