專利名稱:一種基于三角形插值曲面細分的幾何數據細分方法
技術領域:
本發明屬于幾何體造型技術領域,特別是涉及一種基于三角形插值曲面細分的幾何數據細分方法。
背景技術:
細分方法是一個從離散到離散的過程,從初始多面體或多邊形網格出發,遞歸地調用細分規則加密控制網格,最終在極限意義下,網格序列收斂到連續甚至光滑曲線、曲面,具有許多參數方法和隱式方法表示的優點,適合計算機的離散表示。2002年,Bajaj等人在論文“A smooth subdivision scheme forhexahedral meshes.The Journal of Visual Computer,2002,18343-356”中利用三線性插值的技術和基于六面體網格的平均算法,提出了類似的體細分方法,在基于數值實驗分析的基礎上,分析了其極限性質,這種方法可以用于產生非流形的網格上的幾何形體的生成,本質上講是一種逼近型的體細分方法。
近年來使用細分方法迭代構造三維幾何實體作為一個新的研究方向,在理論和應用中逐漸得到了重視和發展,成為一種新的體造型的手段。曲面細分方法目的在于建立了一種基于離散數據迭代細化的方法快速建立三維數據體的技術,表現出了很多新的特性和優點。其中,三角形拓撲網格是形成三維幾何形體和進行有限元等計算中常用的三維形體表示的拓撲結構。
目前與基于曲面細分方法的幾何造型方法相關的技術方案有1996年,D.Zorin,P.Schrder,W.Sweldens在論文“Interpolating Subdivision for Meshes withArbitrary Topology.SIGGRAPH 96 Proceedings(1996)189-192”中提出在三角形拓撲網格上的插值型曲面細分方法。這種方法生成的曲面往往繞動過多,曲面光滑性較差,在模型的尖點處的效果往往達不到要求。針對上述方法生成曲面繞動過多、光滑行不足的這些缺陷,本發明提出了一種基于三角形網格拓撲結構上的插值型幾何數據細分方法,可以運用于計算機動畫、計算機可視化及三維體造型方面。
發明內容
本發明的目的在于克服現有技術的不足,提供一種基于三角形插值曲面細分的幾何數據細分方法。
為了實現發明目的,采用的技術方案為一種基于三角形插值曲面細分的幾何數據細分方法,先利用拓撲規則將三角形的拓撲網格進行分裂,以增加新頂點并形成新的網格拓撲,再利用幾何規則計算所有頂點的幾何位置;循環迭代上述步驟至滿足循環停止條件。
上述技術方案中,所述拓撲規則為
(1)在拓撲網格的每一個三角形中,對于三角形的三條邊,各產生一個新的邊點。原三角形每條邊應包含兩個頂點,這里稱為A、B,現于每條邊都生成了一個新的邊點C,分別連接邊點C與A,C與B,新生成兩條邊AC、BC,用新生成的兩條邊AC、BC代替原有邊AB。在一個三角形中,生成了3個新邊點C1、C2、C3,三個邊點分別兩兩連接,得到C1C2,C1C3、C2C3三條新的邊,把三條新生成的邊加入網格拓撲中。
(2)原有的拓撲網格頂點保持不變,所述(1)所生成的每一個新的邊點被連接到原有邊的兩個頂點上。
所述幾何規則包括不規則三角形幾何規則和規則三角形幾何規則,所述不規則三角形幾何規則具體如下(I)計算邊點,以不規則頂點V0為中心,得到所有與不規則頂點相連接的頂點構成一個頂點環V1、V2、V3、...、Vn,其中W1、W2、W3、...、Wn為與頂點對應的權重,那么新頂點的計算方法為q=w0p0k+Σi=1nwipik]]>權重的計算法方法w0=34w1=12n+14wk=12ncos2πkn,(k=2,3,...,n)]]>
(II)原頂點位置保持不變。
所述規則三角形幾何規則,具體如下(I)計算邊點每條邊都包含兩個頂點,取出所有與該兩個頂點相鄰接的所有頂點,在規則情況下,這些鄰接的頂點為8個,加上邊的原有的2個頂點,共有10個頂點,把它們標記為P1、P2、P3、...、P10。其中P1、P2為邊的兩個頂點,P3、P4為與P1、P2都相鄰的兩個頂點。那么新頂點的計算方法為q=1732(P1+P2)+116(P3+P4)-132(P5+P6+P7+P8+P9+P10)]]>(II)原頂點位置保持不變。
上述規則三角形幾何規則所涉及的拓撲意義上的規則三角形的幾何約束為(1)所有的拓撲網格都很好連接在一起,也就是說沒有孤立點或者孤立邊,每一個點都在邊上,每一條邊都在面上;(2)每一個面元素都是封閉體,由三角形包圍而成,也就是說三角形包圍的面不會形成漏縫或者洞,面不會相交和自相交;(3)每條邊都為2個三角形所共享。
(4)對于規則三角形拓撲網格,一個點僅與6條邊想連。
所述循環停止條件為三角形已經達到設定的足夠的計算精度或顯示精度、或三角形的最長的一條邊的長度小于設定的值、或三角形最大的元素小于設定的參數值、或三角形的數量大于設定的參數值。
本發明方案定義的是在三角形拓撲結構實體上的細分規則,在面上要求有分布較均勻的拓撲網格點,這些網格點將被插值,并進一步細分,逐漸形成稠密的體數據點集。
其優越性如下(1)對于三角形的三維網格數據,可以通過本發明,經過迭代計算生成稠密的連續面數據;(2)插值型方法所生成的圖形經過其初始的控制頂點,當需要進行幾何形體變形時,可以直接操縱控制頂點,進行交互式的操作,易于構造任意形狀的三維幾何形體。
圖1為三角形面片分裂示意2為規則三角形邊點細分規則示意3為不規則三角形邊點細分規則示意圖具體實施方式
下面結合附圖對本發明做進一步的說明。
本發明對規則三角形的細分過程如附圖1所示,先對該三角形的拓撲網格進行分裂,附圖1左圖為原三角形,右圖為分裂后三角形,具體如下(1)在三角形的3條邊上,各生成一個邊點。
(2)分別連接新生成的3個邊點。
(3)按照附圖1右圖的規則連接新生成的邊點與三角形原有的頂點。
(4)從幾何數據中刪除三角形原有的3條邊,用附圖1右圖中的9條邊取而代之。
(5)從幾何數據中刪除原有三角形,用附圖1右圖中的4個三角形取而代之。
對網格中的所有三角形進行分裂后,通過幾何規則計算點的位置,具體如下(1)若三角形為規則三角形,即三角形3個頂點都為規則頂點,與三角形3個頂點相連接的邊的數目均為6,那么按照圖2給出的掩膜,從三角形網格數據中取出相對應的點,按照以下方法計算新插入點的位置q=1732(P1+P2)+116(P3+P4)-132(P5+P6+P7+P8+P9+P10)]]>(2)若三角形為非規則三角形,即三角形3個頂點中,至少有一個頂點滿足此條件與該頂點相鄰接的邊的數目不為6。對于邊點的生成,取出連接的邊數目不為6的頂點P0,然后再取出所有與該頂點相連接的頂點,把相連接的頂點按照逆時針或者順時針順序排放好,以邊點所在的頂點為P1,其余點按排放順序編號為P2、P3、P4、....,假設共有n個頂點,那么新邊點的位置應該用如下方法確定q=w0p0k+Σi=1nwipik]]>其中Wi為與Pi對應的權重,計算法方法w0=34w1=12n+14wk=12ncos2πkn,(k=2,3,...,n)]]>(3)計算頂點,頂點位置在細分過程中保持不變。
通過以上的三角形插值曲面細分算法,一個三角形將被分成9個小的三角形,在曲面細分循環迭代計算中,可能的循環停止條件如下已經達到足夠的計算精度或顯示精度;最長的一條邊的長度小于某個預先給定的值;或者最大的面元素都小于某個參數值;面元素的數量大于某個參數值。
實驗表明,一般進行3-5次曲面細分就能夠得到較稠密的體數據,滿足應用要求。
本發明在三角形拓撲結構實體上的細分規則,,網格中的點將被插值,并進一步細分,逐漸形成稠密的體數據點集。
權利要求
1.一種基于三角形插值曲面細分的幾何數據細分方法,其特征在于先利用拓撲規則將三角形的拓撲網格進行分裂,以增加新頂點并形成新的網格拓撲,再利用幾何規則計算所有頂點的幾何位置;循環迭代上述步驟至滿足循環停止條件。
2.根據權利要求1所述的基于三角形插值曲面細分的幾何數據細分方法,其特征在于所述拓撲規則為(1)在拓撲網格的每一個三角形中,對于三角形的三條邊,各產生一個新的邊點。原三角形每條邊應包含兩個頂點,這里稱為A、B,現于每條邊都生成了一個新的邊點C,分別連接邊點C與A,C與B,新生成兩條邊AC、BC,用新生成的兩條邊AC、BC代替原有邊AB。在一個三角形中,生成了3個新邊點C1、C2、C3,三個邊點分別兩兩連接,得到C1C2,C1C3、C2C3三條新的邊,把三條新生成的邊加入網格拓撲中;(2)原有的拓撲網格頂點保持不變。
3.根據權利要求1或2所述的基于三角形曲面插值細分的幾何數據細分方法,其特征在于所述幾何規則為不規則的三角形幾何規則,具體如下(I)計算邊點,以不規則頂點V0為中心,得到所有與不規則頂點相連接的頂點構成一個頂點環V1、V2、V3、...、Vn,其中W1、W2、W3、...、Wn為與頂點對應的權重,那么新頂點的計算方法為q=w0p0k+Σi=1nwipik]]>權重的計算法方法w0=34w1=12n+14wk=12ncos2πkn.(k=2,3,...,n)]]>(II)原頂點位置保持不變。
4.根據權利要求1或2所述的基于三角形插值體細分的幾何數據細分方法,其特征在于所述幾何規則為規則三角形幾何規則,具體如下(I)計算邊點每條邊都包含兩個頂點,取出所有與該兩個頂點相鄰接的所有頂點,在規則情況下,這些鄰接的頂點為8個,加上邊的原有的2個頂點,共有10個頂點,把它們標記為P1、P2、P3、...、P10。其中P1、P2為邊的兩個頂點,P3、P4為與P1、P2都相鄰的兩個頂點。那么新頂點的計算方法為q=1732(P1+P2)+116(P3+P4)-132(P5+P6+P7+P8+P9+P10)]]>(II)頂點保持不變。
5.根據權利要求1所述的基于三角形插值曲面細分的幾何數據細分方法,其特征在于所述循環停止條件為六面體已經達到設定的足夠的計算精度或顯示精度、或三角形的最長的一條邊的長度小于設定的值、或三角形最大的面元素小于設定的參數值、或三角形的面元素的數量大于設定的參數值。
全文摘要
本發明提供一種基于三角形插值曲面細分的幾何數據細分方法,其特征在于先利用拓撲規則將三角形的拓撲網格進行分裂,以增加新頂點并形成新的網格拓撲,再利用幾何規則計算所有頂點的兒何位置;循環迭代上述步驟至滿足循環停止條件。本發明通過在三角形拓撲結構實體上的細分規則,網格中的點將被插值,并進一步細分,逐漸形成稠密的體數據點集。
文檔編號G06T17/20GK1877640SQ200610036349
公開日2006年12月13日 申請日期2006年7月5日 優先權日2006年7月5日
發明者羅笑南, 凌若天 申請人:中山大學