專利名稱:基于cad模型的特征識別算法的制作方法
技術領域:
本發明涉及一種特征識別算法,具體地說,是涉及一種基于CAD模型的特征識別算法。
背景技術:
CAD模型的應用是建立在其準確無誤地處理基礎上的,但是,在實際建模過程中,卻存在很多難以解決或者解決效果難以盡如人意的問題:(I)在模型中,兩個相鄰的表面(S[i],S[j],i = 1,2,3......n,j = 1,2,
3......n,且j)可能在軟件間模型轉換后不能彼此縫合,例如錯誤!未找到引用源。所
示。s[i]和S[j]的是交互的,但每個都有獨立的邊和頂點,這將導致后續處理的模糊性;(2)輸入模型的面并非用于加工的生成的面,它還存在許多毛坯面,必須對其進行處理,才能對模型的特征進行識別;(3)處理后的模型,其特征面之間存在凹凸不定的連接關系,要識別模型的特征,必須準確判斷特征面的連接關系。
發明內容
本發明的目的在于提供一種基于CAD模型的特征識別算法,解決現有技術中存在的上述問題,達到準確識別特征的目的。為了實現上述目的,本發明采用的技術方案如下:基于CAD模型的特征識別算法,包括以下步驟;(I)對模型進行預處理;(2)通過定義基面來判斷模型中相交面的公共邊的凹凸性;(3)通過圖匹配方法識別特征。進一步地,所述步驟(I)包括:對模型獨立的表面B-rep信息進行同質化共用邊;從模型的面集中去除毛坯面。其中,所述對模型獨立的表面B-rep信息進行同質化共用邊是指從模型獨立的邊界表示法中計算出CSG。再進一步地,所述步驟(2)具體包括:a.定義一個可以被所有其他在其法向量方向的面完全接觸到的面作為基面;b.根據模型中基面的數量,將具有基面不同數量這一特征分為SBF、NBF和MBF ;c.找出模型中的SBF并消除。其中,所述找出模型中的SBF并消除的步驟如下:首先,生成模型的曲面集,并通過連接性在曲面集中生成面片組合;其次,對每個面片組合驗證CSG規則;接著,基面檢測;然后,通過側面在基面上形成的鏈或環的形狀,識別具體的特征類型;最后,從曲面集消除SBF。上述步驟中,對每個面片組合驗證CSG規則的方法為:設邊、點、面分別為E、V、F,判斷F+V-丨=E是否成立;若成立,則進行基面檢測,反之,則通過圖匹配方法識別特征。基面檢測包括下列步驟:首先,定義SE[i]M,i e {1,2......η}為曲面M的第i條邊的屬性;然后,通過公式!k::: ——— >t..Ξ 二 O來表示擁有i條邊的面A和擁有j條面B的交互關系;最后,通過公式:七— ◎來判斷面A是否為基面,其中,k為可獲得的實體-邊關系的數目;如果檢測到基面,則根據其基面法向量來排序;反之,則通過圖匹配方法識別特征。更進一步地,所述步驟(3)具體包括先將NBF和MBF轉換為EAAG圖,再通過圖匹配方法識別特征。與現有技術相比,本發明的有益效果在于:通過對模型的同質化共用邊、去毛坯面、邊的凹凸性判斷等處理方法,有效地提供了 CAD模型中特征的識別效率和準確率,為模型的應用奠定了堅實的基礎,保證了 CAD建模的實際應用價值。
圖1為模型轉換后不能彼此縫合的兩個面的示意圖。圖2為模型中成一定角度的兩個面的示意圖。圖3為擁有一個基面的模型示意圖。圖4為無基面的模型示意圖。圖5為擁有多個基面的模型示意圖。圖6為兩條邊合并的模型示意圖。圖7為基面被分成兩個凸多邊形的模型示意圖。圖8為模型中面與邊的擴展屬性示意圖。圖9為處理MFAG時交互實體為線的模型示意圖。圖10為處理MFAG時交互實體為面的模型示意圖。圖11為擁有同向基面法向量的MBF。圖12為MBF識別流程圖。圖13為本發明的整體流程示意圖。
具體實施例方式下面結合附圖與實施例對本發明作進一步說明,本發明的實施方式包括但不限于下列實施例。實施例如圖13所示,本發明所述的特征識別算法,首先是對模型的B-rep信息進行預處理,包括同質化共用邊和去毛皮面處理。在進行具體的特征識別之前,目標曲面模型應該實體造型工具中間縫合,以避免額外的操作。在實際操作中,設計,分析和制造所使用的模型總是簡單的曲面模型,而不是實體模型。根據目前的討論,同質化意味著由獨立的表面B-rep信息計算CSG (面-邊-點)。同質化一般應用在一組曲面中,服務于特征識別的曲面模型在固體模型中正確的縫合,以避免在進行特征識別之前多余的縫合操作。一個同質化后的CAD曲面集可以在預處理中保存計算,生成特征數據可以為這樣的活動減少循環時間,所以,同質化意味著從獨立的邊界表示法中計算出CSG。 毛坯面是輸入模型的面,它們并非用于加工的生成面,可以從曲面集里面消除。這些毛坯面,常見的處理方式有位置比較、配合零件信息輸入和交匯檢測,可從表面設置消除它們,等待后續處理。在完成預處理之后,即可將特征識別算法應用到B-rep模型中,將B-rep模型轉化為屬性鏈接圖AAG或擴展屬性鏈接圖EAAG,然后通過圖匹配識別特征。在這個過程中,判斷邊的凹凸性是必須的,正如錯誤!未找到引用源。所示的面,公式(I)顯示了該兩個面所成的角度。
權利要求
1.關于CAD模型的特征識別算法,其特征在于,包括以下步驟: (1)對模型進行預處理; (2)通過定義基面來判斷模型中相交面的公共邊的凹凸性; (3)通過圖匹配方法識別特征。
2.根據權利要求1所述的基于CAD模型的特征識別算法,其特征在于,所述步驟(I)包括 對模型獨立的表面B-rep信息進行同質化共用邊; 從模型的面集中去除毛坯面。
3.根據權利要求2所述的基于CAD模型的特征識別算法,其特征在于,所述對模型獨立的表面B-rep信息進行同質化共用邊是指從模型獨立的邊界表示法中計算出CSG。
4.根據權利要求1或3所述的基于CAD模型的特征識別算法,其特征在于,所述步驟(2)具體包括 a.定義一個可以被所有其他在其法向量方向的面完全接觸到的面作為基面;b.根據模型 中基面的數量,將具有基面不同數量這一特征分為SBF、NBF和MBF; c.找出模型中的SBF并消除。
5.根據權利要求4所述的基于CAD模型的特征識別算法,其特征在于,所述找出模型中的SBF并消除的步驟如下: 首先,生成模型的曲面集,并通過連接性在曲面集中生成面片組合; 其次,對每個面片組合驗證CSG規則; 接著,基面檢測; 然后,通過側面在基面上形成的鏈或環的形狀,識別具體的特征類型; 最后,從曲面集消除SBF。
6.根據權利要求5所述的基于CAD模型的特征識別算法,其特征在于,對每個面片組合驗證CSG規則的方法為 設邊、點、面分別為E、V、F,判斷F+V-l = E是否成立;若成立,則進行基面檢測,反之,則通過圖匹配方法識別特征。
7.根據權利要求5或6所述的基于CAD模型的特征識別算法,其特征在于,所述基面檢測包括下列步驟: 首先,定義SE[i]M,i e {1,2......η}為曲面M的第i條邊的屬性; 然后,通過公式Π Π W二 - ^廠^ =+O來表示擁有i條邊的面A和擁有j條面B的交互關系; 最后,通過公式SE[k;|)]: = 0.來判斷面A是否為基面,其中,k為可獲得的實體-邊關系的數目; 如果檢測到基面,則根據其基面法向量來排序;反之,則通過圖匹配方法識別特征。
8.根據權利要求7所述的基于CAD模型的特征識別算法,其特征在于,所述步驟(3)具體包括先將NBF和MBF轉換為EAAG圖,再通過圖匹配方法識別特征。
全文摘要
本發明公開了一種基于CAD模型的特征識別算法,屬于模型特征識別技術。該基于CAD模型的特征識別算法,包括以下步驟(1)對模型進行預處理;(2)通過定義基面來判斷模型中相交面的公共邊的凹凸性;(3)通過圖匹配方法識別特征。本發明有效地實現了對模型的預處理,以及邊的凹凸性判斷,進而達到了利用基面來實現特征識別的目的,有效提高了特征識別的效率,提高了CAD建模的應用價值。
文檔編號G06F17/50GK103093011SQ20111034082
公開日2013年5月8日 申請日期2011年11月2日 優先權日2011年11月2日
發明者郝泳濤, 樓狄明, 王力生 申請人:同濟大學