物理學論文-虛擬穿衣中織物模型的建立和碰撞檢測的處理.doc_第1頁
物理學論文-虛擬穿衣中織物模型的建立和碰撞檢測的處理.doc_第2頁
物理學論文-虛擬穿衣中織物模型的建立和碰撞檢測的處理.doc_第3頁
物理學論文-虛擬穿衣中織物模型的建立和碰撞檢測的處理.doc_第4頁
物理學論文-虛擬穿衣中織物模型的建立和碰撞檢測的處理.doc_第5頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

物理學論文-虛擬穿衣中織物模型的建立和碰撞檢測的處理摘要:結合實現靜態(tài)虛擬穿衣中的實際問題,詳細地介紹了基于彈簧質點模型的織物變形模型和基于層次包圍盒的碰撞檢測算法。借助層次空間分解法的思想,將縫合衣片的相對位置同人模自身的結構信息相結合,靈活地構造人模樹,減少了不相交元素的碰撞檢測次數,從而提高了算法的效率。最后還給出了實現整個虛擬穿衣過程的具體步驟。關鍵詞:織物變形仿真;彈簧質點模型;碰撞檢測;空間分解法;層次包圍盒法;顯式歐拉方法1前言隨著計算機技術和人類社會經濟的發(fā)展,對于紡織服裝業(yè)/的應用要求也越來越高,二維服裝系統已經不能滿足要求,人們迫切希望借助計算機完成一些更加實用的三維功能。若能直接將二維服裝系統設計的衣片,在計算機上真實地模擬出穿在人體上的效果,便可以幫助設計師直接在計算機上進行著裝效果檢查、服裝裁剪片縫合檢查等工作。這樣就可大大提高服裝從設計階段到生產階段間的效率,具有非常重要的實用價值。要通過計算機實現這一功能,有兩個關鍵的問題必須解決:1)建立合適的織物變形模型;2)選擇高效而實用的碰撞檢測算法。研究織物變形仿真的方法通常分為三類:幾何的、物理的和混合的(幾何和物理方法的混合)。純幾何的造型方法很難反映織物的物理特性,因此基于物理的方法研究,近年來已占據了主導地位。在織物變形物理仿真模型中1,按比擬織物結構的方式又可分為兩大類:1)離散質點型模型:比較典型的有等建立的質點網格模型、等建立的粒子模型和等建立的彈簧質點模型;2)連續(xù)介質型模型:比較典型的有等建立的彈性變型模型、等建立的空氣動力模型、建立的波傳播模型、等建立的有限元模型等。以上的織物變形物理仿真模型,由于其建模的原理和方法不盡相同,因此,它們適用于不同的應用場合有其各自的優(yōu)缺點。我們結合設計虛擬穿衣功能的實際,認為所建立的彈簧質點模型,模型簡單,易于計算機實現,在模擬衣片復雜的動態(tài)變形過程時,能夠取得比較真實的模擬效果和較快的模擬速度。在模擬三維服裝穿在人體上的真實效果時,會遇到大量的碰撞現象:衣片同人模之間以及衣片自身間的一種相互滲透和穿越。只有很好地解決了滲透和穿越的問題,才能逼真地完成虛擬穿衣的模擬過程。因此,碰撞檢測是整個模擬過程的關鍵。碰撞檢測非常耗時,最簡單的碰撞檢測算法是對兩個碰撞體中的所有基本幾何元素(通常為三角形)進行兩兩相交測試?,F有的碰撞檢測算法大致可劃分為兩大類:空間分解法(),和層次包圍盒法()。前者是將整個虛擬空間劃分成相等體積的小單元格,只對占據同一單元格或相鄰單元格的幾何對象進行相交測試。比較典型的方法有八叉樹和樹。層次包圍盒法的核心思想是利用體積略大而幾何特性簡單的包圍盒將復雜幾何對象包裹起來,在進行碰撞檢測時,首先進行包圍盒之間相交測試,只有包圍盒相交時,才對其所包裹的對象,做進一步求交計算。在構造碰撞體的包圍盒時,若引入樹狀層次結構,可快速剔除不發(fā)生碰撞的元素,減少大量不必要的相交測試,從而提高碰撞檢測效率。比較典型的包圍盒類型有沿坐標軸的包圍盒(),包圍球(),方向包圍盒()等。在本文中,我們充分利用了層次包圍盒法的優(yōu)勢,同時在構建靜態(tài)人模的樹時,又借助層次空間分解法中子空間在空間排列上的有序性和相關性的思想,將縫合衣片的相對位置同人模自身的結構信息相結合,靈活地構造人模樹,這樣減少了需相交測試的元素,從而提高了碰撞檢測的效率。2織物的變形模型2.1織物變形模型的描述我們建立的織物變形模型是以的彈簧質點模型作為基礎,將織物設想為一個個質點集合,質點間相互關系歸結為質點間的彈簧作用。其中彈簧分為三類:結構彈簧、剪切彈簧和彎曲彈簧,具體構成如圖1所示。圖1織物模型離散成規(guī)則網格1)結構彈簧:在質點和+1,間,以及和,+1間的彈簧為結構彈簧,結構彈簧是為了保持質點間初始狀態(tài)時的距離。2)剪切彈簧:在質點和+1,+1間,以及+1,和,+1間的彈簧為剪切彈簧。剪切彈簧是為了防止織物在自身平面過渡和不真實的變形,而給織物的一個剪切剛性。3)彎曲彈簧:在質點和+2,間,以及和,+2間的彈簧為彎曲彈簧,彎曲彈簧是為了防止織物彎曲。2.2質點的位移在縫合衣片過程中,衣片上所有質點因受力而產生一定的位移,質點位移我們選用運動定律來描述:外力(,)+內力(,)=(,)其中,是質點(,)的質量。在本文中,我們假定布料是各向均質的,因此,質點的質量可由衣片總質量除以質點總數得到,(,)是該點加速度,外力(,)是該點所受的外力,內力(,)是該點所受的內力。為了簡化模型,在我們三維服裝系統中,只考慮兩種外力:縫合力和重力。可以用以下公式來表示:外力(,)=縫合力(,)+重力(,)在衣片縫合過程中,為了將不同的衣片縫在一起,我們在衣片對應縫合邊上加載縫合力。在模型中,縫合力被定義成對應縫合點之間距離的線性函數。對兩個縫合點,和,間的縫合力,可以按如下公式計算:縫合力(,)=(,),-,式中為縫合力系數,該系數與織物的縫合性能有關,通常,較難變形的布料采用較大的縫合力系數;(,)表示兩縫合點,和,間的距離;,-,表示從,點指向,點的單位方向矢量。為了獲得較真實的仿真效果,我們在變形模型中考慮了衣片所受的重力。質點所受的重力可按如下公式計算:重力(,)=,式中,為質點,的質量。在彈簧質點模型中,唯一考慮的彈性內力是彈簧的彈性變形力,由于采用的是理想的彈簧質點系統,可以利用胡克()定律來計算彈簧的彈性變形力:內力(,)=-(,)(,-,0,)其中,是彈簧的彈性變形系數,是(,)鄰點的集合,0表示質點(,)與質點(,)之間的原始距離,彈簧的彈性變形系數可以依據所選用織物的材料性能參數曲線確定。2.3織物變形模型的求解我們選擇顯式歐拉方法來求解織物變形模型。求解公式如下:,(+)=1,(),(+)=,()+,(+),(+)=,()+,(+)其中,是質點(,)所受所有力的合力,()是質點(,)的質量,()、,()和,()分別是質點(,)在時間的加速度,速度和位置。是系統選定的時間步長。3基于樹層次包圍盒的碰撞檢測3.1建立樹一個碰撞體的被定義為包含該碰撞體,且邊平行于坐標軸的最小六面體。因此,描述一個,僅需六個標量。在構造包圍盒時,需沿著碰撞體局部坐標系統的軸向(,)來構造,所以所有的包圍盒具有一致的方向。樹是基于的二叉樹,按照由上至下的遞歸細分方式構造生成的。在每一次遞歸過程中,要求取最小的,需沿所選擇的剖分面將碰撞體分為正負兩半,并將所對應的原始幾何元素(如三角面)分別歸屬正、負兩邊,整個遞歸過程類似于空間二叉剖分,只是每次剖分的對象是,而不是空間區(qū)域。遞歸細分一直要進行到每一個葉子節(jié)點只包容一個原始幾何元素為止,所以具有個原始幾何元素的樹具有-1個非葉子節(jié)點和個葉子節(jié)點。對于剖分面的選擇,在本文中,選擇垂直的最長軸,且平分該軸的平面。經試驗證明,這種方式,在大多數情況下的算法復雜度僅為(),較其它的剖分面選擇方法有了極大的提高。至于原始幾何元素的歸屬則應依據幾何元素的重心在最長軸上的投影坐標。若投影坐標大于剖分面的坐標(),則在剖分面的正向,否則在負向,如圖2所示。圖2三角面歸屬負區(qū)域,因為其質心投影坐標小于剖分面的基準坐標3.2的相交判斷間的相交測試比較簡單,兩個相交當且僅當它們在三個坐標軸上的投影區(qū)間均相交。通過投影,我們即將三維求交問題轉化為一維求交問題。而對一維求交問題,我們則采用()2法。因無需求交計算,只需比較兩個包圍盒分別在三個軸向上投影的重疊情況,即可得出相交測試結果,非常簡單?,F以在一個軸向上的投影情況為例說明:圖3在軸向相交判斷。設,為兩包圍盒,為投影軸,分別為,的中心點,為點,在上的投影。,分別為包圍盒,在上的投影。若+,(如圖3所示)則在軸向上和不相交,反之在軸向上和鄰接或相53第5期高成英等:虛擬穿衣中織物模型的建立和碰撞檢測的處理交。當包圍盒,在三條軸向上的投影均相交時,則,相交。定義的六個最大最小值分別確定了它在三個坐標軸上的投影區(qū)間,因此間的相交測試最多只需六次比較運算,非常簡單快速。3.3樹的更新當衣片移動、旋轉后,需要對進行更新,根據定義的6個最大最小值的組合,可以得到的8個頂點,對這8個頂點進行相應的旋轉和平移變化,并根據變化后的頂點計算新的。當衣片發(fā)生變形時,需要重新計算樹中發(fā)生變形了的葉結點的,再利用變形葉節(jié)點的新來重新計算它們父節(jié)點的。這種計算必須嚴格按照從下到上的方式進行。父節(jié)點的具體求法為:令(1,1,1,1,1,1)和(2,2,2,2,2,2)分別是兩個變形葉結點的,則父結點的即為(1,2),(1,2),(1,2),(1,2),(1,2),(1,2),只需6次比較運算就完成一個結點的更新,其效率遠遠高于重新構造包圍盒樹。3.4基于樹的碰撞檢測算法基于樹碰撞檢測算法的核心是通過有效地遍歷這兩棵樹,以確定在當前位置下,兩個碰撞體的某些部分是否發(fā)生碰撞,這是一個雙重遞歸遍歷的過程。算法描述如下:1:分別為人模和衣片構造樹。2:人模的樹的根結點遍歷衣片的樹。如果發(fā)現人模樹的根結點的包圍盒與衣片樹內部結點的包圍盒不相交,則停止向下遍歷;如果遍歷能到達衣片樹的葉節(jié)點,再用該葉節(jié)點遍歷人模樹。如果能到達人模樹的葉節(jié)點,則進一步進行基本幾何元素間的相交測試。3:檢測基本幾何元素間是否相交。3.5自碰撞檢測在衣片縫合過程中,除了衣片同人模之間的碰撞外,由于衣片的動態(tài)變形,使得衣片與衣片自身間也有碰撞現象,因此必須進行進一步的自相交檢測。在系統設計中,我們利用三角形表面曲率來簡化計算。當鄰近三角形法線的夾角較小時,它們不可能發(fā)生碰撞,只有當夾角超過閾值,才有可能碰撞。我們?yōu)槊總€三角形建立它的臨近三角形列表,通過判斷每個三角形的所有鄰近區(qū)域的三角形表面曲率,來排除大部分不可能相交的情況,從而簡化了計算。4虛擬穿衣的具體實現步驟(1)讀入二維服裝系統設計的衣片(2)選擇所有需要縫合衣片的對應的縫合邊(3)將二維衣片離散并形成初始的彈簧質點系統)將衣片離散成規(guī)則四邊域網格,再將四邊域網格的對角線相連,形成規(guī)則三角形網格的彈簧質點系統。三角形的頂點形成質點,三角形的邊形成相應的彈簧。衣片的三角化,正是為方便地建立衣片的樹;)按質點間的相應關系,加入各種彈力。在離散衣片時,需特別注意的是在(2)中所選擇的對應縫合邊的長度一定要相等,且當衣片離散化時,在對應縫合邊上的原始幾何元素(這里為三角形)的個數也應相同。若在(2)中所選擇的對應縫合邊長度不等,或原始幾何元素個數不同時,系統將需做一些預處理:將其中一條縫合邊的所有信息刪除,將另一條縫合邊的相應信息賦給它。(4)將衣片交互式地放置在人體模型附近的初始位置在該步驟中,首先,給每一縫合衣片賦一個別名(系統自定義的標準別名:左前片,右前片,左后片,右后片等),根據每一衣片的別名,衣片被自動地放置在人體模型附近的相應初始位置上。(5)分別為人模和衣片建立樹本文中所涉及的兩個碰撞體,分別為人模和衣片,其中人模在整個動態(tài)模擬過程中為靜態(tài)的,因此,只需在初始化時構造一次樹即可。為了進一步提高碰撞檢測的效率,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論