袁潮,張嘯,邱松
基于動(dòng)力學(xué)找形方法的非連續(xù)多重曲面拓?fù)渲貥?gòu)研究
袁潮,張嘯,邱松
(清華大學(xué),北京 100084)
通過(guò)重拓?fù)涓咝У貙⒐I(yè)建模工程中的多重曲面(B-rep)文件轉(zhuǎn)化成均勻連續(xù)的網(wǎng)格(Mesh)文件,為參數(shù)化設(shè)計(jì)、有限元分析工作提供對(duì)接橋梁,形成參數(shù)化設(shè)計(jì)工作流閉環(huán)?;赗hino平臺(tái)下的算法插件,將預(yù)設(shè)有桿件彈簧力、邊界錨固力、目標(biāo)吸引力等約束的基礎(chǔ)網(wǎng)格,包覆到已知多重曲面上,并通過(guò)動(dòng)力學(xué)算法多次迭代收斂,將重拓?fù)渚W(wǎng)格無(wú)限趨近于原曲面,最終重構(gòu)為均勻連續(xù)、網(wǎng)格數(shù)可控的四邊網(wǎng)格。經(jīng)過(guò)此工藝流程后,設(shè)計(jì)師只需幾步點(diǎn)選操作,在幾分鐘內(nèi)即可對(duì)非連續(xù)多重曲面進(jìn)行重拓?fù)涔ぷ?,獲得的新網(wǎng)格均勻連續(xù),且面數(shù)可控,省去了大量人力修復(fù)時(shí)間。通過(guò)動(dòng)力學(xué)算法的重拓?fù)涔に嚕墒箙?shù)化設(shè)計(jì)師更順暢地對(duì)接工廠,同時(shí)使有限元分析輔助支持設(shè)計(jì)更具效率,是工業(yè)設(shè)計(jì)數(shù)字閉環(huán)的重要技術(shù)基礎(chǔ)之一。
動(dòng)力學(xué)找形;重拓?fù)?;參?shù)化設(shè)計(jì);網(wǎng)格映射;有限元分析;數(shù)據(jù)閉環(huán)
在工業(yè)生產(chǎn)中廣泛存在著使用參數(shù)曲面進(jìn)行表示的模型[1],如基于NURBS連續(xù)曲面或?qū)嶓w建模的表示方法[2],這類模型表示方法能很好地保存曲面的連續(xù)性信息。然而,在前期設(shè)計(jì)優(yōu)化階段,這類建模方式卻遠(yuǎn)遠(yuǎn)達(dá)不到網(wǎng)格建模的高效性。網(wǎng)格建模以離散化方式逼近連續(xù)曲面,雖然不具備NURBS曲面的連續(xù)性,但是在大多數(shù)不需要很高連續(xù)性要求的工業(yè)生產(chǎn)中,網(wǎng)格建模在表達(dá)復(fù)雜曲面及紋理細(xì)節(jié)時(shí)更具實(shí)用價(jià)值。同時(shí),隨著計(jì)算性設(shè)計(jì)時(shí)代的到來(lái),設(shè)計(jì)與數(shù)據(jù)的關(guān)系越發(fā)緊密,不論是外部數(shù)據(jù)的導(dǎo)入,還是對(duì)模型進(jìn)行有限元分析,都需要將多重曲面(B-rep)轉(zhuǎn)換為網(wǎng)格文件(Mesh)[3]。雖然市場(chǎng)現(xiàn)有的重拓?fù)涔ぞ吆芏?,但是大部分集中在?jì)算機(jī)動(dòng)畫(huà)領(lǐng)域或數(shù)字雕塑領(lǐng)域,很難與現(xiàn)有制造業(yè)建模水平匹配,而且強(qiáng)行使用這些平臺(tái)進(jìn)行重拓?fù)涔ぷ饕残枰肆M(jìn)行曲面連續(xù)性的優(yōu)化預(yù)處理,同樣費(fèi)時(shí)費(fèi)力。在計(jì)算機(jī)圖形學(xué)領(lǐng)域針對(duì)網(wǎng)格劃分問(wèn)題已有許多基礎(chǔ)方法[4],如Delaunay法[5],波前法[6],映射法[7]等。一些研究者針對(duì)建筑領(lǐng)域的形態(tài)也做過(guò)一些研究,如基于引導(dǎo)線偏移的方法[8],針對(duì)建筑地板的拓?fù)溥B鎖結(jié)構(gòu)研究[9],對(duì)自由形式網(wǎng)架結(jié)構(gòu)的研究[10],基于拓?fù)浣Y(jié)構(gòu)優(yōu)化的生物形態(tài)建筑研究[11]等,但是這些方法并不完全適用于工業(yè)產(chǎn)品領(lǐng)域的形態(tài)重拓?fù)溲芯?,況且相較于建筑形體,工業(yè)產(chǎn)品的形態(tài)往往更加復(fù)雜,同時(shí)對(duì)連續(xù)性及誤差精度等要求更高,因此,在建筑上優(yōu)化的一些方法并不能很好地適用于工業(yè)產(chǎn)品形態(tài)的重拓?fù)洹a槍?duì)工業(yè)生產(chǎn)領(lǐng)域中表面紋理的制作,此次研究提出了一種基于動(dòng)力學(xué)找形的方法將NURBS曲面模型進(jìn)行重拓?fù)渚W(wǎng)格化并進(jìn)行紋理制作的方法。
該工作流基本原理如下:首先需要操作者對(duì)拓?fù)鋷缀斡蟹浅;A(chǔ)的認(rèn)識(shí),對(duì)已知曲面進(jìn)行分類,可分為單一曲面(Surface)和多重曲面(B-rep)。其中單一曲面包括開(kāi)放的單一曲面(Open Surface)和封閉的單一曲面(Closed Surface)。多重曲面包括開(kāi)放的多重曲面(Open B-rep)和封閉的多重曲面(Closed B-rep)。針對(duì)目標(biāo)幾何的開(kāi)放性進(jìn)行分類,并分別進(jìn)行設(shè)計(jì)。幾何形體的類型見(jiàn)圖1。
圖1 幾何形體的類型
以“斯坦福兔”模型為例,在曲面分類中可被定義為“封閉的多重曲面”。其基本拓?fù)淠P途褪乔蝮w網(wǎng)格模型,不論其細(xì)節(jié)多煩瑣,都可以抽象為球體表面網(wǎng)格頂點(diǎn)的拓?fù)潢P(guān)系,見(jiàn)圖2。以一雙運(yùn)動(dòng)鞋的鞋底模型為例,其在曲面分類中可被定義為“開(kāi)放多重曲面”,其基本關(guān)系可通過(guò)一個(gè)平面網(wǎng)格進(jìn)行概括,不論其底部是否凹凸,都可抽象為平面網(wǎng)格上各頂點(diǎn)的坐標(biāo)變化,見(jiàn)圖3。
對(duì)于目標(biāo)模型,其開(kāi)洞(虧格)情況是最重要的拓?fù)湟?,基礎(chǔ)網(wǎng)格模型必須對(duì)開(kāi)口信息進(jìn)行描述,見(jiàn)圖4。重拓?fù)涔に嚥僮魅藛T需對(duì)目標(biāo)幾何有拓?fù)浣Y(jié)構(gòu)認(rèn)知能力,并用簡(jiǎn)單網(wǎng)格來(lái)概括目標(biāo)模型。針對(duì)網(wǎng)格細(xì)分等操作,可以使用建模軟件內(nèi)置的網(wǎng)格細(xì)分算法指令來(lái)完成,也可用插件(如Weaverbird)[12]完成?;A(chǔ)網(wǎng)格設(shè)計(jì)是一項(xiàng)類型概括工作,可以為計(jì)算機(jī)后續(xù)工作提供基本優(yōu)化方向。
圖2 斯坦福兔幾何形體的拓?fù)潢P(guān)系
圖3 鞋底幾何形體的拓?fù)潢P(guān)系
圖4 幾何形體的開(kāi)口信息
文中使用的動(dòng)力學(xué)找形方法是基于Rhino平臺(tái)下的可視化編程平臺(tái)Grasshopper中的一款名為Kangaroo的力學(xué)模擬仿真插件,見(jiàn)圖5。該插件可直接在Grasshopper中進(jìn)行交互式的力學(xué)模擬、力學(xué)優(yōu)化與力學(xué)找形。該插件由Daniel Piker開(kāi)發(fā)制作,可免費(fèi)用于商業(yè)和非商業(yè)項(xiàng)目中。目前最新的Kangaroo2已經(jīng)內(nèi)置于Rhino6的Grasshopper中。此插件可將網(wǎng)格文件中的點(diǎn)、線賦予不同的力學(xué)約束,在此項(xiàng)目中,筆者將網(wǎng)格邊緣頂點(diǎn)定義為“鎖定在目標(biāo)邊緣上”,以保證重拓?fù)涞木W(wǎng)格與目標(biāo)多重曲面的邊緣嚴(yán)格貼合;將網(wǎng)格內(nèi)部的線定義為“彼此約束的彈簧力”,以防止在擬合過(guò)程中各點(diǎn)位置移動(dòng)過(guò)大,而導(dǎo)致網(wǎng)格不均勻;將網(wǎng)格內(nèi)部頂點(diǎn)定義為“向目標(biāo)幾何的吸引力”及“球體彈性碰撞力”,吸引力可以保證重拓?fù)渚W(wǎng)格嚴(yán)謹(jǐn)?shù)匚皆谀繕?biāo)曲面上,彈性碰撞力可以防止網(wǎng)格出現(xiàn)自折疊現(xiàn)象,影響最終網(wǎng)格平滑度。Kangaroo算法會(huì)逐漸向一個(gè)穩(wěn)定解收斂,一般需要數(shù)十秒的等待,最終收斂到一個(gè)穩(wěn)定態(tài)。
圖5 動(dòng)力學(xué)找形階段用到的核心力學(xué)模擬單元
具體而言,網(wǎng)格每個(gè)頂點(diǎn)所受到的力可分為桿件彈力、球體彈性碰撞力、頂點(diǎn)與目標(biāo)曲面的彈性吸引力,及特定頂點(diǎn)的錨固力。這些力可用胡克定律原理進(jìn)行描述,其公式:
(1)
由胡克定律基本公式可得到網(wǎng)格頂點(diǎn)與頂點(diǎn)相互之間受到的彈力公式:
(2)
在網(wǎng)格形體中,網(wǎng)格的每個(gè)頂點(diǎn)都有與之相連接的多個(gè)相鄰點(diǎn)(Adjacent Vertices),因此在初始時(shí)刻所有Edge的平均長(zhǎng)度的計(jì)算公式:
(3)
頂點(diǎn)受到與之相連的Edge所具有的彈簧力見(jiàn)圖6。
圖6 Edge預(yù)設(shè)目標(biāo)長(zhǎng)度與當(dāng)前兩頂點(diǎn)之間的距離
(4)
兩球碰撞時(shí)的受力情況見(jiàn)圖7。當(dāng)兩球發(fā)生碰撞時(shí),計(jì)算兩球心距離與兩倍半徑的差值,可得出彈性碰撞力。網(wǎng)格頂點(diǎn)與頂點(diǎn)相互之間受到的彈力:
圖7 兩球碰撞時(shí)的受力情況
(5)
(6)
式(6)中為網(wǎng)格所有頂點(diǎn)的數(shù)目。
此外需要對(duì)每個(gè)頂點(diǎn)設(shè)定目標(biāo)曲面的彈性吸引力,其原理也符合胡克定律:
(7)
(8)
1.3.2 平衡求解
在上述合力的作用下,網(wǎng)格的頂點(diǎn)將在目標(biāo)曲面上運(yùn)動(dòng)。初始狀態(tài)下網(wǎng)格的頂點(diǎn)位置經(jīng)過(guò)一段時(shí)間運(yùn)動(dòng)后不再變動(dòng)(位置坐標(biāo)不再變化)或小于一定的誤差范圍(可以自行設(shè)置)時(shí),即為平衡狀態(tài),其頂點(diǎn)所受的合力為0,該過(guò)程變?yōu)槭芰ζ胶馇蠼鈫?wèn)題。Velocity- Verlet[13]算法能較好地模擬整個(gè)運(yùn)動(dòng)過(guò)程,對(duì)于此次求解平衡問(wèn)題其運(yùn)動(dòng)過(guò)程并不重要,重點(diǎn)是如何快速達(dá)到平衡收斂狀態(tài)。此外還有基于前向歐拉法[14]的簡(jiǎn)化求解,其特點(diǎn)是將力與點(diǎn)位置直接關(guān)聯(lián):(無(wú)量綱),然后進(jìn)行迭代更新:。其中為步長(zhǎng);為迭代次數(shù)。由于這種方法不要求運(yùn)動(dòng)過(guò)程的真實(shí)性,所以可以快速完成迭代求解,從而滿足平衡求解問(wèn)題的需要。此次基于Kangaroo算法提供的運(yùn)動(dòng)求解器(Solver)類似前向歐拉法的迭代求解,可以很方便地進(jìn)行求解,將以上這些約束力輸入求解器,可以設(shè)置每次迭代的時(shí)間步長(zhǎng)(步長(zhǎng)越大,運(yùn)算越快,步長(zhǎng)越小,運(yùn)動(dòng)過(guò)程模擬越真實(shí))。當(dāng)?shù)_(dá)到平衡狀態(tài)時(shí)在大多數(shù)情況下只需數(shù)十秒,即可得到平衡狀態(tài)下的網(wǎng)格形態(tài)。
以優(yōu)化Delaunay三角剖分網(wǎng)格的內(nèi)部頂點(diǎn)分布為測(cè)試對(duì)象,在規(guī)定的平面區(qū)域內(nèi)分別生成4種不同數(shù)量的隨機(jī)點(diǎn)(Random Point 2D),并分別進(jìn)行Delaunay三角剖分形成4種網(wǎng)格。需要在不改變外邊框和頂點(diǎn)連線關(guān)系的前提下,使網(wǎng)格內(nèi)部的頂點(diǎn)分布盡可能均勻。使用彈簧力和錨固力作為合力約束,Solve使用默認(rèn)設(shè)置(步長(zhǎng)為10)。不同網(wǎng)格面數(shù)量的網(wǎng)格計(jì)算所用時(shí)間的比較見(jiàn)圖8。從圖8中可以看出,當(dāng)初始網(wǎng)格面數(shù)超過(guò)3萬(wàn)時(shí),21 s即可完成求解。當(dāng)初始網(wǎng)格面數(shù)少于1萬(wàn)時(shí),幾秒就能完成求解。同時(shí)在求解過(guò)程中設(shè)計(jì)師還能實(shí)時(shí)交互地改變調(diào)參系數(shù),直至滿意為止。
圖8 不同網(wǎng)格面數(shù)量的網(wǎng)格計(jì)算所用時(shí)間的比較
重拓?fù)涔ぷ髁鞒蹋ㄒ?jiàn)圖9)大致可分為3步:繪制低階(網(wǎng)格面數(shù)較少,拓?fù)潢P(guān)系明確)基本網(wǎng)格;將低階網(wǎng)格細(xì)分并施加動(dòng)力學(xué)找形算法,使之?dāng)M合到目標(biāo)多重曲面上;根據(jù)后續(xù)工藝需求,設(shè)定新網(wǎng)格的面數(shù)、邊數(shù)。在此過(guò)程中,對(duì)開(kāi)放多重曲面、閉合多重曲面的操作略有不同,在下文中會(huì)有具體闡釋。
圖9 重拓?fù)涔ぷ髁鞒?/p>
由于封閉曲面形體沒(méi)有邊界,所以無(wú)法通過(guò)邊緣作為網(wǎng)格劃分的基礎(chǔ)?;诰W(wǎng)格映射,將多面體或其衍生形體的拓?fù)浣Y(jié)構(gòu),通過(guò)施加力學(xué)約束條件擬合到目標(biāo)形體上。具體而言,首先根據(jù)目標(biāo)形體的特征選擇對(duì)應(yīng)的基礎(chǔ)網(wǎng)格形體,并將目標(biāo)形體包裹。然后通過(guò)具體要求進(jìn)行網(wǎng)格細(xì)分,并將網(wǎng)格擬合到目標(biāo)形體上,完成網(wǎng)格重建,最后便可對(duì)網(wǎng)格進(jìn)行紋理制作等操作。此次需要施加的力學(xué)約束條件有每根線段的彈簧力約束;頂點(diǎn)與目標(biāo)曲面的彈性吸引力;網(wǎng)格所有頂點(diǎn)的球體彈性碰撞力。封閉多重曲面形體的重拓?fù)溥^(guò)程見(jiàn)圖10。
對(duì)封閉形體進(jìn)行網(wǎng)格劃分,該方法能很好地控制拓?fù)浣Y(jié)構(gòu),包括奇異點(diǎn)的數(shù)量和位置,同時(shí)網(wǎng)格的變化十分均勻,單元網(wǎng)格的形狀質(zhì)量很高。幾何紋理映射制作過(guò)程見(jiàn)圖11,筆者通過(guò)基于網(wǎng)格紋理映射的
圖10 封閉多重曲面形體的重拓?fù)溥^(guò)程
方法[15]將幾何紋理單元(Geometric Texture Units)映射到被優(yōu)化后的網(wǎng)格表面上,完成了此模型的紋理制作(見(jiàn)圖12a)。之后使用光敏樹(shù)脂,進(jìn)行SLA光固化立體成型3D打印,見(jiàn)圖12b。如果不借助重拓?fù)涔に囅碌膮?shù)化設(shè)計(jì),模具廠的建模能力將無(wú)法達(dá)到圖中所示的效果。
圖11 幾何紋理映射制作過(guò)程
圖12 幾何紋理生成結(jié)果
工業(yè)生產(chǎn)中大多數(shù)的形體都為開(kāi)放的多重曲面,因此對(duì)其進(jìn)行網(wǎng)格劃分具有重要價(jià)值。多重曲面所表示的形體類型十分豐富,在此根據(jù)形體的具體特點(diǎn)確定使用網(wǎng)格劃分方法。
2.2.1 類球面的形體
類球面的形體在空間坐標(biāo)中的三個(gè)維度上其數(shù)值都有較大的變化,如果將其投影為平面圖形進(jìn)行網(wǎng)格劃分,會(huì)出現(xiàn)較大的形狀變形,因此更適合使用封閉形體的網(wǎng)格劃分方法。需要注意的是在目標(biāo)形體的開(kāi)放缺口處,其對(duì)應(yīng)的網(wǎng)格也需要剔除。在施加力學(xué)約束條件時(shí),需要將網(wǎng)格開(kāi)口處的頂點(diǎn)固定到目標(biāo)形體所對(duì)應(yīng)的邊緣上,同時(shí)對(duì)網(wǎng)格連接線施加彈簧力,并對(duì)網(wǎng)格頂點(diǎn)施加體積碰撞力,最后通過(guò)網(wǎng)格頂點(diǎn)吸引力將基礎(chǔ)網(wǎng)格吸附到目標(biāo)多重曲面上。開(kāi)放的類球面多重曲面形體的重拓?fù)溥^(guò)程見(jiàn)圖13。此后,筆者將設(shè)計(jì)的幾何紋理單元嵌入到以重拓?fù)渚W(wǎng)格生成的Twisted box中,形成了非常復(fù)雜的形態(tài)見(jiàn)圖14。
圖13 開(kāi)放的類球面多重曲面形體的重拓?fù)溥^(guò)程
圖14 復(fù)雜鞋型的幾何紋理生成結(jié)果
2.2.2 類平面的形體
當(dāng)目標(biāo)形體在空間坐標(biāo)中只在2個(gè)維度有較大的數(shù)值變化時(shí),變化維度較小的形變可被忽略,并可以根據(jù)形體的平面投影輪廓來(lái)重建網(wǎng)格拓?fù)浣Y(jié)構(gòu),然后施加力學(xué)約束條件將網(wǎng)格擬合到目標(biāo)形體上。開(kāi)放的類平面多重曲面形體的重拓?fù)溥^(guò)程見(jiàn)圖15,即為重拓?fù)溥^(guò)程和紋理制作的流程:將目標(biāo)曲面的邊緣提取出來(lái),并向變化維度較小的坐標(biāo)軸壓縮;通過(guò)平面閉合曲線生成均勻連續(xù)的基礎(chǔ)網(wǎng)格;將平面基礎(chǔ)網(wǎng)格通過(guò)動(dòng)力學(xué)找形的方法包覆到目標(biāo)曲面上。
在對(duì)原目標(biāo)曲面進(jìn)行重拓?fù)涔に嚭?,筆者通過(guò)三角函數(shù)干擾算法對(duì)新建網(wǎng)格進(jìn)行了干擾,形成了類似水波紋的效果,此效果已經(jīng)遠(yuǎn)遠(yuǎn)突破了模具廠的建模能力,同時(shí)也不浪費(fèi)其基礎(chǔ)模型,可作為后期參數(shù)化設(shè)計(jì)師進(jìn)行操作的基礎(chǔ)模型,見(jiàn)圖16。
圖15 開(kāi)放的類平面多重曲面形體的重拓?fù)溥^(guò)程
圖16 幾何紋理生成結(jié)果
在工業(yè)生產(chǎn)領(lǐng)域中,人們常用“邊界表示(B-Rep)”法來(lái)描述所要加工的物體,此方法是一種根據(jù)歐拉拓?fù)溥吔鐦?gòu)建的幾何形狀所需的信息,并由計(jì)算機(jī)保存該信息的方法[16],該方法利于機(jī)械設(shè)備采用輪廓制造工藝對(duì)曲面進(jìn)行精細(xì)化的加工等操作。然而,這種幾何描述法的缺點(diǎn)很明顯:由于需要對(duì)曲面的邊緣有清晰定義,在進(jìn)行面面相接、倒角等操作時(shí),往往出現(xiàn)邊界的“非連續(xù)”。這種非連續(xù)特點(diǎn),在車輛曲面建模中,往往需要專門的設(shè)計(jì)師或數(shù)模師耗費(fèi)大量的時(shí)間精力進(jìn)行修復(fù)、優(yōu)化,但在鞋服模具廠的工作中往往被忽略,因?yàn)樗鶎?dǎo)致的誤差較小,不影響生產(chǎn)。
然而在重拓?fù)涔に囍?,幾何非連續(xù)就會(huì)出現(xiàn)很大的問(wèn)題。Rhino7自帶的重拓?fù)涔δ芤?jiàn)圖17。圖17a為模具廠提供的曲面文件,通過(guò)外露邊緣檢查(紫色顯示)發(fā)現(xiàn)很多曲面根本就沒(méi)有連接上,且無(wú)法組合成一個(gè)多重曲面(由于設(shè)計(jì)師建模水平等因素,邊緣有空隙)。如果直接對(duì)這個(gè)模型進(jìn)行網(wǎng)格重拓?fù)?,?jì)算機(jī)就會(huì)將整個(gè)物件識(shí)別成許多的Surface,并逐個(gè)分別進(jìn)行網(wǎng)格化。以Rhino7內(nèi)置的重拓?fù)渌惴槔?,輸入這樣的物件只能達(dá)到單一網(wǎng)格內(nèi)自身的均勻,但整個(gè)物件還是無(wú)法重拓?fù)涑梢粋€(gè)單一網(wǎng)格(如圖17b生成出來(lái)的結(jié)果還是有外露邊緣,說(shuō)明依舊是多個(gè)網(wǎng)格)。甚至在一些局部產(chǎn)生破面現(xiàn)象,不能達(dá)到全局的網(wǎng)格均勻性。雖然市場(chǎng)上現(xiàn)有的重拓?fù)涔ぞ哂泻芏啵鏗ypermesh、CreateQuadMesh等,但是想要對(duì)上面這樣的破面直接進(jìn)行網(wǎng)格重拓?fù)湟仓荒苌啥鄠€(gè)質(zhì)量良好的單一網(wǎng)格,不過(guò)其邊緣的連續(xù)性無(wú)法得到保證,邊緣頂點(diǎn)無(wú)法一一對(duì)應(yīng),只能在重拓?fù)渲笆謩?dòng)修補(bǔ)物件不連接的地方,這無(wú)疑會(huì)增加設(shè)計(jì)師的負(fù)擔(dān),減慢開(kāi)發(fā)進(jìn)度。除了工業(yè)領(lǐng)域之外其他重拓?fù)涔ぞ叽蟛糠旨性谟?jì)算機(jī)動(dòng)畫(huà)軟件(如C4D、Maya)或數(shù)字雕塑軟件(如ZBrush),很難與現(xiàn)有制造業(yè)建模水平匹配,而且強(qiáng)行使用這些平臺(tái)進(jìn)行重拓?fù)涔ぷ饕残枰肆M(jìn)行曲面連續(xù)性的優(yōu)化預(yù)處理,同樣費(fèi)時(shí)費(fèi)力。
圖17 Rhino7自帶的重拓?fù)涔δ?/p>
針對(duì)文中提出的方法,由于基礎(chǔ)網(wǎng)格本身就是根據(jù)整個(gè)物件設(shè)計(jì)(可以無(wú)視曲面不連接的地方,無(wú)需對(duì)Surface進(jìn)行修補(bǔ)預(yù)處理),再進(jìn)行動(dòng)力學(xué)找形(網(wǎng)格間增加桿件彈簧力約束其形變不至于過(guò)長(zhǎng),同時(shí)施加碰撞力使桿件不至于過(guò)短),就能保證一次達(dá)到均勻網(wǎng)格的效果。此次方法的效果相對(duì)傳統(tǒng)軟件有本質(zhì)區(qū)別,所用平臺(tái)與模具廠所用的平臺(tái)一致,均為犀牛(Rhino)平臺(tái),非常適用于工業(yè)生產(chǎn)、制造領(lǐng)域。工程師只需要重構(gòu)網(wǎng)格的拓?fù)潢P(guān)系,即可自動(dòng)生成設(shè)定數(shù)目的均勻網(wǎng)格。
在曲面上進(jìn)行網(wǎng)格劃分無(wú)法使每個(gè)單元網(wǎng)格完全一致,因此可以在誤差允許范圍內(nèi)盡可能地滿足特定的需求。一般來(lái)說(shuō),對(duì)于一個(gè)優(yōu)化后的網(wǎng)格,其每個(gè)面的形狀越“規(guī)整”,其形狀質(zhì)量就越好,以三角網(wǎng)格為例,其形狀越接近于正三角形,說(shuō)明其形狀質(zhì)量越高。對(duì)于一個(gè)網(wǎng)格整體來(lái)說(shuō),其所有面的面積越近似,說(shuō)明其整體均勻性越好,這一數(shù)據(jù)體現(xiàn)在漸變程度方差上。因此,對(duì)于一個(gè)網(wǎng)格優(yōu)化算法,形狀質(zhì)量和漸變程度是評(píng)價(jià)此算法的兩大技術(shù)指標(biāo)。
3.2.1 形狀質(zhì)量?jī)?yōu)勢(shì)
對(duì)于三角網(wǎng)格形狀質(zhì)量的評(píng)價(jià),可以通過(guò)計(jì)算面積與邊長(zhǎng)之比計(jì)算[17]:
(9)
對(duì)于四邊網(wǎng)格形狀質(zhì)量的評(píng)價(jià),可以使用失真系數(shù)(distortion coefficient)來(lái)描述,其由Lo[18]提出。將四邊形依對(duì)角線分割成4個(gè)三角形,分別計(jì)算4個(gè)三角形的值并求出一種幾何平均值,即通過(guò)下面的公式來(lái)計(jì)算四邊網(wǎng)格的形狀質(zhì)量[19]:
(10)
以球面和類球面形體擬合出來(lái)的網(wǎng)格為例,在此次評(píng)價(jià)中用Rhino7內(nèi)置的QuadRemesh指令作為對(duì)比,筆者對(duì)目標(biāo)形體進(jìn)行重建四邊網(wǎng)格,得到網(wǎng)格M_1(此次方法)、M_1(QuadRemesh)和M_2(此次方法)、M_2(QuadRemesh)。形狀質(zhì)量可視化對(duì)比見(jiàn)圖18,經(jīng)過(guò)以上方法完成的重拓?fù)渚W(wǎng)格形狀質(zhì)量好于Rhino7內(nèi)置的重拓?fù)渲噶钏傻木W(wǎng)格(紅色區(qū)域代表網(wǎng)格質(zhì)量較差,藍(lán)色區(qū)域代表網(wǎng)格質(zhì)量較好)。
圖18 形狀質(zhì)量可視化對(duì)比
3.2.2 網(wǎng)格漸變程度優(yōu)勢(shì)
良好的網(wǎng)格大小漸變能帶來(lái)一種良好的視覺(jué)效果。網(wǎng)格面面積比值見(jiàn)圖19。如果每2個(gè)相鄰網(wǎng)格面面積的比值都相同,也就是說(shuō)整個(gè)網(wǎng)格面是線性變化的,那網(wǎng)格漸變程度也是最均勻的。
由于網(wǎng)格形體的每個(gè)面都有其相鄰的面,所以可將每個(gè)網(wǎng)格面的面積與其相鄰網(wǎng)格面的面積之比的平均值作為這個(gè)網(wǎng)格面的漸變程度值:
(11)
式(11)中Areai為一個(gè)網(wǎng)格面(Face)面積,AdjacentAreaj為Areai相鄰的Face面積,n。為相鄰面的數(shù)量,對(duì)于四邊網(wǎng)格(除在邊緣處的面以外),n=4,γ值越接近1,說(shuō)明網(wǎng)格變化程度越小。計(jì)算每個(gè)網(wǎng)格面的γ值,并通過(guò)計(jì)算其平均值和方差,即可量化比較不同的網(wǎng)格優(yōu)化方法。
圖19 網(wǎng)格面面積比值
Fig.19 Ratio of area for faces
操作過(guò)程:采用控制變量法,將此次方法與Rhino7內(nèi)置的QuadRemesh方法分別重拓?fù)銶_1及M_2形體為四邊網(wǎng)格,并分別對(duì)比所生成的網(wǎng)格形狀質(zhì)量與漸變程度。表中最重要的指標(biāo)為形狀質(zhì)量的方差與漸變程度的方差,數(shù)值越小說(shuō)明越優(yōu)異。
網(wǎng)格質(zhì)量對(duì)比見(jiàn)表1。通過(guò)表1的數(shù)據(jù)可以看出,使用此次方法獲得的網(wǎng)格漸變程度,較Rhino7原裝方法其方差值有明顯變小,這說(shuō)明在對(duì)目標(biāo)形體的網(wǎng)格重建中,用此次方法獲得的視覺(jué)效果更均勻,更利于后續(xù)工作的開(kāi)展。同時(shí)此次方法在處理奇異點(diǎn)的數(shù)量和位置上更具靈活性,其他軟件自帶的重建網(wǎng)格指令則根本無(wú)法控制奇異點(diǎn)的數(shù)量和位置。此次方法奇異點(diǎn)的分布(見(jiàn)圖20a)相比Rhino7原裝方法奇異點(diǎn)的分布(見(jiàn)圖20b)更加均勻。對(duì)于更加復(fù)雜的形體,奇異點(diǎn)的可控制也比其他軟件生成得更理想。
表1 網(wǎng)格質(zhì)量對(duì)比
Tab.1 Mesh quality comparison
圖20 奇異點(diǎn)分布對(duì)比
隨著計(jì)算性設(shè)計(jì)時(shí)代的到來(lái),設(shè)計(jì)與數(shù)據(jù)的關(guān)系越發(fā)緊密。在目前消費(fèi)品設(shè)計(jì)領(lǐng)域,計(jì)算機(jī)多半還是承擔(dān)“輔助設(shè)計(jì)”的角色,數(shù)據(jù)傳遞的信息主要是設(shè)計(jì)師對(duì)產(chǎn)品幾何的描述,并由工廠生產(chǎn)。這樣的設(shè)計(jì)閉環(huán)并未將數(shù)據(jù)在設(shè)計(jì)端的意義發(fā)揮到極致,缺乏數(shù)據(jù)監(jiān)測(cè)及反饋對(duì)產(chǎn)品的優(yōu)化。設(shè)計(jì)師依舊是憑借經(jīng)驗(yàn)在優(yōu)化現(xiàn)有的產(chǎn)品。同時(shí)由于加工廠商的建模能力約束,很多設(shè)計(jì)師所希望的表皮紋理設(shè)計(jì)也很難實(shí)現(xiàn),一旦需要連續(xù)的肌理,就必然涉及到“跨面操作”。這項(xiàng)操作在建模工程中會(huì)遇到不小的阻礙,會(huì)拉長(zhǎng)設(shè)計(jì)周期,對(duì)商業(yè)設(shè)計(jì)有致命影響。
借助文中提出的“基于動(dòng)力學(xué)找形的重拓?fù)涔に嚒狈椒?,模具廠繪制的B-rep模型可以被快速轉(zhuǎn)換為分布均勻、形態(tài)規(guī)則、面數(shù)可控的連續(xù)網(wǎng)格。這一方法既沒(méi)有浪費(fèi)模具廠對(duì)模型準(zhǔn)確繪制的基本功,同時(shí)也為未來(lái)更多的數(shù)字設(shè)計(jì)師提供了模型接口,避免了他們獨(dú)立處理“非連續(xù)多重曲面“時(shí)的重復(fù)勞動(dòng)。在產(chǎn)品的優(yōu)化設(shè)計(jì)過(guò)程中,將基礎(chǔ)形體快速轉(zhuǎn)換成以網(wǎng)格表示為基礎(chǔ)的數(shù)字化模型,可以在前期的設(shè)計(jì)過(guò)程中方便地介入有限元分析,并通過(guò)參數(shù)化的控制直接修改、調(diào)整網(wǎng)格,加快迭代優(yōu)化過(guò)程。此外甚至可以接入用戶數(shù)據(jù)采集作為基礎(chǔ)網(wǎng)格形態(tài)變化的依據(jù),從而實(shí)現(xiàn)形態(tài)的快速定制化生成。
模型轉(zhuǎn)換效率看似是一個(gè)量變的過(guò)程,其實(shí)是產(chǎn)品數(shù)據(jù)鏈的“潤(rùn)滑劑”,在一個(gè)開(kāi)發(fā)周期較緊張的商業(yè)項(xiàng)目中,模型文件轉(zhuǎn)換效率的提升可以讓研發(fā)團(tuán)隊(duì)、數(shù)字服務(wù)團(tuán)隊(duì)更快地同時(shí)參與到項(xiàng)目中來(lái),從而更高質(zhì)量地為設(shè)計(jì)到制造的開(kāi)發(fā)體系奠定基礎(chǔ)。
[1] B?HM W, FARIN G, KAHMANN J. A Survey of Curve and Surface Methods in CAGD[J]. Computer Aided Geometric Design, 1984, 1(1): 1-60.
[2] PIEGL L, TILLER W. The NURBS Book[M]. Springer Science & Business Media, 1996.
[3] HETTINGA G J, KOSINKA J. Conversion of B-rep CAD Models into Globally G1 Triangular Splines[J]. Computer Aided Geometric Design, 2020, 77: 101.
[4] OWEN S J. A Survey of Unstructured Mesh Generation Technology[J]. 7th International Meshing Roundtable, 1998, 239: 267.
[5] FORTUNE S. Voronoi Diagrams and Delaunay Triangulations[M]. Computing in Euclidean geometry, 1995: 225-265.
[6] LI Y, JI S. A Geometric Algorithm Based on the Advancing Front Approach for Sequential Sphere Packing[J]. Granular Matter, 2018, 20(4): 59.
[7] CHOI C P, GU X, LUI L M. Subdivision Connectivity Remeshing Via Teichmüller Extremal map[J]. Inverse Problems & Imaging, 2017, 11(5): 825-855.
[8] 王奇勝, 高博青, 吳慧. 基于引導(dǎo)線偏移的建筑網(wǎng)格生成方法[J]. 上海交通大學(xué)學(xué)報(bào), 2019, 53(9): 1040-1044.
WANG Qi-sheng, GAO Bo-qing, WU Hui. An Architectural Grid Generation over Free-Form Surfaces Based on Guide Curve Offsetting[J]. Journal of Shanghai Jiao Tong University, 2019, 53(9): 1040-1044.
[9] WEIZMANN M, AMIR O, GROBMAN Y J. Topological Interlocking in Architecture: A New Design Method and Computational Tool for Designing Building Floors[J]. International Journal of Architectural Computing, 2017, 15(2): 107-118.
[10] GAO B, LI T, MA T, et al. A Practical Grid Generation Procedure for the Design of Free-form Structures[J]. Computers & Structures, 2018, 196: 292-310.
[11] MIZOBUTI V, JUNIOR L C M V. Bioinspired Architectural Design Based on Structural Topology Optimization[J]. Frontiers of Architectural Research, 2020, 9(2): 264-276.
[12] PIACENTINO G. Weaverbird: Topological Mesh Editing for Architects[J]. Architectural Design, 2013, 83(2): 140-141.
[13] MARTYS N S, MOUNTAIN R D. Velocity Verlet Algorithm for Dissipative Particle Dynamics Based Models of Suspensions[J]. Physical Review E, 1999, 59(3): 3733.
[14] PERSSON P O, STRANG G. A Simple Mesh Generator in Matlab[J]. Siam Review, 2004, 46(2): 2004.
[15] HECKBERT P S. Survey of Texture Mapping[J]. IEEE Computer Graphics and Applications, 1986, 6(11): 56-67.
[16] HIEMSTRA R R, SHEPHERD K M, JOHNSON M J, etal. Towards Untrimmed Nurbs: CAD Embedded Reparameterization of Trimmed B-rep Geometry Using Frame- field Guided Global Parameterization[J]. Computer Methods in Applied Mechanics and Engineering, 2020, 369: 113.
[17] FIELD D A. Qualitative Measures for Initial Meshes[J]. International Journal for Numerical Methods in Engineering, 2000, 47(4): 887-906.
[18] LO S H. Generating Quadrilateral Elements on Plane and over Curved Surfaces[J]. Computers & Structures, 1989, 31(3): 421-426.
[19] PARK C, NOH J S, JANG I S, et al. A New Automated Scheme of Quadrilateral Mesh Generation for Randomly Distributed Line Constraints[J]. Computer-Aided Design, 2007, 39(4): 258-267.
Discontinuous B-rep Geometry Topology Reconstruction in Dynamic Form-finding Method
YUAN Chao, ZHANG Xiao, QIU Song
(Tsinghua University, Beijing 100084, China)
This paper aims toconvert files of the Boundary Representation (B-rep)model in industrial modeling engineering to files of the Uniform continuous mesh model efficiently through retopology, which provides a bridge for parametric design and finite element analysis, further construct a closed loop of parametric design workflow.Through algorithm plug-in based on Rhino platform, the basic mesh preset many constraints such as the spring force of the rod, the anchoring force of the boundary and the attractive force of the target is wrapped onto known B-rep shapes. And through dynamic multiple iteration algorithms, the retopology mesh is infinitely approached to the original surface. Finally, the basic mesh is reconstructed into a uniformly continuous four-sided mesh with a controllable number.After this process, the designer only needs to do a few clicks operation, and the discontinuous B-rep shaper can be re-topological within a few minutes. The new mesh obtained is uniform and continuous, and the number of faces is controllable, saving a lot of manpower repair time.By providing retopology method based on dynamic algorithm, parametric designer can Connect factories more smoothly, and finite element analysis will be more efficient to aided support design. It is one of the important technical foundations of industrial design digital closed loop.
dynamic form-finding; retopology; parametric design; mesh mapping; finite element analysis; data closed loop
TB472
A
1001-3563(2022)10-0158-11
10.19554/j.cnki.1001-3563.2022.10.019
2022-01-02
袁潮(1996—),男,碩士生,主攻工業(yè)設(shè)計(jì)。
邱松(1964—),男,碩士,教授,博士生導(dǎo)師,主要研究方向?yàn)樵O(shè)計(jì)形態(tài)學(xué)。
責(zé)任編輯:馬夢(mèng)遙