專利名稱:由網(wǎng)格產(chǎn)生一組拓?fù)鋵W(xué)同構(gòu)參數(shù)化曲面的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)輔助設(shè)計(jì)領(lǐng)域,特別是計(jì)算機(jī)輔助由網(wǎng)格產(chǎn)生參數(shù)化曲面(parametric surface)。
背景技術(shù):
市場上提供有多種系統(tǒng)和程序,用于零部件的設(shè)計(jì)和零部件的組裝,例如本申請人的商標(biāo)為CATIA的產(chǎn)品。這些所謂的計(jì)算機(jī)輔助設(shè)計(jì)(CAD)系統(tǒng)允許使用者構(gòu)建和處理零部件或零部件組件的復(fù)雜的三維(3D)模型。
產(chǎn)生3D計(jì)算機(jī)圖形涉及到各種步驟,包括建模和處理步驟(細(xì)分基本網(wǎng)格,轉(zhuǎn)化成參數(shù)化曲面,重飾...)。
多種不同的建模技術(shù)可以被用于產(chǎn)生一個組件的模型。這些技術(shù)包括實(shí)體建模、線架建模和曲面建模。實(shí)體建模技術(shù)是為拓?fù)鋵W(xué)3D模型而提供的,其中3D模型是例如互連的邊和表面的集合。從幾何學(xué)上講,3D實(shí)體模型是限定出封閉表皮的多個修剪和定界曲面的集合。修剪的曲面對應(yīng)于由邊限定邊界的拓?fù)浔砻?。封閉表皮限定出由零部件材料填充的3D空間的邊界區(qū)域。另一方面,線架建??梢员挥糜诒憩F(xiàn)作為簡單3D線條集合的模型,而曲面建??梢员挥糜诒憩F(xiàn)作為外表面集合的模型。CAD系統(tǒng)可以組合這些以及其它建模技術(shù),例如參數(shù)化建模技術(shù)。CAD系統(tǒng)因此而利用邊或線條(有時(shí)用曲面)提供了對建模對象的表現(xiàn)。建模對象包括多個線條或邊;它們可以用各種方式表現(xiàn)出來,例如非均勻有理B樣條曲線(NURBS)、Bezier曲線或其它描繪曲線的算法。
關(guān)于處理步驟,在對象建模過程中,CAD程序通常使用基本網(wǎng)格(base mesh)?;揪W(wǎng)格是由互連的基元多邊形例如三角形或四邊形形成的網(wǎng)絡(luò)。
在設(shè)計(jì)過程中,使用者修改基本網(wǎng)格以獲得所需的模型,然后將其轉(zhuǎn)化為多個參數(shù)化曲面,例如NURBS即B樣條曲面。
關(guān)于被建模的產(chǎn)品,新潮的消費(fèi)產(chǎn)品的特點(diǎn)通常是具有平滑流線形狀,其復(fù)雜性要超過簡單分析表面例如平面、箱體和圓柱體。這樣的產(chǎn)品的建模通常需要使用樣條曲線和曲面等。在設(shè)計(jì)產(chǎn)品時(shí),對象曲面的平滑度是主要考慮的。結(jié)果,3D建模者通常具有各式各樣的用于產(chǎn)生平滑曲面的工具。
在下面的描述中,“曲率”被用作幾何術(shù)語來表示曲線或曲面偏離完全筆直或平整形狀的程度。曲率通常是由局部密切半徑的倒數(shù)來計(jì)算出的。因此,當(dāng)曲線略微彎曲時(shí),其具有小曲率和大半徑,而當(dāng)曲線劇烈彎曲時(shí),其具有大曲率和小半徑。對于圓弧、圓或以它們?yōu)榛A(chǔ)的曲面,曲率是恒定的;對于更為復(fù)雜的形狀,例如樣條(以及以其為基礎(chǔ)的曲面),曲率沿曲線長度連續(xù)變化。
此外,術(shù)語“連續(xù)度(continuity)”將被用于表示一曲線或曲面上的各個點(diǎn)之間、以及對接曲線或曲面之間的偏離(或關(guān)系)。這種關(guān)系可以歸入不同級別的連續(xù)度C0、C1或C2。C0只表示位置連續(xù)性(對接曲線/曲面時(shí)的情況也是如此)。在這種情況下,曲線在C0點(diǎn)表現(xiàn)出拐點(diǎn)。類似地,曲面具有沿C0接縫的折痕。對接曲線和曲面彼此接觸,但它們沒有曲率相似性。C1表示增加了切線連續(xù)性的連續(xù)度級別,C2增加了曲率連續(xù)性。如果曲線上一個點(diǎn)的兩側(cè)曲率相等,則曲線是無接縫的。
此外,可以參考G0、G1和G2幾何連續(xù)度(geometricalcontinuity),所述幾何連續(xù)度從數(shù)學(xué)的角度來看與前者略有不同,如本領(lǐng)域中所公知。例如,對于兩個結(jié)合的曲線段來說,如果各曲線的n階導(dǎo)數(shù)在結(jié)點(diǎn)處具有相同的方向(由某些矩陣限定的比例性就足夠了,不要求相等),則所述曲線段具有Gn連續(xù)度。結(jié)果,Cn就意味著Gn,但反過來就不一定正確。
在曲面建模的核心技術(shù)中,通常使用逐段低階代數(shù)曲面或隱式曲面片。曲面片通常是通過一個格子的控制點(diǎn)而控制的,從而可以變形。使用曲面片時(shí)重要的一點(diǎn)是,曲面片必須被適宜地結(jié)合,以確保沿曲面片邊界的幾何連續(xù)性。通常,曲面片單元被遞歸細(xì)分,以使局部曲率適應(yīng)于所要求的連續(xù)度。
在各種應(yīng)用中(例如計(jì)算機(jī)繪圖),細(xì)分曲面,例如Catmull-Clark,被用于逼近(模擬)由基本網(wǎng)格得出的曲面。特別地講,Catmull-Clark細(xì)分曲面目前被用于從任意的網(wǎng)格(即具有任意的拓?fù)鋵W(xué)結(jié)構(gòu))產(chǎn)生平滑的曲面。它們被描述為對用無限細(xì)化過程產(chǎn)生限制。一個關(guān)鍵的概念是細(xì)化通過反復(fù)細(xì)化初始多邊形網(wǎng)格,一系列的網(wǎng)格被產(chǎn)生,它們收斂到所產(chǎn)生的細(xì)分曲面。每個新細(xì)分步驟產(chǎn)生一個新的網(wǎng)格,其具有更多的多邊形單元并且更為平滑。特別地講,Catmull-Clark細(xì)分曲面可以被看作是雙三次均勻B樣條的產(chǎn)物。重要的一點(diǎn)是,所產(chǎn)生的網(wǎng)格主要包括四邊形,因此普通頂點(diǎn)的預(yù)期階數(shù)(valence,即坐標(biāo)數(shù))為4。
在這一方面,有時(shí)要在開式頂點(diǎn)(open vertex)和閉式頂點(diǎn)(closed vertex)之間作出區(qū)分。開式/閉式頂點(diǎn)在本領(lǐng)域中是公知的。簡而言之,假定一個頂點(diǎn)v被邊E1、E2、En+1包圍并結(jié)合,以使得En+1=E1,那么,如果沒有邊是尖銳邊,則該頂點(diǎn)被認(rèn)為是閉式的。
然而,在CAD領(lǐng)域,細(xì)分曲面由于不是參數(shù)化的而不常被采用。因此,CAD系統(tǒng)提供了轉(zhuǎn)化算法,以將細(xì)分曲面轉(zhuǎn)化成由一組曲面片例如NURBS曲面片組成的參數(shù)化曲面。
本領(lǐng)域中有多種轉(zhuǎn)化算法被描述過(參看,例如,J.PetersPatching Catmull-Clark Meshes,Siggraph 2000)。然而,所述各種現(xiàn)有轉(zhuǎn)化算法沒有被設(shè)計(jì)成考慮到開式基本網(wǎng)格,即包括開式頂點(diǎn)或邊(例如尖銳邊或邊界)以及包括頂角正交型四面體(tri-rectangular,也被稱作triquad)模式的基本網(wǎng)絡(luò)。
此外,所產(chǎn)生的參數(shù)化曲面仍然導(dǎo)致連續(xù)性質(zhì)量不足。事實(shí)上,這些曲面在除下述點(diǎn)之外的任何地方具有曲率連續(xù)性這些點(diǎn)對應(yīng)于初始基本網(wǎng)格中那些不與四條邊關(guān)聯(lián)的頂點(diǎn),即超常規(guī)頂點(diǎn)(extraordinary vertices)。
此外,與本申請相并行的一種方法被公開其涉及離散傅里葉變換(參考C.LoopSecond Order Smoothness over Extraordinaryvertices,Eurographics Symposium on Geometry Processing,2004)。然而,這種方法被明確地指出僅僅適用于閉式超常規(guī)頂點(diǎn)。
因此,簡而言之,需要有一種方法由網(wǎng)格產(chǎn)生一組拓?fù)鋵W(xué)同構(gòu)的參數(shù)化曲面,該方法適用于處理開式基本網(wǎng)格,可能具有頂角正交型四面體模式。所述方法還應(yīng)能夠提供適合于基本網(wǎng)格中存在的各種類型表面的參數(shù)化曲面。
此外,所述方法優(yōu)選滿足給定的幾何連續(xù)度Gi(例如G1或G2)的要求,并且使用局部線性求解算法,以確保在出現(xiàn)高階數(shù)頂點(diǎn)的情況下,仍具有穩(wěn)定性。
此外,作為本發(fā)明的發(fā)明人的最大程度的了解,盡管現(xiàn)有技術(shù)中從總體上建議了產(chǎn)生參數(shù)化曲面的一些相關(guān)特征和變型,但現(xiàn)有技術(shù)沒有公開下面描述的本發(fā)明的具有高度優(yōu)點(diǎn)的特征。
發(fā)明內(nèi)容
本發(fā)明涉及一種由網(wǎng)格產(chǎn)生一組拓?fù)鋵W(xué)同構(gòu)參數(shù)化曲面的方法。所述方法包括提供網(wǎng)格的步驟,網(wǎng)格具有多個通過邊相連的頂點(diǎn),用于限定出表面,頂點(diǎn)包括階數(shù)為4的規(guī)則頂點(diǎn)和階數(shù)不為4的不規(guī)則頂點(diǎn)。所提供的網(wǎng)格可以是Catmull-Clark細(xì)分網(wǎng)格。網(wǎng)格具有在至少一個頂點(diǎn)和/或邊處定義的對比度值。對比度代表的是由網(wǎng)格構(gòu)建的曲面上的頂點(diǎn)或邊的吸引力。例如,對比度可以展示例如初始網(wǎng)格與有限細(xì)分曲面之間的差異,或者初始網(wǎng)格與以給定細(xì)分級別形成的網(wǎng)格之間的差異。所述方法還包括提供至少三種不同類型的參數(shù)化曲面;以及-對于具有規(guī)則頂點(diǎn)并且在表面的頂點(diǎn)和/或邊處只具有第一對比度值(例如缺省值)的表面,應(yīng)用第一種參數(shù)化曲面;-對于具有規(guī)則頂點(diǎn)并且在至少一個頂點(diǎn)或邊具有第二對比度值(例如非缺省值)的表面,應(yīng)用第二種參數(shù)化曲面;以及-對于具有至少一個不規(guī)則頂點(diǎn)的表面,應(yīng)用第三種參數(shù)化曲面。
因此,應(yīng)用曲面的步驟可以由具有任意拓?fù)浣Y(jié)構(gòu)的基本網(wǎng)格開始工作,并且可以使用Catmull-Clark細(xì)分曲面。表面至曲面的測繪可以確保初始拓?fù)浣Y(jié)構(gòu)被遵從。
具有規(guī)則頂點(diǎn)并且頂點(diǎn)和邊處的對比度為缺省值的表面的一個典型例子是具有4階頂點(diǎn)和不尖銳邊的表面。
具有規(guī)則頂點(diǎn)并且頂點(diǎn)和邊處的對比度為非缺省值的表面的典型例子是(i)表面具有至少一個3階頂點(diǎn),該頂點(diǎn)位于兩個尖銳邊的結(jié)合部;(ii)表面具有由尖銳邊結(jié)合的4階頂點(diǎn)。請注意,位于尖銳邊上的3階頂點(diǎn)不被認(rèn)為是不規(guī)則頂點(diǎn)。因此,這樣的表面(包括具有開式頂點(diǎn)的表面)將受到特殊處理。
具有至少一個不規(guī)則頂點(diǎn)的表面的一個典型例子是包括由非尖銳邊結(jié)合的超常規(guī)頂點(diǎn)的表面。因此,具有超常規(guī)頂點(diǎn)的表面在算法中被區(qū)別對待,并且被應(yīng)用適應(yīng)性參數(shù)化曲面。
此外,如前所述,方案同時(shí)考慮到規(guī)則和不規(guī)則頂點(diǎn),因此可以考慮采用頂角正交型四面體網(wǎng)格。
因此,提供了一種漸進(jìn)式的參數(shù)化(因此而最優(yōu)化)方法。所應(yīng)用的曲面的類型以及復(fù)雜性被根據(jù)對比度的局部值和頂點(diǎn)的性質(zhì)而選擇,從而提供了對建模曲面的適應(yīng)性精細(xì)化。這極大地防止了提供過多的控制點(diǎn)。之后的解方程也因此而變得容易了。
這樣,第一種參數(shù)化曲面由于相對簡單因此其控制點(diǎn)數(shù)量優(yōu)選少于第二、第三種參數(shù)化曲面的控制點(diǎn)數(shù)量。
此外,第三種參數(shù)化曲面的控制點(diǎn)數(shù)量優(yōu)選多于第一、第二種參數(shù)化曲面的控制點(diǎn)數(shù)量。
由于應(yīng)用不同類型的曲面所提供的靈活性,因此在一個改型中,第一、第二和第三種參數(shù)化曲面的是B樣條類型的,同時(shí)還具有不同的結(jié)點(diǎn)矢量。
在一個實(shí)施例中,在應(yīng)用曲面的步驟每個參數(shù)化曲面具有至少等于所要求的Gi級幾何連續(xù)度的Cj級內(nèi)部連續(xù)度(internalcontinuity)。這意味著,j大于或等于i,也就是說,所述內(nèi)部連續(xù)度至少涵蓋了所要求的幾何連續(xù)度。相反,至少兩個參數(shù)化曲面之間在公共邊兩側(cè)的幾何連續(xù)度低于所要求的Gi級幾何連續(xù)度。此外,對于每個奇異頂點(diǎn),例如超常規(guī)頂點(diǎn),所述方法還包括以下步驟確定一個方程組,其與位于結(jié)合至奇異頂點(diǎn)的邊兩側(cè)的參數(shù)化參數(shù)化曲面參數(shù)有關(guān),并可在結(jié)合的邊兩側(cè)實(shí)現(xiàn)所要求的幾何連續(xù)度。所述參數(shù)包括例如所謂控制點(diǎn)的位置坐標(biāo)。然后,所述方法包括求解方程組的步驟,以獲得所述參數(shù)。所述奇異頂點(diǎn)結(jié)合著至少一條邊,在所述邊的兩側(cè),相鄰參數(shù)化曲面之間的連續(xù)度低于所要求的Gi級幾何連續(xù)度。
因此,上述算法從根本上講是局部性的,對于每個超常規(guī)頂點(diǎn)確定出一套方程組并且對其求解。此外,同時(shí)考慮到開式和閉式頂點(diǎn),開式頂點(diǎn)沒有被棄用。此外,構(gòu)建局部方程可以實(shí)現(xiàn)線性解,這反過來又極大地簡化或加速了處理過程。在完成處理過程后,由于上述方程組的實(shí)質(zhì),因此可以達(dá)到目標(biāo)連續(xù)度。
在一個優(yōu)選實(shí)施例中,所提供的參數(shù)化基元曲面是B樣條類型的,并且所述求解步驟中的參數(shù)是B樣條控制點(diǎn)的位置坐標(biāo)。這使得所要解決的問題保持為線性問題成為可能。
在另一個優(yōu)選實(shí)施例中,在確定方程組的步驟,所確定的方程組中的系數(shù)被設(shè)定為常數(shù),或是根據(jù)奇異點(diǎn)的類型而被設(shè)定。所述系數(shù)可以例如以多邊形的形式給出,由各個邊的相對長度和邊之間的角度獲得。隨后,本領(lǐng)域技術(shù)人員可以根據(jù)預(yù)期的曲面視覺質(zhì)量調(diào)節(jié)所述系數(shù),例如通過試算和誤差校正。這樣,由于在解方程組之前設(shè)定了系數(shù),因此求解問題保持為線性。
請注意,在一個改型中,上述參數(shù)可以包括一些系數(shù),例如根據(jù)使用者的要求,以使得問題是至少部分非線性的。盡管在這種情況下非線性可能導(dǎo)致求解中的額外成本,但相對于所要求的連續(xù)度,如此解出的系數(shù)質(zhì)量可以提高。
前面非常廣義地概述了本發(fā)明的特征和優(yōu)點(diǎn),以便更好地理解后面對本發(fā)明所作詳細(xì)描述。本發(fā)明的其它特征和優(yōu)點(diǎn)將在后面描述,以展現(xiàn)權(quán)利要求中限定的主題。本領(lǐng)域技術(shù)人員可以理解,這里公開的思想和特定實(shí)施例容易被用作基礎(chǔ)來修改或設(shè)計(jì)用于執(zhí)行與本發(fā)明相同目的的其它過程。本領(lǐng)域技術(shù)人員還可以理解,這種等價(jià)的過程沒有脫離權(quán)利要求中限定的本發(fā)明的精神和范圍。通過下面結(jié)合附圖所作的詳細(xì)描述,可以更好地理解那些作為本發(fā)明獨(dú)特特點(diǎn)的新穎特征以及其它目的和優(yōu)點(diǎn)。然而,需要著重指出,附圖僅僅是出于解釋的目的而給出的,并不意味著限定出本發(fā)明的范圍。
通過下面參照附圖所做描述,可以更全面地理解本發(fā)明。
圖1是顯示出本發(fā)明優(yōu)選實(shí)施例的流程圖。
圖2是對超常規(guī)頂點(diǎn)進(jìn)行特殊處理以滿足給定幾何連續(xù)度要求時(shí)的流程圖。
圖3示出了對象表面轉(zhuǎn)化之后的建模對象的參數(shù)化曲面,其中根據(jù)該表面應(yīng)用了不同類型的基元曲面。
圖4A示出了另一建模對象的參數(shù)化曲面,其中基元曲面的邊結(jié)合在6階超常規(guī)頂點(diǎn)。
圖4B示出了處理完成后獲得的圖4A中的參數(shù)化曲面以及基元曲面的控制點(diǎn)分布。
圖4C和4D分別示出了圖4A中的參數(shù)化曲面的切向和法向等高線輪廓。
圖5示出了一個超常規(guī)頂點(diǎn)和兩個基元曲面以及得出連續(xù)性方程所需的系統(tǒng)成分。
具體實(shí)施例方式
本發(fā)明涉及一種方法,其適于應(yīng)用在CAD軟件中。使用者可以通過使用者繪圖界面(GUI)來控制處理過程,該界面可以是典型的CAD界面,具有常規(guī)的菜單條,以及底部和側(cè)面工具條。所述菜單條和工具條包含一組可供使用者選擇的圖標(biāo),每個圖標(biāo)與一個或多個操作或功能相關(guān)聯(lián),如本領(lǐng)域所公知。
一些所述圖標(biāo)與用于編輯和/或表現(xiàn)建模對象的軟件工具相聯(lián)系。所述軟件工具還可以被分組到各工作臺(workbench)中。除非以其它方式設(shè)置,否則每個工作臺包括一個與其它不同的軟件工具子組。特別地講,一個工作臺是編輯平臺,其適于編輯建模對象的幾何特征。在操作中,設(shè)計(jì)者可以例如預(yù)選擇對象的一部分,然后通過選擇適宜的圖標(biāo)并且啟動適宜的工具而開始操作(例如改變形狀、尺寸、顏色等)。
GUI可以例如顯示與被顯示對象相關(guān)的數(shù)據(jù)(被稱作特征樹)。數(shù)據(jù)通常以樹形圖的方式顯示在GUI的左側(cè)。GUI還可以顯示其它類型的繪圖工具,用以例如方便顯示對象的3D定向。
作為示例,本發(fā)明的方法可以應(yīng)用于計(jì)算機(jī)網(wǎng)絡(luò)中的配有數(shù)據(jù)庫的PLM系統(tǒng)中。在這種情況下,GUI在一個具有顯示器和存儲器并且被進(jìn)一步連接到計(jì)算機(jī)網(wǎng)絡(luò)的終端上運(yùn)行,所述終端可以受益于一個產(chǎn)品數(shù)據(jù)管理(PDM)系統(tǒng)。PDM系統(tǒng)允許管理多個文件和數(shù)據(jù),它們可能具有分層次相關(guān)性。因此,多個使用者可以利用例如類似的局部設(shè)施和公共環(huán)境而以集中的方式對不同的部件/產(chǎn)品進(jìn)行工作。
這里描述的方法是為了有助于設(shè)計(jì)者由網(wǎng)格產(chǎn)生一組拓?fù)鋵W(xué)同構(gòu)的參數(shù)化曲面。所述方法還包括附加的步驟,用以獲得具有所要求的幾何連續(xù)度Gi(例如連續(xù)度G2)的參數(shù)化曲面。下面,假定連續(xù)度G2被關(guān)注,但要記住本發(fā)明的方法可以應(yīng)用于任何理想級別的連續(xù)度。圖1在廣義上示出了本發(fā)明優(yōu)選實(shí)施例的流程圖。
參看圖1,本方法的處理過程包括第一步驟S10,提供基本網(wǎng)格,其對具有任意拓?fù)鋵W(xué)結(jié)構(gòu)的給定對象(例如圖3所示的對象)進(jìn)行建模。如一般情況,所述網(wǎng)格包括多個通過邊相連的頂點(diǎn),所述便限定出對象的表面。
在步驟S12,所述網(wǎng)格經(jīng)受曲面細(xì)分,例如根據(jù)Catmull-Clark法則。如前所述,所述細(xì)分導(dǎo)致可以由初始網(wǎng)格復(fù)原出平滑的曲面,從而產(chǎn)生具有更多多邊形單元并因此而更平滑的新網(wǎng)格。如前所述,除了那些與不與四條邊關(guān)聯(lián)的頂點(diǎn)即超常規(guī)頂點(diǎn)相對應(yīng)的點(diǎn)以外,Catmull-Clark曲面在任何地方都具有曲率連續(xù)性。因此,將描述可以用于重獲所要求的連續(xù)度的方案(流程)。
所述處理過程包括另一步驟S14,即數(shù)據(jù)初始化,其通常包括升級缺省值或使用者設(shè)定值。初始化過程可以例如前進(jìn)到根據(jù)缺省值或使用者設(shè)定參數(shù)而進(jìn)行曲面修剪。使用者可以例如在考慮到邊的邊界情況下輸入或修改特定的曲面細(xì)節(jié)。此時(shí)各個邊可以是尖銳的或平滑的,用以例如模擬外圓角/內(nèi)圓角特征。
在Catmull-Clark細(xì)分之后,對比度(sharpness)值可以在步驟S12或S14被設(shè)定和存儲。對比度值可以例如被基于網(wǎng)格特征而自動設(shè)定,或者同樣可以由使用者設(shè)定。這樣,在需要時(shí),使用者被建議輸入對比度的非缺省值(特殊的頂點(diǎn)或邊);對比度的缺省值在其它任何地方都被采用。
接下來,在步驟S16進(jìn)行這里廣以上的參數(shù)化步驟(或轉(zhuǎn)化)。在完成參數(shù)化步驟之后,程序提供出一組參數(shù)化基元曲面(parametric elementary surface),所述曲面具有由頂點(diǎn)結(jié)合的邊。這種基元曲面具有內(nèi)部連續(xù)度Cj,其至少等于所要求的連續(xù)度G2。例如,如果所要求的連續(xù)度為G2,則所產(chǎn)生的基元曲面的內(nèi)部連續(xù)度至少為C2。為了清楚起見,C2級別的內(nèi)部連續(xù)度要求在后面被采用。同例如通常的內(nèi)部連續(xù)度C1相比,提供內(nèi)部連續(xù)度C2可以改進(jìn)所產(chǎn)生的曲面的質(zhì)量。
請注意,在完成參數(shù)化步驟后得到的對象幾何連續(xù)度取決于兩個基元曲面,二者在整個公共邊處具有更低的連續(xù)度。因此,在這個階段,幾何連續(xù)度通常低于G2(所要求的連續(xù)度)。
所述參數(shù)化步驟S16包括轉(zhuǎn)化步驟,其中細(xì)分曲面被轉(zhuǎn)化成一組基元曲面。作為轉(zhuǎn)化過程的結(jié)果,基本網(wǎng)格的每個初始表面被轉(zhuǎn)化成一個基元曲面。因此,可以實(shí)現(xiàn)表面至曲面的測繪,從而基本網(wǎng)格的初始拓?fù)浣Y(jié)構(gòu)被遵從。結(jié)果,建模對象的管理得到簡化。
作為示例,所述轉(zhuǎn)化步驟的結(jié)果顯示于圖3中,圖中示出了建模對象10的參數(shù)化曲面,其中根據(jù)對象10的初始表面應(yīng)用了不同類型的曲面40、42、44。曲面40和42(相應(yīng)地42和44)具有公共邊41(相應(yīng)地43)。附圖標(biāo)記30、32、34表示表面轉(zhuǎn)化完成后獲得的控制點(diǎn)。
可以看到,頂點(diǎn)包括4階頂點(diǎn)(參看例如頂點(diǎn)20)和階數(shù)不是4的頂點(diǎn)(例如超常規(guī)頂點(diǎn)22、24)。此外,位于對象10的平面上的頂點(diǎn)22與位于對象10的頂部尖銳邊頂點(diǎn)24、26(請注意,事實(shí)上頂點(diǎn)24、26位于兩個尖銳邊45、47的交叉部)不同。然而,連接著兩個尖銳邊的3階超常規(guī)頂點(diǎn)通常不被認(rèn)為是不規(guī)則的。因此,考慮到轉(zhuǎn)化步驟,后文中將頂點(diǎn)22稱作不規(guī)則頂點(diǎn),而頂點(diǎn)24被認(rèn)為是(半)規(guī)則頂點(diǎn)(因此不被認(rèn)為是不規(guī)則的)。然而,為了將在后面描述的其它目的,將會采用不同的分類方案(后面將提到奇異頂點(diǎn)(singular vertices),以便不與前面的不規(guī)則頂點(diǎn)相混淆)。
此外,如前所述,網(wǎng)格可以在轉(zhuǎn)化步驟之前(例如在步驟S12或S14)與頂點(diǎn)或邊上定義的對比度值相聯(lián)系。所述對比度代表相應(yīng)頂點(diǎn)或邊的局部吸引力。例如,非尖銳邊41、43將被賦予缺省值“0”。在與邊41和43不同的地方,邊45由于構(gòu)成對象10的尖銳邊界邊緣而可以例如被賦予缺省值“1”。對比度值可以是二進(jìn)制的,如上面的例子。然而,優(yōu)選地,對比度值被存儲為0至100的整數(shù)值,100代表最大對比度。各種算法可以被用于確定所述對比度值,例如根據(jù)初始基本網(wǎng)與有限細(xì)分曲面之間的差異。
根據(jù)所述定義的對比度值和頂點(diǎn)的性質(zhì),所述處理過程接下來可以在轉(zhuǎn)化步驟中提供不同類型的將要被應(yīng)用的參數(shù)化曲面,從而適用于基本網(wǎng)格中存在的各種類型的表面,并且恢復(fù)漸進(jìn)式參數(shù)化。
作為示例,在發(fā)現(xiàn)初始表面包括具有缺省值的規(guī)則頂點(diǎn)20和邊41時(shí),應(yīng)用第一種參數(shù)化曲面40。接下來,對于包括邊45的表面,也就是說,對比度值為非缺省值,應(yīng)用第二種參數(shù)化曲面44。請注意,相應(yīng)的表面同時(shí)包括規(guī)則頂點(diǎn)和半規(guī)則頂點(diǎn)24、26(在這里不認(rèn)為是不規(guī)則的)。最后,對于包括不規(guī)則或超常規(guī)頂點(diǎn)22的表面,應(yīng)用第三種曲面42。
請注意,由于包括規(guī)則頂點(diǎn)以及至少一個具有非缺省對比度值的頂點(diǎn)或邊的各種表面在轉(zhuǎn)化算法中被區(qū)別考慮,因此所述轉(zhuǎn)化同時(shí)適用于網(wǎng)格的閉式和開式頂點(diǎn)。
如我們目前的認(rèn)識,所應(yīng)用的曲面的復(fù)雜性是相對于局部對比度值和頂點(diǎn)的性質(zhì)而選擇的,由此所應(yīng)用的曲面的精細(xì)化是局部最優(yōu)化的。特別地講,第三種曲面42具有大量的控制點(diǎn)32,第一種參數(shù)化曲面40中的控制點(diǎn)30的數(shù)量少于第二、第三種曲面42、44中的控制點(diǎn)32、34中的數(shù)量。換言之,根據(jù)所應(yīng)用的曲面的類型,相應(yīng)網(wǎng)格中的控制點(diǎn)的數(shù)量的密度更多或更少。
控制點(diǎn)的數(shù)量可以例如基于賦予的對比度值而計(jì)算(值“0”導(dǎo)致標(biāo)準(zhǔn)密度,非缺省值例如“1”或“100”導(dǎo)致密度增加)。
控制點(diǎn)隨后可以被移動以局部修改曲面,例如達(dá)到兩個參數(shù)化曲面片之間所要求的給定幾何連續(xù)度。具有規(guī)則頂點(diǎn)和非尖銳邊的表面不會導(dǎo)致缺少連續(xù)性,從而可以應(yīng)用低密度曲面。相反,在超常規(guī)頂點(diǎn)附近,容易出現(xiàn)不連續(xù)性,應(yīng)當(dāng)為相應(yīng)曲面提供網(wǎng)絡(luò)形式的更密的控制點(diǎn),從而可以復(fù)原所要求的連續(xù)度。
非工作控制點(diǎn)因此而被棄用,以使得隨后的步驟加速,如后文所述。
現(xiàn)在返回圖1,一旦在步驟S16中提供了不同類型的曲面,算法將考慮每個表面并且前進(jìn)到步驟S20-24,根據(jù)表面是否具有超常規(guī)頂點(diǎn)而進(jìn)行區(qū)別處理。
在發(fā)現(xiàn)超常規(guī)頂點(diǎn)的情況下,所述處理過程執(zhí)行中間均一化步驟S26,在此用于算法后續(xù)部分的細(xì)節(jié)被確定。作為示例,此處可以前進(jìn)到改變體系,例如從B樣條改變到Bézier形式,以便使后續(xù)的步驟加速。
然后,對于每個超常規(guī)頂點(diǎn)(S28,每個超常規(guī)頂點(diǎn)在這里被認(rèn)為是奇異頂點(diǎn)),特定的方案被應(yīng)用,以復(fù)原所要求的連續(xù)度G2(S30-44)。下面參照圖2描述這一方案。
首先,所述方案(流程)區(qū)分處理開式頂點(diǎn)、閉式頂點(diǎn)和與尖銳邊相連的閉式頂點(diǎn)(分別在S31,S38-40和S38-39)。
在檢測到閉式頂點(diǎn)時(shí),定義一個方程組,所述方程組與結(jié)合所述頂點(diǎn)的邊的兩側(cè)基元曲面參數(shù)(例如控制點(diǎn)的位置坐標(biāo))有關(guān),所述方程組可以在連接所述閉式頂點(diǎn)的邊的兩側(cè)實(shí)現(xiàn)所要求的連續(xù)度。然后,所述方程的系數(shù)被計(jì)算并且方程被求解,如后文詳細(xì)描述(S38-40)。
對于開式頂點(diǎn)(S31),根據(jù)與所述開式頂點(diǎn)結(jié)合的邊,在步驟S32計(jì)算不同的區(qū)間(sectors)。區(qū)間被定義為由結(jié)合所述開式頂點(diǎn)的兩個接近尖銳邊限定的空間。然而,如果只存在一個尖銳邊,則只有一個區(qū)間被確定,其包括圍繞所述頂點(diǎn)的邊形成的圓所限定的空間。在這種情況下,對于每個計(jì)算出的區(qū)間分別定義一個方程組,以便實(shí)現(xiàn)所述區(qū)間內(nèi)的結(jié)合邊兩側(cè)的所要求的幾何連續(xù)度。
接下來看定義的方程組,所述方程組與結(jié)合至所述頂點(diǎn)的所有關(guān)聯(lián)邊兩側(cè)的基元曲面參數(shù)有關(guān)。請注意,在閉式頂點(diǎn)的情況下,所述邊涉及所有相關(guān)的邊,而在開式頂點(diǎn)或由尖銳邊結(jié)合的閉式頂點(diǎn)的情況下,則局限在從屬于單一區(qū)間的邊。
所述方程實(shí)現(xiàn)結(jié)合邊兩側(cè)的幾何連續(xù)性。特別地講,對每個被考察的頂點(diǎn)定義方程組;因此,難度取決于被考察的頂點(diǎn)的數(shù)量。方程依從于固定的約束,如下面所解釋。
參看圖5,考慮兩個對接的B樣條曲面S1和S2,以及從超常規(guī)頂點(diǎn)28引出的用于定義各個邊Eu、Ev、r、Es的局部方向的單位矢量u、v、r、s。在本例中,頂點(diǎn)28是奇異頂點(diǎn),因?yàn)樗Y(jié)合了邊Ev,r,在該邊的兩側(cè),曲面S1和S2之間的連續(xù)度假定低于所要求的連續(xù)度G2。
利用常規(guī)的符號方法,連續(xù)度G0產(chǎn)生下面的條件S1(0,v)=S2(r,0)=C(t) (1)其中C(t)是曲面S1和S2的公共曲線。連續(xù)度G1適用于下面的條件α(t)∂S1(0,t)∂u+β(t)∂S2(t,0)∂r+γ(t)∂S2(t,0)∂s=0,α(t),γ(t)>0---(2)]]>或等價(jià)于α(t)∂S1(0,t)∂u+β(t)∂S1(0,t)∂v+γ(t)∂S2(t,0)∂s=0---(3)]]>其中α、β、γ是形狀參數(shù),即連續(xù)度條件方程的系數(shù),可能取決于t,如后文中詳細(xì)描述。接下來,假定方程(2)或(3)中的條件滿足,則在下述條件下可實(shí)現(xiàn)連續(xù)度G2α2∂2S1∂u2+γ2∂2S2∂s2+2βγ∂2S2∂r∂s+β2∂2S2∂r2+δ∂S2∂r+η∂S2∂s=0---(4)]]>其中為了保持清楚,符號(0,t)、(t,0)等被去掉。
上面的各個方程暗中涉及曲面控制點(diǎn)的位置坐標(biāo)。
至此,還沒有太多地介紹形狀參數(shù),即系數(shù)α、β、γ...;它們可以例如設(shè)置為常數(shù),例如α0、β0、γ0...;或者可以根據(jù)奇異點(diǎn)的類型設(shè)置(步驟S36或S40),可能是由使用者設(shè)定的。
還可以將這些系數(shù)α、β、γ...選擇為緩慢變化的多項(xiàng)式而預(yù)參數(shù)化(例如通過試算和誤差校正),從而逐漸提高最終的繪圖質(zhì)量。
作為示例,參照圖4A,α0、β0、γ0、δ0、η0的適宜數(shù)值分別為1.0、-0.618034、1.0、0.0和0.0。
所述系數(shù)仍可以給出低階多項(xiàng)式形式,其取決于局部邊的相對長度和邊之間的角度。此外,在解方程組之前,這些系數(shù)被計(jì)算出來(S36或S40),由此解上述方程組就僅僅是線性問題,例如隨著奇異頂點(diǎn)的數(shù)量而線性增大。本領(lǐng)域的技術(shù)人員可以構(gòu)想出各種的系數(shù)形式。
在完成求解步驟之后,根據(jù)返回的新的控制點(diǎn)位置更新圍繞每個奇異頂點(diǎn)的NURBS(S42)。
請注意,結(jié)合至尖銳邊的閉式頂點(diǎn)被上述流程(S38-39)檢測,并隨后以與開式頂點(diǎn)相同的方式處理(由于這兩種情況之間存在拓?fù)鋵W(xué)相似性),從而復(fù)原所要求的連續(xù)度。因此,閉式和開式(也結(jié)合至尖銳邊)超常規(guī)頂點(diǎn)都被認(rèn)為是奇異頂點(diǎn),并且在本流程中以類似方式處理。
與此不同,在前面描述的轉(zhuǎn)化步驟(S16)區(qū)別對待包含不規(guī)則頂點(diǎn)(例如超常規(guī)開式頂點(diǎn))的表面和包含結(jié)合至尖銳邊的頂點(diǎn)(半規(guī)則性)的表面。
算法在步驟S44結(jié)束。
這樣,在完成后,上述流程返回到目標(biāo)參數(shù)(相關(guān)控制點(diǎn)的位置坐標(biāo)),并且據(jù)此修改曲面,從而獲得所要求的連續(xù)度,在此為G2。結(jié)果,由于對接曲面之間的結(jié)合部的曲率(至少部分地)成比例,因此所產(chǎn)生的結(jié)合部是無接縫且不可視覺分辨的。
這種情況在圖4A-D中例舉,圖中顯示了建模對象10的參數(shù)化曲面,其中基元曲面具有結(jié)合在6階超常規(guī)頂點(diǎn)28的邊51-56,并且在完成處理過程中后獲得控制點(diǎn)的分布(圖4B),或是獲得切向或法向等高線輪廓(highlight contour)。
可以看出(圖4B),所獲得的控制點(diǎn)分布顯示出在G2條件下獲得的典型無接縫輪廓。所達(dá)到的曲面質(zhì)量還反映在圖4C-D中的切向或法向等高線輪廓中。
可以看到,上面總體上描述的算法可以實(shí)現(xiàn)給定的幾何連續(xù)度,從根本上講是局部性的,還同時(shí)考慮到開式和閉式頂點(diǎn),并且能夠?qū)崿F(xiàn)線性求解。由于執(zhí)行的是表面至曲面的測繪,因此這種算法確保了基本網(wǎng)格的初始拓?fù)浣Y(jié)構(gòu)被遵從。這里,由表面至表面的途徑被考察。本發(fā)明的不同之處在于,通過局部關(guān)聯(lián)方案而復(fù)原幾何連續(xù)性(在每個奇異點(diǎn)周圍),因此所需控制點(diǎn)的數(shù)量少于采用由曲面至曲面的途徑。因此,本發(fā)明完全脫離了現(xiàn)有的普通方法。
權(quán)利要求
1.一種由網(wǎng)格產(chǎn)生一組拓?fù)鋵W(xué)同構(gòu)參數(shù)化曲面的方法,包括以下步驟-提供網(wǎng)格,其具有-多個通過邊相連的頂點(diǎn),用于限定出表面,所述頂點(diǎn)包括階數(shù)為4的規(guī)則頂點(diǎn)和階數(shù)不為4的不規(guī)則頂點(diǎn);和-在頂點(diǎn)和/或邊處定義的對比度值;-提供至少三種不同類型的參數(shù)化曲面;-對于具有規(guī)則頂點(diǎn)并且在表面的頂點(diǎn)和/或邊處只具有第一對比度值的表面,應(yīng)用第一種參數(shù)化曲面;-對于具有規(guī)則頂點(diǎn)并且在至少一個頂點(diǎn)或邊處具有第二對比度值的表面,應(yīng)用第二種參數(shù)化曲面;以及-對于具有至少一個不規(guī)則頂點(diǎn)的表面,應(yīng)用第三種參數(shù)化曲面。
2.如權(quán)利要求1所述的方法,其特征在于,所述網(wǎng)格根據(jù)Catmull-Clark規(guī)則被細(xì)分。
3.如權(quán)利要求1所述的方法,其特征在于,所述參數(shù)化曲面包括樣條曲面。
4.如權(quán)利要求1所述的方法,其特征在于,第一種參數(shù)化曲面的控制點(diǎn)數(shù)量少于第二、第三種參數(shù)化曲面的控制點(diǎn)數(shù)量。
5.如權(quán)利要求4所述的方法,其特征在于,第三種參數(shù)化曲面的控制點(diǎn)數(shù)量多于第一、第二種參數(shù)化曲面的控制點(diǎn)數(shù)量。
6.如權(quán)利要求1所述的方法,其特征在于,第一、第二和第三種參數(shù)化曲面的是B樣條類型的,具有不同的結(jié)點(diǎn)矢量。
7.如權(quán)利要求1所述的方法,其特征在于,在應(yīng)用參數(shù)化曲面的步驟每個所應(yīng)用的參數(shù)化曲面具有至少等于所要求的幾何連續(xù)度Gi的內(nèi)部連續(xù)度Cj,至少兩個參數(shù)化曲面之間在它們的公共邊兩側(cè)的幾何連續(xù)度低于所要求的幾何連續(xù)度Gi;所述方法對于每個奇異頂點(diǎn)還包括以下步驟-確定一個方程組,其與結(jié)合至所述奇異頂點(diǎn)的邊兩側(cè)的參數(shù)化曲面參數(shù)有關(guān),所述方程組可在所述結(jié)合的邊的兩側(cè)實(shí)現(xiàn)所要求的幾何連續(xù)度;以及-求解所述方程組,以獲得所述參數(shù);其中,奇異頂點(diǎn)結(jié)合著至少一條邊,在所述邊的兩側(cè),相鄰曲面之間的連續(xù)度低于所要求的幾何連續(xù)度Gi。
8.如權(quán)利要求7所述的方法,其特征在于,-所提供的參數(shù)化曲面是B樣條類型的;以及-所述求解步驟中的參數(shù)是B樣條控制點(diǎn)的位置坐標(biāo)。
9.如權(quán)利要求8所述的方法,其特征在于,在確定方程組的步驟,所確定的方程組中的系數(shù)被設(shè)定為常數(shù)。
10.如權(quán)利要求8所述的方法,其特征在于,在確定方程組的步驟,所確定的方程組中的系數(shù)根據(jù)奇異點(diǎn)的類型而被設(shè)定。
11.如權(quán)利要求1所述的方法,其特征在于,所提供的參數(shù)化曲面是B樣條類型的,并且所述求解步驟中的參數(shù)是-用于實(shí)現(xiàn)所要求的連續(xù)度的方程中的系數(shù);-B樣條控制點(diǎn)的位置坐標(biāo)。
12.一種由網(wǎng)格產(chǎn)生一組拓?fù)鋵W(xué)同構(gòu)參數(shù)化曲面的方法,包括以下步驟-提供Catmull-Clark細(xì)分網(wǎng)格,其具有-多個通過邊相連的頂點(diǎn),用于限定出表面,所述頂點(diǎn)包括階數(shù)為4的規(guī)則頂點(diǎn)和階數(shù)不為4的不規(guī)則頂點(diǎn);和-在至少一個頂點(diǎn)或邊處定義的對比度值,所述對比度值具有缺省值,對比度代表的是由網(wǎng)格構(gòu)建的曲面上的頂點(diǎn)或邊的吸引力;-提供至少三種不同類型的參數(shù)化曲面;-對于具有規(guī)則頂點(diǎn)并且在表面的頂點(diǎn)和邊處具有對比度缺省值的表面,應(yīng)用第一種參數(shù)化曲面;-對于具有規(guī)則頂點(diǎn)并且在至少一個頂點(diǎn)或邊處具有對比度非缺省值的表面,應(yīng)用第二種參數(shù)化曲面;以及-對于具有至少一個不規(guī)則頂點(diǎn)的表面,應(yīng)用第三種參數(shù)化曲面;其中-第三種參數(shù)化曲面的控制點(diǎn)數(shù)量多于第一種參數(shù)化曲面的控制點(diǎn)數(shù)量,第二種參數(shù)化曲面的控制點(diǎn)數(shù)量多于第一種參數(shù)化曲面的控制點(diǎn)數(shù)量。
全文摘要
本發(fā)明涉及由網(wǎng)格產(chǎn)生一組拓?fù)鋵W(xué)同構(gòu)參數(shù)化曲面的方法,包括提供網(wǎng)格,網(wǎng)格具有多個通過邊相連的頂點(diǎn),用于限定出表面,頂點(diǎn)包括階數(shù)為4的規(guī)則頂點(diǎn)和階數(shù)不為4的不規(guī)則頂點(diǎn)。網(wǎng)格可以是Catmull-Clark細(xì)分網(wǎng)格。網(wǎng)格具有在至少一個頂點(diǎn)或邊處定義的對比度值,對比度值具有缺省值,對比度代表的是由網(wǎng)格構(gòu)建的曲面上的頂點(diǎn)或邊的吸引力。所述方法還包括提供至少三種參數(shù)化曲面;對具有規(guī)則頂點(diǎn)并且在表面的頂點(diǎn)和邊處具有對比度缺省值的表面應(yīng)用第一種參數(shù)化曲面;對具有規(guī)則頂點(diǎn)并且在至少一個頂點(diǎn)或邊處具有對比度非缺省值的表面應(yīng)用第二種參數(shù)化曲面;對具有至少一個不規(guī)則頂點(diǎn)的表面應(yīng)用第三種參數(shù)化曲面。
文檔編號G06T15/00GK1916966SQ200610108679
公開日2007年2月21日 申請日期2006年8月3日 優(yōu)先權(quán)日2005年8月4日
發(fā)明者樊尚·尼格羅 申請人:達(dá)索系統(tǒng)公司