作為計算機輔助設計軟體的實體建模表示方法的中軸轉換與流程
2023-07-15 20:42:16 1

本發明涉及計算機輔助設計領域,並且更具體地涉及在這樣的框架內表示實體對象的方法。
背景技術:
現有技術的CAD系統僅從幾何角度來實現設計。
存在允許將物理意義附加到這樣的設計的強烈興趣。以前將CAD系統與有限元模擬方法合併或集成的嘗試已經失敗或提供不令人滿意的結果。本發明的發明人認為,這是由於幾何結構僅由其邊界表示的方式。
技術實現要素:
本發明引入了一種在CAD系統中表示對象的新方式,其能夠處理將物理意義附加到設計的問題,以及表示隨時間改變其位置、取向和形狀的對象。
在第一方面,本發明提供一種採用中軸變換(MAT)在計算機輔助設計(CAD)系統的數據結構內實現對象表示的方法,對象表示包括稱為中軸變換面的相鄰有界表面元素的集合,中軸變換面由位於中軸變換邊緣的集合界定,中軸變換邊緣是邊緣的任一側上的中軸變換面的表面上的曲線的部分,並且多個中軸變換面相遇的點稱為中軸變換交點,該方法至少包括:將每個中軸變換交點定義為空間域中的點;基於僅單個值為每個中軸變換交點賦予半徑函數;將每個中軸變換邊緣限定為空間中的曲線;將每個中軸變換邊緣的極限定義為位於曲線上的兩個中軸變換交點;為每個中軸變換邊緣賦予半徑函數;將每個中軸變換面定義為空間中的表面;將每個中軸變換面的極限定義為中軸變換環路,中軸變換環路包括至少三個中軸變換邊緣,共享每個中軸變換節點,由此中軸變換環路的順時針或逆時針的方向定義中軸變換面將形成在中軸變換環路的哪一側上;將中軸變換連結定義為由至少兩個中軸變換面共享的邊緣;為每個中軸變換面賦予半徑函數;和將中軸變換對象定義為中軸變換面、邊緣和交點的連通集。
在優選實施例中,在為每個中軸變換邊緣賦予半徑函數的步驟中,該函數是線性的,由此半徑沿著中軸變換邊緣線性地變化。
在另一優選實施例中,在為每個中軸變換邊緣賦予半徑函數的步驟中,該函數是非線性的,由此半徑不沿著中軸變換邊緣線性地變化。
在另一優選實施例中,在為每個中軸變換邊緣賦予半徑函數的步驟中,該函數被數值地、分段線性地或通過其它方法定義,以定義數值函數。
在另一優選實施例中,在為每個中軸變換面賦予半徑函數的步驟中,該函數是線性的,由此中軸變換交點和中軸變換邊緣是線性且共面的。
在另一優選實施例中,在為每個中軸變換面賦予半徑函數的步驟中,該函數是非線性的。
在另一優選實施例中,在為每個中軸變換邊緣賦予半徑函數的步驟中,該函數被數值地、分段線性地或用於定義數值函數的其它方法定義。
在另一優選實施例中,對象的表示與邊界表示(BREP)一起實現,並且方法進一步包括:對於每個中軸變換數據結構元素,為定義相應的中軸變換元素的邊界表示數據結構元素賦予連結;和對於每個邊界表示數據結構元素,為定義相應的邊界表示元素的中軸變換數據結構元素賦予連結。
在第二方面,本發明提供了一種計算機輔助設計CAD系統,該系統配置為實現幾何引擎函數,該幾何引擎函數使用基於中軸變換的數據結構作為實體表示方法。
在系統的另一優選實施例中,幾何引擎函數使用基於中軸變換的數據結構實體表示方法和邊界表示方法。
在第三方面,本發明提供了一種計算機輔助設計CAD系統,該系統配置為實現部件和組件建模函數,該部件和組件建模函數使用基於中軸變換的數據結構作為實體表示方法。
在系統的另一優選實施例中,部件和組件建模函數使用基於中軸變換的數據結構實體表示方法和邊界表示方法。
在第四方面,本發明提供了一種用戶界面,該用戶界面配置為通過基於中軸變換的數據結構使對象的創建和操縱能夠實現來至少作為實體表示方法。
在計算機輔助設計(CAD)系統的數據結構內實現對象的表示的方法的另一優選實施例中,對象的表示進一步包括對應於時間和中軸變換殼的第四參數,從而實現4維實體表示方法。
在第五方面,本發明提供了一種計算機輔助設計CAD系統,該系統配置為執行幾何引擎函數,該幾何引擎函數使用4維實體表示方法。
在第六方面,本發明提供了一種計算機輔助設計CAD系統,該系統配置為執行部件和組件建模函數,該部件和組件建模函數使用4維實體表示方法。
在第七方面,本發明提供了一種用戶界面,該用戶界面配置為能夠通過4維實體表示方法來創建和操縱在4維環境中表示的對象。
附圖說明
參考優選實施例的詳細描述並參考附圖,將更好地理解本發明,其中:
圖1示出了根據現有技術的CAD系統的典型結構;
圖2說明了單個對象邊界表示數據結構;
圖3說明了根據現有技術的CAD內核的典型建模結構的結構;
圖4包含了BRep和MAT表示模型之間的比較;
圖5說明了新的單一對象中軸變換數據結構;
圖6包含在BREP和MAT方法中的2D對象樣本的數據結構的示意表示;
圖7示出了由其邊界表示的3D L形對象,即蒙皮;
圖8示出了由其中軸變換表示的3D L形對象,即架構。儘管是連續的半徑函數由在MAT交點處的等半徑球在視覺上分立地表示;和
圖9示出了由中軸變換的主要元素表示的3D L形對象抽象,即僅具有非零半徑的面。
具體實施方式
定義
計算機輔助設計
計算機輔助設計(CAD)是使用計算機系統來協助設計的創建、修改、分析或優化。CAD系統(特別是用於機械設計的系統)的一個特別的興趣是表示和操縱對象形狀的任務。
根據現有技術的現代CAD系統的典型架構在圖1中示例。其可以被劃分為三個組件,即,用戶界面102、建模函數104和底層106。底層106(也被稱為CAD系統的內核或核心)包括幾何函數120和文件存儲函數124的集合,幾何(且有時為拓撲-在圖1中未示出)函數120配置為詢問和修改對象資料庫122,文件存儲函數124配置為將對象資料庫122組織成格式化文件(圖1中未示出)。
對象可以例如以在對象創建中使用的函數(圖1中的104)幾何地表示(即作為幾何數據集合)或參數地表示(即幾何對象加有序特徵集合)。對象或其部分的創建基本上由三個方法完成:
·操縱2D截面;
·通過修改面之間的尖銳邊界(例如圓角、倒角)來創建邊緣特徵;
·組合和操縱實體基元。
當前CAD系統中創建和操縱對象的方式存在差異。然而,它們都使用單個方法來表示資料庫中的對象,即所謂的邊界表示(BREP)。幾何模型的表示被稱為實體建模,其是用於3D實體的數學和計算機建模的不變的原理集合。與計算機圖形或幾何建模等相關主題不同,實體建模通過保證實體的完整性證明來強調物理逼真度。
實體建模表示模型
實體建模表示模型是以數據結構的形式捕獲虛擬對象的幾何和拓撲數據的方法。實體建模表示模型的最低要求是提供點分類函數,即能夠分辨任一點位於立體對象內部或外部-換句話說,提供對象被完全定義的證據。
存在幾種建模表示模型:
·邊界表示(BRep),其是最廣泛使用的,並且特別適合CAD應用;
·參數化基元實例和建構性實體幾何結構(CGS),其證明為不適合定義複雜對象;
·單元分解,其主要用於有限元分析軟體,即網格;
·空間枚舉,其是沿著有序結構化方向進行單元分解以在3D空間中(基於立體像素)產生圖像類型的表示的特殊情況,其用於某些有限元分析應用和X射線計算斷層攝影;
·掃描,其是僅通過2D形狀的掃描操作來創建和修改實體對象,並且用於CAD的特定小眾應用;
·隱式表示(函數表示),其是表示實體對象的分析方法。其很少用於數學中,因為對於複雜部件來說,模型變得過於複雜並且計算昂貴;
·參數化和基於未來的建模,其在許多CAD系統中用於存儲實體對象的構建歷史,作為邊界表示的補充。其可以被認為是唯一的表示,儘管當前的實踐仍然使用BREP數據結構來存儲對象的當前形狀。
邊界表示(BRep)在大多數CAD系統中使用,並且在於根據圍繞實體模型的「蒙皮」來表示和操縱實體模型。該蒙皮(或殼)由相鄰的有界表面元素(稱為面)集合組成。面由邊緣集合限定,這些邊緣是位於邊緣的任一側上的面的表面上的曲線的部分。幾個面相遇的點稱為交點。在圖2中,介紹了典型的BRep實體的數據結構組織:對象200包括一系列殼201、邊緣202和交點203:殼201由閉合的一組面204定義,每個面204定義為通過lelink 207由邊緣202的一個或多個環路206界定的無限的面205(邊緣連結在一起以形成環路206),lelink 207是定義應該在環路206的哪一側形成面204的規定;邊緣202也定義為由兩個交點界定的無限曲線208,交點定義為空間中的幾何點209。相同的數據結構可以用於通過「跳過」殼的定義來定義2維對象:單面,其中定義表面實際上是對象所在的2維空間。
(Braid I.,1974)和(Braid,Hillyard,&Stroud,1980)被認為第一次提及邊界表示,而在(Stroud I.,2006)中更詳細地闡述了目前的技術水平。
在數據結構之外,CAD系統的完整功能在如圖3所示的洋蔥狀結構中構建。由第一包絡所示的拓撲和幾何函數用於操縱和修改數據結構,其如需要可示為內核。第二包絡中示出的建模操作通常對於用戶來說是可以通過圖形用戶界面(圖3中未示出)訪問,建模操作不直接訪問數據結構,而是訪問拓撲和幾何函數。應用是最後的包絡。應用定義了使用的目的(這裡用於CAD系統),但是內核可以不限於這樣的應用,可以基於其它計算機輔助工程系統。
中軸轉換作為實體建模表示
實體對象的中軸(MA)是對象內所有最大球體的中心點的軌跡。最大內接球是包含在對象中但不是對象內的任何其它球體的子集(即未完全包含在對象內的任何其它球體內)的球體。換句話說,中軸是在對象邊界上具有多於一個最近點的所有點的集合。它有時被稱為拓撲構架。可以賦予中軸具有在中軸的每個點處的相應最大球體的半徑值的半徑函數。中軸與半徑函數一起被稱為中軸變換(MAT)。3D實體的中軸是基本包含面的結構,並且因此有時被稱為「中間表面」。
中軸首先由(Blum,1973)引入作為描述生物形狀的手段,並且自那以後其主要在學術界中在各種算法和應用中使用。到目前為止,其僅被認為是包含額外的受歡迎的拓撲信息的對象的屬性。
本發明提出了一種用於計算機輔助設計系統應用的基於中軸變換原理的實體建模表示模型。
圖4示出了二維對象的邊界表示模型和新提出的MAT模型之間的差異。對象的每個交點和邊緣分別用「v」和「e」標記。邊界元素以字母「b」開頭,而MAT元素以字母「m」開頭。邊界元素僅包含幾何數據,即如圖2中的點坐標或曲線描述,而MAT元素包含附加項半徑函數,即點的單個值、邊緣的單參數函數或面的雙參數函數(未示出,其涉及3D對象)。注意,對於MAT具有零半徑的交點與邊界交點一致。另外,修正DUAL(BREP元件之間的連接的圖形理論表示)也通過示出圖4中的鏈路來引入,而其節點用「d」標記。修正DUAL(修改為包括凸角)被用在BREP表示和MAT之間的轉換過程中,這稍後示出。
應當注意,每個MAT元素由若干BREP元素定義(即連結)。作為示例,將MAT交點7(mv7)定義為與BREP邊緣2(be2);BREP邊緣3(be3)和BREP邊緣4(be4)相切的圓的中心。因此,每個BREP元素可以由幾個MAT元素定義(或連結)。例如,BREP邊緣4(be4)被定義為與對應於MAT元素mv5、me4、me5、mv6、me6、mv7和me8的圓相切的邊緣;此外,零半徑MAT節點(mv5和mv9)定義邊緣的極限。還應注意,MAT邊緣me5和me3不是線性的。對於這種特殊情況,它們是拋物線曲線。沿著這些邊緣的半徑函數也被定義為二階單參數函數。
可以為3維對象開發類似的表示。
如圖5所示,已經開發了用於充分捕獲MAT信息的數據結構,。在注意與圖2中引入的BREP數據結構的相似性的同時,強調以下重要差異:
-MAT對象僅由面(被連結以形成圖)、邊緣和交點的集合定義(即至少對於3D對象不再需要殼)。
-為MAT對象的每個構成元素(面、邊緣和交點)賦予半徑函數。
如下面將示出的,MAT數據結構可以單獨地用於表示CAD環境中的對象或者與BREP數據結構一起形成混合表示。
學術界已經提出了各種方法來計算實體模型的中軸,其中有所謂的「分治」算法(Stroud,Renner,&Xirouchakis,2007)。上述名稱的算法如圖4所示基於修正DUAL的三角測量計算MAT結構;獲得的每個三角形(被稱為Delaunay三角形)定義MAT交點。然而,這些算法中的大多數是不完整的,因為它們沒有產生描述實體對象所需的所有信息,也不以以形式化的方法描述它們的結果。它們僅用於提取關於MAT的某些信息,以幫助開發特定應用。
通過擴展上述算法(Stroud,Renner,&Xirouchakis,2007)或如可能採用等價的算法,可以在BREP表示和MAT表示之間確保轉換。
為了比較,圖6引入了圖4中的同一2D對象樣本的數據結構表示。邊界交點(bvX)定義了否則無限的BREP邊緣(beX)的極限,該BREP邊緣(beX)形成閉合2D對象(即,面)的環路。MAT交點(mvX)定義了形成表示2D對象的圖形的MAT邊緣(meX)的極限。該圖可以通過勾選MAT邊緣的共同MAT交點來顯式定義或隱式定義。注意,BREP交點在當前情況下僅包含點的坐標(在此情形中為(x,y)),並且BREP邊緣由無限曲線(由定義的BREP交點限制)定義。相反,MAT交點包含對應於內切圓的半徑的附加參數(x,y,R),並且MAT邊緣也具有半徑函數,即對於(me2)和(me6)是常數;對於(me0)、(me1)、(me4)、(me7)和(me8)是線性的且對於(me3)和(me5)分別是二階的。由與BREP交點相同的具有零半徑的交點定義的MAT邊緣(me0)、(me1)、(me4)、(me7)和(me8)稱為風邊緣(wind edges)。
為了簡化,在2D空間中考慮了上述示例。如圖7至圖9所示,數據結構概念可擴展到3D對象:圖7示出了由其邊界元素表示的「L」形的3D對象;圖8示出了完全由其MAT元素(在每個MAT交點處由等於半徑值的球體分立地簡示出半徑函數)定義的相同的3D對象;而圖9僅示出了中軸變換的主要元素(即,非零半徑元素),以說明在對象的形狀和拓撲的更高級別的抽象中的MAT的使用。
這兩個表示是等效的,並且通過如前所述的各種算法可以轉換信息。進一步,兩個表示可以同時保持在數據結構中,其可以或可以不被連結:每個MAT交點被定義為與至少3個BREP元素相切的圓形(或3D的球體)的中心,每個BREP邊緣通過與由至少兩個MAT交點定義的圓形(或3D的球體)相切來完全定義。
表示方法可擴展到由複雜表面定義的對象。
為了確保完整性(完全定義的實體對象)的證明,已經開發了函數來僅使用MAT數據結構來確定任一隨機點位於對象的內部、外部或邊界上。存在用於BREP表示的等效函數。
基於MAT表示,可以導出用於實體對象的新的創建和操縱函數。這些函數可以或可以不使用存儲在BREP數據結構中的信息。因此,為BREP表示構建的函數可以被修改利用MAT數據結構以提高它們的性能。
由MAT方法表示的對象可以從零創建或從BREP對象轉換。創建將利用某些函數,CAD用戶可以通過這些函數用所需的信息填充數據結構;而轉換(其可以是手動或自動的)將利用某些算法來計算所需的信息。在概念上,用MAT方法表示對象需要以下步驟:
1.將每個MAT交點定義為空間域中的點;
2.為MAT交點賦予半徑函數,即,對於點,需要單個半徑值;
3.將每個MAT邊緣定義為空間中的曲線;
4.將交MAT邊緣的極限定義為位於曲線上的兩個MAT交叉點;
5.為MAT邊緣賦予半徑函數-在邊緣的極限處的值已經在步驟2中定義)。函數可以是線性的(即,半徑沿著MAT邊緣線性變化),在這種情況下不需要指定附加參數,或者函數可以是非線性的(即,半徑沿著MAT邊緣並非線性地變化),在這種情況下,取決於半徑變化的性質需要指定附加參數。在一般情況下,函數可以數值地、分段線性地或者使用其它數值方法定義,以定義函數(例如多項式、貝塞爾曲線、B樣條等);
6.將MAT面定義為空間中的表面;
7.將MAT面的極限定義為MAT(邊緣)環路,MAT(邊緣)環路由至少三個MAT邊緣組成,均共享MAT節點。
8.將MAT連結定義為由至少兩個MAT面共享的邊緣,與在BREP表示中不同,MAT邊緣可由多於兩個面共享;
9.為MAT面賦予半徑函數。該函數在邊緣極限處的值在步驟2和5已經定義。函數可以是線性的,在這種情況下,所有MAT交點和MAT邊緣必須是線性的,並且這些函數需要是共面的或非線性的;
10.將MAT對象定義為MAT面、邊緣和交點的連通集。
取決於創建或修改方法、算法或目的,步驟的順序可能不同,並且可能包括功能特定的附加步驟。可能會考慮檢查MAT對象的完整性的附加步驟。
混合MAT/BREP表示方法將在概念上包括以下附加步驟(假定BREP元素已經被構造並有效:
1.對於每個MAT數據結構元素(即交點、邊緣、面),為定義相應的MAT元素的BREP數據結構元素賦予連結。例如,如圖4所示,MAT交點2(mv2)將由BREP邊緣0、1和5(be0、be1和be5)定義;
2.對於每個BREP數據結構元素(即交點,邊,面),為定義相應的BREP元素的MAT數據結構元素賦予連結。例如,如圖4所示,BREP邊緣2(be2)將由MAT邊緣6和7(me6和me7)和MAT交點6、7和8(mv6,mv7和mv8)定義。
在CAD系統中使用MAT表示的優點中,我們列舉:
·先進的早期設計功能。使用MAT表示可以更快速和直觀地定義3D或2D對象;
·通過利用MAT表示的屬性使用MAT表示將物理意義附加到虛擬對象(例如點映射);
·自動準備有限元模型用於分析。包含在MAT表示中的拓撲信息可以用於自動生成相關的FEM網格,FEM網格採用相同的維度元素或降維的元素用於快速模擬時間;
·回收FEA結果,用於集成在CAD環境中。中軸對應於結構力學中的中性軸,其具有的特定屬性使該表示更適於在初始對象上恢復和映射變形網格;
·用於分析或修改幾何模型的高級功能。使用BREP表示確定部件的最小厚度是一項艱巨的任務,而在MAT表示中通過沿著MAT圖形讀取半徑函數很容易獲得該信息。此外,可以響應用戶需要容易地改變對象的厚度;
·幾何簡化功能。包含在MAT結構中的拓撲信息可以用於識別哪些幾何特徵與整體部件形狀無關並且可能與其物理行為無關。當準備用於數值模擬的複雜CAD模型時,需要這樣的功能。
許多其它功能和應用是可能的。
4D實體建模表示
目前的實體建模表示適於表示和操縱3D對象。然而,在使用CAD系統設計的許多產品中,各種部件要麼是運動的,或者是形狀變化的,並且這些變化通常是定義了產品功能的變化。採用組件函數,對象的位置和定向可以相對於其它對象改變。然而,這些函數的結果不能存儲在當前的BREP數據結構中以便以有組織的方式編輯和進一步操縱該信息。
所提出的如圖5所示的MAT數據結構能夠通過簡單地在幾何元素(點、曲線和表面)的定義中添加對應於時間的第四參數和新類型的元素MAT殼(圖中未示出)來表示隨著時間改變它們的位置和定向或它們的形狀的對象。
BREP表示模型也可以擴展到4D,但僅通過添加多幾個元素和概念,從而允許混合表示方法在4維中使用。用於創建和操縱4D對象的現有和/或新函數將用於允許用戶創建和修改可運行產品。
當在CAD系統內使用4D數據結構時,注意到以下優點:
·運行設計功能。將創建新的函數集合以允許產品的運行設計。可以以與創建3D對象類似的方式來定義和修改「引導(lead)」對象(或若干「引導」對象)的施加運動。可以在時間位置和幾何形狀之間創建約束,允許組件的函數參數化設計。
·4D幾何可用於通過在一個或多個對象上施加運動來驅動整個組件的位置和定向。可以根據需要識別和糾正使用中的不期望的接觸。發現MAT表示特別適合於在靜態和瞬態兩個條件下識別接觸。產品的運行模擬可以高效地實現,並且同時與靜態產品信息一起存儲。
參考書目
Blum,H.(1973).Biological Shape and Visual Science(Part I).Journal of theoretical biology,38,205-287.
Braid,I.,Hillyard,R.,&Stroud,I.(1980).Stepwise construction of a polyhedra in geometric modelling(1978).(K.W.Brodlie,Ed.)Mathematical Methods in Computer Graphics and Design.
DeSimone,F.,Sevici,C.,&Mental,K.(2013).Patent No.8,330,775B2.
Desimone,F.,Sevici,C.,&Mental,K.(2012).Patent No.US 8,207,990B1.
Stroud,I.(2006).Boundary Representation Modelling Techniques.London:Springer-Verlag London Limited.
Stroud,I.,Renner,G.,&Xirouchakis,P.(2007).A divide and conquer algorithm for medial surface calculation of planar polyhedra.Computer-Aided Design,39,794-817.