專利名稱:相對于給定對稱操作對稱的參數曲面的創建方法
技術領域:
本發明涉及計算機輔助設計領域,更具體而言,涉及參數曲面,
尤其是相對于給定對稱操作(given symmetry operation)對稱的參數 曲面的計算機輔助創建。
背景技術:
市面上有很多用于零件或者零件組裝件設計的系統和程序,例如 由本申請人提供的商標為CATIA的產品。這些所謂的計算機輔助設 計(CAD)系統允許用戶構建和操縱零件或零件組裝件的復雜三維 (3D)模型。
3D計算機圖形的創建涉及各種各樣的步驟,包括建模和處理步 驟(基礎網格的細分、向參數曲面的轉換、繪制等)。
可以采用很多種不同的建模技術創建組裝件的模型。這些技術包 括實體建模、線框建模和曲面建模。實體建模技術是為拓撲學3D模 型提供的,其中,例如,所述3D模型是互連的邊和面的集合。從幾 何的角度而言,3D實體模型是界定閉合表層的己修整或劃界曲面的 集合。所述修整曲面對應于由邊界定的拓撲面。所述閉合表層(closed skin)界定了由零件的材料填充的3D空間的有界域。另一方面,可 以采用線框建模技術表示作為簡單的3D線的集合的模型,而曲面建 模則可用來表示作為外表面的集合的模型。CAD系統可以將這些以 及其他建模技術(例如參數建模技術)結合起來。因而,CAD系統 提供了采用邊或線,以及在某些情況下采用面對模擬對象的表達。模 擬對象包括很多線或邊;可以通過很多種方式對這些線或邊進行表 達,例如,非均勻有理B樣條(NURBS)、貝塞爾曲線或描述曲線的 其他算法。
就處理步驟而言,CAD程序通常在對對象的建模過程中利用基 礎網格(basemesh)。基礎網格是互連的基本多邊形(例如三角形或 四邊形)構成的網絡。
用戶在設計過程中對基礎網格進行修改,以獲得所需的模型,之 后,將其轉化為多個參數曲面,例如NURBS或B樣條
所涉及的模擬產品通常以平滑的流線型為特征的現代消費品, 其復雜性超出了簡單的分析曲面,例如平面、盒面和柱面的適用性。 相反,通常采用樣條曲線和曲面等來模擬這樣的產品。在設計產品時, 對象表面的平滑性是主要關注點。因此,3D建模者通常要運用各種 工具來創建平滑曲面。
在下文中,將采用幾何術語"曲率"表示曲線或曲面偏離理想直
線或平面的程度。通常將曲率作為局部密切半徑的倒數來測量。因此,
當曲線只是稍微彎曲時其曲率低,半徑大,如果其彎曲得厲害,那么 其曲率高,半徑小。圓弧、圓環或以其為基礎的曲面的曲率是常數,
諸如樣條的更為復雜的曲線(以及以其為基礎的曲面)的曲率則沿所 述曲線的長度而不斷變化。
此外,采用術語"連續性"來描述沿曲線或位于曲面上的點之間 以及鄰接曲線或曲面之間的偏移(或關系)。這樣的關系可以落在不 同的連續性級別內,所述連續性級別通常為c0、 c1和c2。 c0只表 示位置連續性(如就鄰接曲線/曲面而言)。在這種情況下,曲線在 CO點表現為一個扭結。類似地,曲面沿CO接縫具有銳利的皺折。鄰 接曲線和曲面相互接觸,但是它們不具有曲率相似性。Cl表示增加 了正切連續性的連續性級別,c2增加了曲率連續性。當在曲線的某 一點兩側曲率相等的情況下,該曲線為無縫(seamless)曲線。
在本文中實際上將參考go、 Gl和g2 "幾何"連續性,其在數 學的角度略有不同,這是本領域公知的。例如,兩個交接(joining) 曲線段中相應曲線的n階導數在交點處具有"相同的方向"(由某些 矩陣定義的比例性(proportionality)就足夠了,不要求等同性),那 么所述的兩個交接的曲線段具有Gii連續性。結果,Cn隱含Gn,但 倒推未必成立。
在曲面建模的核心技術中,有一種技術通常利用分段低階代數曲
面或內隱曲面片(implicitpatch)。曲面片是通過控制點網格控制由此 可以使其變形的基本曲面。采用曲面片的一個重要的問題在于,必須 使曲面片充分接合,以確保沿曲面片邊界的幾何連續性。典型地,對 曲面片單元進行遞歸細分,從而有可能使局部曲率滿足指定的連續性 要求。
在很多應用(例如計算機圖形)中,采用細分曲面,例如, Catmull-Clark近似表示由基礎網格導出的曲面。具體而言,現在 Catmull-Clark細分曲面已經成為了平滑的自由形狀曲面建模的標準。 采用細分曲面從任意網格,即采用任意拓撲建立平滑曲面。將其定義 為無限細化過程的極限。 一個核心概念為細化(refinement):通過反 復細化初始多邊形網格,生成收斂為所得的細分曲面的網格序列。每 一新的細分步驟生成新的、具有更多多邊形元素并且更為平滑的網 格。具體而言,可以將Catmull-Clark細分曲面看作是雙三次均勻B
樣條的推廣。重要的一點在于,所生成的網格將主要由四邊形構成, 因而正常頂點的預期價(或配位數)為四。
在CAD領域,細分曲面并不能被普遍接受,因為它們并非是參 數性的。因此,CAD系統提供了將細分曲面轉化為由一組曲面片(例 如NURBS曲面片)構成的參數曲面的轉換算法。
然而,所得的參數曲面將帶來連續性質量不夠的問題。的確,所 創建的表面并非隨處都是系統地曲率連續的。
尤其是在試圖根據對稱操作使初始細分曲面對稱,以獲得相對于 所述操作對稱的最終曲面時,可能發生這一問題,在下文中將對其予 以舉例說明。的確,在這種情況下,現有的解決方案將導致曲面在初 始細分曲面和與其對稱的對等體的交接處曲率不連續。
因此,需要一種創建相對于給定對稱操作對稱的參數曲面的方 法,其能夠滿足給定的幾何連續性Gi (例如G1或G2)要求。
發明內容
因此,本發明提出了一種用于創建相對于給定對稱操作對稱的參
數曲面的方法,其包括的步驟有 -確認網格圖案;
-根據所述對稱操作由所述網格圖案創建基礎網格,所述基礎網 格相對于所述對稱操作對稱;
-以給定的次序(at a given order)將所述基礎網格細分為定義基 本面的細分網格;以及
-根據所述面形成所述參數曲面。
在其他實施例中,根據本發明的方法可以包括一個或多個下述特
征
-所述網格圖案具有多個頂點,所述創建步驟還包括根據所述 對稱操作修改所述網格圖案的某些頂點;以及根據所述對稱操作和所 述網格圖案的未經修改的頂點獲得所述基礎網格,以形成所述基礎網 格;
-在所述修改步驟中舍棄頂點;
-在所述修改步驟中,舍棄部分頂點,對部分頂點進行位置調整;
-所述對稱操作是相對于平面的反射對稱;所述圖案頂點通過定 義圖案面的邊連接,所述平面與某些所述圖案面相交(intersect);
-所述未修改的頂點屬于完全位于所述平面的一側的圖案面;所 述舍棄的頂點屬于完全位于所述平面的另一側的圖案面;
-所述細分網格具有多個通過定義面的邊連接的頂點,并且在所 述形成步驟中,根據本發明的方法還包括如下步驟將所述細分網格 的面轉化為相應的基本參數曲面,所述基本參數曲面形成了所述參數 曲面;
-將所述參數曲面形成為具有所需的幾何連續性Gi;
-所述基礎網格是根據Catmull-Clark細分規則細分的;
-根據本發明的方法還包括提供圖形用戶界面的步驟,所述圖形
用戶界面適于顯示所述網格圖案、所述對稱操作的表示和所述參數曲
面;
-所述網格圖案、所述對稱操作的表示和所述參數曲面以3D方 式被顯示;
-在確認所述網格圖案之前,根據本發明的方法還包括如下步
驟接受用戶對所述網格圖案或所述對稱操作的修改,其中,實時執 行所述創建、細分和形成步驟;
本發明還提出了一種計算機程序產品,其包括被設計為實施根據 本發明的方法的步驟的代碼模塊(code means);此外還提出了一種 計算機系統,其包括被設計為實施根據所述方法的步驟的模塊。
此外,盡管盡本發明人所知給出了通常與參數曲面的創建相關的 某些特征和變化,但是現有技術沒有公開過文中所討論的本發明的一 些高度有利的特征。
現在將參考附圖,通過非限定性的例子描述實施本發明的系統,
其中
圖1示出了網格和相應的細分曲面;
圖2提供了將要使其根據平面對稱操作而對稱化的半個形狀的 參數曲面的例子。
圖3-5對可能導致曲率不連續性的參數曲面(對稱化之前)的情
況進行舉例說明。
圖6對在細分表面的對稱化之后發生的曲率不連續性進行了舉
例說明。
圖7示出了根據本發明獲得的曲率連續性,其是從與圖6所示的
類似的基礎網格圖案開始的。
圖8-9示出了根據本發明的實施例的網格圖案對稱化。
圖9示出了在涉及修整曲面片的連^^處產生的曲率連續性。
圖10-11對在對稱化之前修改初始網格圖案的某些頂點的步驟進
行了舉例說明。
圖12示出了在圖10-11所示的修改之后對基礎網格圖案的對稱 化操作;以及
圖13示出了所得的細分表面,其滿足了 G2連續性要求。
具體實施例方式
在涉及本發明的細節之前,將參考圖l-6對一些原理和上文討論 的現有技術的缺陷進行舉例說明。
圖1中示出了網格15和所得的細分曲面16的例子。所述網格包
括
-諸如頂點11的頂點(因而,頂點是指網格的點),
-諸如邊12的邊(邊是連接兩個頂點的線),以及
-諸如面13的面,其是由至少三條邊或更多的邊構成的環形成的。
在CAD中,很多3D對象是沿至少一個方向對稱的,即相對于 軸或平面對稱。因此,必須在CAD軟件中提供允許進行對稱管理的 功能。
對象的對稱性是其特征要素。如果向對象施加既定操作時,并沒 有使對象發生改變,那么稱所述對象相對于所述操作對稱。如果假設 通過給定操作從子系統b獲得了子系統a,反之亦然,那么子系統a 和b相對于所述操作相互對稱。例如,可以采用所述對稱操作從初始 對象a開始獲得由a對象和b對象的每者構成的最終對象ab。因而, 最終對象的設計只需要設計a,這樣顯著降低了用戶所需的時間。
例如,本領域中采用的常用對稱操作為反射對稱(也稱為鏡面對 稱或鏡面圖像對稱),其涉及相對于反射的對稱。反射對稱是最為常 用的對稱類型之一。例如,在2D中存在對稱軸,而在3D中則存在 對稱平面。之后,將對象的變換的圖像稱為是鏡面對稱的。
由(例如,由點或頂點構成的)初始對象獲得變換(transformed) 對象是沿用已久的數學過程,例如,其可能涉及變換矩陣。
在下文中,將主要參考相對于平面的3D反射對稱。但是,應當 記住,本發明適用于各種類型的變換,例如相對于2D或3D對稱軸 的反射。對稱算子可能還涉及平移、旋轉或旋轉反射(rotoreflection)。
圖2給出了參數曲面24 (由細分得到的)的例子。在網格15a 內,可以在形狀24上看到曲面片或基本參數曲面29。半個形狀24 是有待根據對應于(本例當中的)對稱面20的對稱操作對稱化的形 狀。典型地,用戶執行對半個形狀(例如,包括所有的曲面片29的
半個形狀24)的設計。完成或修改所述設計將觸發細分。之后,調 用對稱算子以獲得作為曲面24相對于平面20的對稱體的互補曲面 26。如上所述,采用細分建立半個形狀24,之后利用對稱性將生成 在通過對稱面交接的位置處具有不連續性25的形狀28。產生這樣的 不連續性的原因在于細分技術的固有定義。
的確,假設通過網格15a定義形狀28,那么圍繞對稱面20如何 定位網格頂點11對于獲得既定幾何連續性是至關重要的。
例如,來看圖3-4,其中示出了半個形狀24 (與圖2相比,相對 于軸y發生了旋轉)。
在某些情況下(圖3),頂點的布置導致了處于與平面20相切的 端面處的切線方向32不與所述平面20正交,即,不與法向向量34' 共線,由此導致了不連續性。
但是,也存在能夠獲得相切連續性的狀態(參考圖4):在圖4 中,將頂點位置設置為使切線方向34與平面20正交。
但是,不可能在所有的情況下都達到完全的相切連續性,其取決 于網格的復雜性。例如,圖5示出了網格15a的例子,網格15a盡管 看起來非常簡單,但是其不允許獲得相切連續性。
因此,采用細分建立半個形狀充其量只能建立具有相切連續性的 形狀28,而無法實現曲率連續性。如圖6所示,其導致了曲率曲線 60在對稱面處不連續61,這樣無法滿足工業要求。
要想克服這樣的缺點,本發明提出在單個細分中對初始對象和變 換對象二者進行管理(managements這樣做能夠實現(例如)對稱 面處的固有相切連續性和曲率連續性,如圖7所示。
更具體而言,本發明提出首先確認網格圖案15a ("a"是指不對 稱)。所述網格圖案15a尚未受到細分,其對應于有待對稱化的初始 輸入對象(例如圖8-9所示的形狀24)。之后,根據所述對稱操作20, 由所述網格圖案建立基礎網格15s ("s"表示對稱)。變換基礎網格 15s,使之相對于所述對稱操作20對稱。 一旦獲得了所需的對稱性, 就己給定次序將基礎網格劃分為細分網格(為了清晰起見,沒有示出 經細分的基礎網格)。最后,由基礎網格的基本面(elementaryface)
構建參數曲面16,這是本領域已知的。由于細分特性的原因,上述 方案確保了連續性的保持,之所以能夠提供所述連續性往往得益于細 分算法。在圖7或圖8-9所示的例子中,采用單次細分建立對稱形狀 28在對稱面處提供了曲率連續性71,該連續性級別是細分算法所固 有的。因此,在(例如)對稱化之后,不需要通過用戶干預來校正不 連續性。注意,由于通常的網格復雜性,無論如何都難以通過人工的 方式建立對稱的細分網格。
現在將參考圖8-13對根據本發明的方法的步驟進行更詳細地舉 例說明。
參考圖8,例如,算子(operator)的輸入為
-對初始網格圖案的頂點(通過邊連接)的定位;
-指定對稱性算子(這里為對稱面20);以及
-有待對稱化的網格的一側(這里對應于半個形狀24)。所述算 法優選要求輸入的網格全部或部分地與對稱面20相交或者至少接觸 對稱面20 (如圖8所示的情況)。實際上不要求平面20理想地匹配 到初始形狀24的端面上(如圖8的情況所示)。
在用戶對輸入進行確認之后,將可能根據用戶可編輯的參數自動 生成輸出。優選實時生成所述輸出,從而實現對結果的即時顯示。此 外,可以使上一次的對稱化結果仍然顯示在圖形用戶界面上。因此, 不會因缺少對最終形狀的繪制而損害對半個細分網格的管理的簡便 性。
參考圖9,對稱化算子的第一輸出為對稱化的基礎網格,其后進 行參數曲面的細分和創建。
在一實施例中,所述算子實際上可以通過兩個步驟進行
-首先,其分析半個形狀24的初始網格圖案15a,并在必要的情 況下稍微修改網格圖案15a (將在下文中對其予以說明);
-之后,其繼續至對所述半個網格圖案15a對稱化,并接合兩側, 以生成單個網格15s。 一旦獲得了對稱化的基礎網格15s,將繼續將 其細分為細分網格。
現在將參考圖10-11解釋該算法是如何修改初始網格圖案中的某些頂點的。
參考圖10:假設如上所述用戶已經確認了輸入。這里,用戶已
經對初始網格圖案15a的頂點進行了定位,并指定了對應于平面20 的對稱性算子和所要對稱化的一側121。
平面20與輸入的網格15a相交。因此,某些頂點(例如,包含 在為了清晰起見示出的區域123內的)明顯屬于有待對稱化的一側 121,而其余的頂點11A和11R則不屬于。因此,優選實施對其余頂 點的適當管理。
出于這一目的,在分析初始網格圖案15a時,所述算子可以(根 據用戶如何指定所述對稱操作20)認識到必須對某些輸入頂點IIA、 IIR進行修改。因而,對輸入網格的對稱化操作將只一依靠未修改的 頂點123。
事實上,對某些頂點進行修改似乎有利于防止在最終形狀中產生 不想要的特征。在當前情況下,優選去除頂點IIR,保留其余非對稱 特征。如果通過該算子使這一頂點對稱化,將導致鏡面頂點的產生(在 側121上),其將略微改變預期形狀。因此,優選舍棄或去除某些頂 占。
此外,可以優選調整某些輸入頂點11A的位置,例如,調整那些 靠近平面20的頂點的位置,這樣也能夠防止產生不想要的特征,同 時獲得在精神上(inspirit)接近實際的用戶愿望的對稱網格。
在一實施例中,可以采用下述方案,其提供了選擇所要舍棄或調 整的頂點的實際方式。
-所要保留的頂點123是那些屬于完全位于所要對稱化的側121 上的面的頂點;
-所要去除的頂點是
-屬于完全位于對稱面20的另一側的面的頂點(這里未示
出);以及
-屬于只有一個頂點位于所要對稱化的側121上的面的頂 點。注意,可以根據預期的繪制(rendering)實施其他方案;以及 -所要調整的頂點11A是屬于和對稱面20相交的面的保留頂點。參考圖11,重新計算所要調整的頂點,例如使之位于對稱面20 上。為了實現這一目的, 一種簡單的方法是將所述頂點投影到對稱面 20上。例如,可以采用接合邊(joining edge)的方向。
注意,就軸對稱而言,可以建立類似的規則,例如,可以將頂點 投影到軸上,就其他對稱操作的情況而言亦類似。
因而獲得了準備好進行對稱化操作的網格。基于對稱化,可以分 兩個步驟完成最后的主操作,所述兩個步驟為
-經調整的網格的對稱化(參考圖12);以及
-對所得的對稱化網格的細分(參考圖13)。
就經調整的網格的對稱化而言(參考圖12):對經調整的網格的 每一頂點P1 (除了被定位到對稱面上的頂點),采用基本變換矩陣計 算鏡像頂點PI'。由此獲得了對稱網格15s。
之后(參考圖13),采用對稱化單個網格15s計算對應的細分網 格和細分曲面16s。根據定義,所述曲面16s具有通過細分算法提供 的幾何連續性(例如,對稱面處的G2連續性)。
優選將細分網格的面轉化為相應的基本參數曲面或曲面片。這樣 的方案滿足Catmull-Clark算法,并保持了對稱化網格的拓撲結構。
所述基本參數曲面形成了具有所需的對稱性的參數曲面。
可以結合CAD軟件在合適的圖形用戶界面(GUI)內實現上述 方法和變型。所述軟件和GUI很可能實現對可能經過細分的基礎網 格以及基本參數曲面進行3D顯示。
可以為合適的類似CAD的界面提供標準菜單欄以及底部和側面 工具欄。例如,這樣的菜單欄和工具欄可以含有一組用戶可選擇的圖 符,每一圖符與一項或多項操作或功能相關,這是本領域已知的。
例如,這些圖符中的一些可以與適于對模擬產品或產品零件進行 編輯和/或處理的軟件工具相關。可以將所討論的軟件工具劃歸到工 作臺中。否則,使每一工作臺包括不同的軟件工具子集。具體而言, 其中之一可以是編輯工作臺,其適于編輯模擬產品的幾何特征。在操 作過程中,設計者可以,例如,預先選擇產品的部分,之后通過選擇 適當的圖符啟動操作(例如,改變尺寸、顏色等)。例如,典型的CAD
操作是對顯示在屏幕上的3D模擬對象的沖壓和折疊進行建模。
例如,GUI可以顯示與所顯示的產品相關的、作為"特征樹"的 數據以及其3D表示。此外,所述GUI還可以顯示各種類型的圖形工 具,例如,用于輔助對對象的3D定向的、用于觸發對經編輯的產品 的操作的模擬的工具,或者可以描繪所顯示的產品的各種特性。
作為實施例的例子,通過包括用戶計算機以及一個或多個產品數 據管理(PDM)系統的計算機網絡實現本發明的方法。所述用戶計 算機與PDM系統通信。例如,所述PDM系統可以位于網絡的主干 上。所述PDM系統允許對很多可能以分級方式相關的文件、關系和 數據進行管理。這樣的PDM系統設有產品壽命數據庫,其具有設計 者有可能加以編輯的、與模擬產品、組裝件和產品零件相關的數據。 因此,多個用戶可以通過合作的方式處理不同的零件/產品/組裝件。
權利要求
1、一種用于創建相對于給定對稱操作(20)對稱的參數曲面的方法,其包括的步驟有-確定步驟,確定網格圖案(15a);-創建步驟,根據所述對稱操作由所述網格圖案創建基礎網格(15s),所述基礎網格相對于所述對稱操作對稱;-細分步驟,以給定的次序將所述基礎網格細分為定義基本面的細分網格;以及-形成步驟,根據所述面形成所述參數曲面(16s)。
2、 根據權利要求1所述的方法,其中,所述網格圖案具有多個 頂點,所述創建步驟還包括-修改步驟,根據所述對稱操作修改所述網格圖案的某些頂點 (IIA、 11R);以及-根據所述對稱操作和所述網格圖案的未修改頂點獲得所述基 礎網格(15s),從而形成所述基礎網格。
3、 根據權利要求2所述的方法,其中,在所述修改步驟中,舍 棄頂點。
4、 根據權利要求2所述的方法,其中,在所述修改步驟中,舍 棄部分頂點(IIR),對部分頂點(11A)進行位置調節。
5、 根據權利要求3或4所述的方法,其中-所述對稱操作是相對于平面(20)的反射對稱;并且 -通過定義圖案面的邊來連接所述圖案頂點,所述平面與所述圖 案面中的一些相交。
6、 根據權利要求5所述的方法,其中 -所述未經修改的頂點屬于完全位于所述平面的一側的圖案面 (123);并且-所述舍棄的頂點(11R)屬于完全位于所述平面的另一側的圖 案面。
7、 根據權利要求1-6中的任何一項所述的方法,其中,所述細 分網格具有多個通過定義面的邊連接的頂點,在所述形成步驟中,所述方法還包括以下步驟-將所述細分網格的面轉化為相應的基本參數曲面,所述基本參數曲面形成了所述參數曲面(16s)。
8、 根據權利要求7所述的方法,其中,將所述參數曲面形成為 具有所需的幾何連續性Gi。
9、 根據權利要求8所述的方法,其中,所述基礎網格是根據 CatmuU-Clark細分規則細分的。
10、 根據權利要求l-9中的任何一項所述的方法,還包括提供圖 形用戶界面的步驟,所述圖形用戶界面適于-顯示所述網格圖案、所述對稱操作的表示和所述參數曲面。
11、 根據權利要求IO所述的方法,其中,所述網格圖案、所述 對稱操作的表示和所述參數曲面以3D方式顯示。
12、 根據權利要求-11中的任何一項所述的方法,在確認所述 網格圖案之前,其還包括如下步驟--接受用戶對所述網格圖案或所述對稱操作的修改, 其中實時執行所述創建、細分和形成步驟。
13、 一種計算機程序產品,其包括被設計為實施根據權利要求 1-12中的任何一項所述的步驟的代碼模塊。
14、 一種計算機系統,其包括被設計為實施根據權利要求1-12 中的任何一項所述的步驟的模塊。
全文摘要
本發明涉及一種用于創建相對于給定對稱操作(20)對稱的參數曲面的方法,其包括的步驟有確定網格圖案(15a);根據所述對稱操作由所述網格圖案創建基礎網格(15s),所述基礎網格相對于所述對稱操作對稱;以給定的次序將所述基礎網格細分為定義基本面的細分網格;以及根據所述面形成所述參數曲面(16s)。本發明還涉及實現根據本發明的方法的計算機程序產品和系統。
文檔編號G06T17/40GK101114386SQ20071013705
公開日2008年1月30日 申請日期2007年7月19日 優先權日2006年7月21日
發明者C·迪福, J-M·肖韋, S·羅澤爾, Y·瓦爾涅 申請人:達索系統公司