專利名稱:用于分離實體模型上的面的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本文所述的創(chuàng)新的系統(tǒng)一般涉及計算機輔助設(shè)計軟件應用程序。更具體而言,所 述系統(tǒng)涉及將實體模型表示中的面(faces)分離。
背景技術(shù):
在當今的計算機輔助設(shè)計(CAD)應用程序和幾何建模系統(tǒng)的世界中,通常以兩種 方式基于歷史或無歷史(history-less)中的一種來設(shè)計部件?;跉v史的系統(tǒng)常常以在 19世紀80年代中期出現(xiàn)的參數(shù)建模范例為特征。在參數(shù)建模系統(tǒng)中,創(chuàng)建配方(recipe) 或歷史樹以反映事物如何彼此相關(guān)。當對一個原始項目進行修改時,在稍后的時間由該原 始項目產(chǎn)生的所有項目被更新。這樣,例如,兩個面可以保持共面,因為其被以在設(shè)計過程 期間捕捉且在更新過程期間簡單地“重放”的此類關(guān)系設(shè)計。圖Ia-Ic舉例說明三維塊的三 度投影。參照圖la,三維(“3D”)的C塊100對于用戶而言可在計算機顯示器上觀看且需要 由用戶通過改變底部支腿105、頂部支腿110、或底部支腿105和頂部支腿110兩者來進行 修改。在基于歷史的系統(tǒng)中,用戶有多容易地修改C塊100取決于其最初在諸如西門子產(chǎn) 品生命周期管理軟件公司的SolidEdge的CAD應用程序系統(tǒng)中被如何設(shè)計。通常,原始設(shè) 計者創(chuàng)建和/或設(shè)計稍后被修改設(shè)計者修改的部分,修改設(shè)計者可能對原始設(shè)計者完全不 熟悉。例如,如果原始設(shè)計者、即最初設(shè)計C塊100的那個人具有將與底部支腿105和頂部 支腿110有關(guān)的面約束為共面的設(shè)計方法意圖,則在圖Ic中舉例說明的修改動作很容易使 用對于3D模型設(shè)計領(lǐng)域的技術(shù)人員來說基本的已知參數(shù)/基于歷史的建模技術(shù)來實現(xiàn),但 是用于簡單的解釋因為兩個面被約束為共面,移動一個面將促使另一面也移動。如果另一 方面,修改設(shè)計者意圖在單獨留下頂部支腿110的同時僅移動與底部支腿105相關(guān)聯(lián)的面, 例如,圖lb,則必須發(fā)生多個附加步驟以去除共面約束,這要求多個附加步驟,從理解如果 修改設(shè)計者不是原始設(shè)計者、那么如何產(chǎn)生C塊100的兩個支腿開始。此外,如果C塊100 的原始設(shè)計者未將底部支腿105和頂部支腿110建模成共面的,而是用諸如距離或公式的 某些其它方法來對支腿進行建模,則如在圖Ic中看到的那樣,要改進兩者將使困難增加至 修改設(shè)計者也可以從頭開始對C塊100進行建模的程度。另一方面,在由類似于例如CoCreate、IronCADjP Kubotek的公司采取的無歷史 或基于主體的方法中修改C塊100未能保持由參數(shù)建模范例使之普及的歷史樹。在無歷史 方法中,明確地對實體模型上的每個項目進行改變。如果C塊100的原始設(shè)計者意圖在于 底部支腿105和頂部支腿110上的面保持共面關(guān)系,則稍后的修改要求用于編輯的面的手 動選擇以保證期望的結(jié)果,如果原始設(shè)計者的意圖是未知或不能確定的,則這是困難的。例 如,修改設(shè)計者可能僅僅通過選擇一個面或單獨地選擇所有其它共面的面來進行圖Ib或 圖IC所示的變化,這在本示例中碰巧是少數(shù)的,但是在復雜組件模型中可以有幾百個?;蛘?,某些軟件應用程序可以允許修改設(shè)計者“使面共面”并在事后在編輯時永久性地捕捉設(shè) 計意圖,但是這也可能是繁瑣的,特別是在具有非常大的模型的情況下。此后一種變化將使 日后進行的在圖Ib中看到的修改困難,特別是由于現(xiàn)在設(shè)計意圖可能被燒固(baked)到與 設(shè)計意圖相反的模型中?;跉v史的方法存在的問題是在模型創(chuàng)建時結(jié)合并固定設(shè)計意圖,這可能使在模 型創(chuàng)建時未預期的稍后進行的改變變得復雜。相反,無歷史系統(tǒng)在日后的變化方面是靈活 的,但捕捉到關(guān)于事物如何相關(guān)的微乎其微的智能(intelligence)。如果修改設(shè)計者確定 在稍后的時間點手動地捕捉此類智能,則類似于基于歷史的系統(tǒng),該智能被結(jié)合并固定,從 而限制進一步的靈活性。也就是說,在幾何建模系統(tǒng)中,幾何結(jié)構(gòu)選擇技術(shù)涉及在選擇幾何結(jié)構(gòu)之前設(shè)置 選項,即設(shè)計者必須提前計劃以準備其想要選擇什么。提前計劃需要推薦的準備動作,并且 在許多情況下,當選擇不滿足即將進行的修改時,需要推薦的錯誤恢復。這些推薦動作經(jīng)證 明對于無歷史系統(tǒng)而言是過度勞動密集的。在無歷史系統(tǒng)命令中,用來執(zhí)行修改的選擇選 項很可能在命令會話之間、以及在命令會話內(nèi)改變。例如,用移動面命令,設(shè)計者可以在一 個命令會話中移動凸臺(boss)、肋(rib)、和連接凸臺和肋的面。在另一命令會話中,設(shè)計 者可以移動單個面或簡單地移動槽。存在這樣的技術(shù)挑戰(zhàn),即識別在什么情況下面存在于 可以用于限制(bound)被合并的肋的邊界的模型上,其中,所述被合并的肋是具有與非肋面 齊平的面的肋。已知的是“肋”是形成凸起形狀的面的集合,并且“被合并的肋” 115具有肋 面必須被再分以將其與模型的其余面隔離的附加性質(zhì)。例如,如果修改設(shè)計者意圖修改被 合并的肋115并意圖僅選擇被合并的肋115面,則修改設(shè)計者可能已意外地選擇在120處 指示的C塊100的整個面。本發(fā)明人已有利地認識到需要一種用于在實體模型中將用于修改的面、特別是被 合并的肋的那些面分離的系統(tǒng)和方法。
發(fā)明內(nèi)容
為了解決所識別的需要和相關(guān)問題,一種系統(tǒng)提供用于選擇對在具有軟件指令的 計算機中操縱的實體模型的修改的系統(tǒng),包括計算機系統(tǒng),其中,所述計算機系統(tǒng)包括存儲 器、處理器、用戶輸入設(shè)備、以及顯示設(shè)備;計算機生成的幾何模型,其被存儲在所述計算機 系統(tǒng)的存儲器中;并且,其中,所述計算機系統(tǒng)使用計算機外圍設(shè)備輸入端直接在實體模型 上選擇修改特征(feature)上的選擇點;按距離將鄰近于由所述選擇點確定的選擇面的多 個相鄰面分類;確定是否存在其中所述多個相鄰面向所述選擇面凸起的凸起情況;確定是 否存在其中所述多個相鄰面與先前訪問的面共享同一表面并且存在所述凸起情況的候選 曲線;將所述候選曲線標記在所述實體模型上以使實體模型準備好用于根據(jù)來自用戶的修 改意圖進行修改;根據(jù)導致已修改實體模型和已修改可見顯示信息的所述修改意圖來修改 所述實體模型;以及使用所述已修改可見顯示信息向用戶顯示所述已修改實體模型。所述系統(tǒng)的其它特征部分地在以下說明書和附圖中闡述,并且部分地通過該系統(tǒng) 的實施了解?,F(xiàn)在參照構(gòu)成其一部分的以下附圖來描述該系統(tǒng)。應理解的是在不脫離所述 系統(tǒng)的范圍的情況下,可以利用其它實施例且可以進行修改。
在下文中將結(jié)合附圖來描述系統(tǒng),其中,相同的標識表示相同的元件,并且 圖Ia-Ic舉例說明三維塊的三度投影;
圖2舉例說明樣本虛擬產(chǎn)品開發(fā)環(huán)境;
圖3是其中可以實施所述系統(tǒng)的計算機環(huán)境的方框圖4a_4b舉例說明在軟件應用程序中體現(xiàn)的軟件編程代碼的一般概念;
圖5是實施例所采用的方法的總體視圖的框圖6舉例說明示例性實體模型修改系統(tǒng);以及
圖7a_7b舉例說明實體模型修改系統(tǒng)中的示例性面分離方法。
具體實施例方式1.介紹
描述了一種用于修改實體模型中的幾何關(guān)系的方法和系統(tǒng)。在以下說明中,出于解釋 的目的,闡述了許多特定細節(jié)以便提供對所述系統(tǒng)的透徹理解。然而,對于本領(lǐng)域的技術(shù)人 員來說應顯而易見的是可以在沒有這些特定細節(jié)的情況下實施該系統(tǒng)。在其它實例中,以 方框圖的形式示出眾所周知的結(jié)構(gòu)和設(shè)備以便避免不必要地使該系統(tǒng)含糊難懂。圖2舉例說明樣本虛擬產(chǎn)品開發(fā)環(huán)境。當今所采用的虛擬開發(fā)環(huán)境通常從創(chuàng)建產(chǎn) 品或?qū)ζ浼右愿倪M的客戶請求或固有期望開始,一般在200處示出。該產(chǎn)品可以是如開瓶 器一樣簡單或如潛水艇一樣復雜。進一步參照圖2,原始設(shè)計者根據(jù)計算機輔助設(shè)計(CAD) 應用程序205所采用的已知方法對期望產(chǎn)品進行建模,在通用計算機上執(zhí)行CAD應用程序 205,所述通用計算機隨后變成用于在應用程序執(zhí)行和交互時執(zhí)行計算機輔助設(shè)計例行程 序的專用計算環(huán)境,其細節(jié)在下文討論。CAD應用程序205優(yōu)選地是都由西門子產(chǎn)品生命周 期管理軟件公司提供以獲得許可的SolidEdge或NX。CAD用戶以眾所周知且被很好地理解 的方式操作CAD應用程序205以便虛擬地顯示類似于且符合根據(jù)客戶請求或固有期望確定 的原始設(shè)計要求的實體模型。該實體模型一般是部件的組件和多個組件,其中,所述多個組 件被進一步分解為子組件和/或部件,全部優(yōu)選地具有被存儲在實體模型數(shù)據(jù)文件225中 以供后續(xù)重新調(diào)用的虛擬表示。一旦實體模型被確定為處于與原始設(shè)計要求一致的適當形式,則優(yōu)選地由CAE用 戶使用諸如由西門子產(chǎn)品生命周期管理軟件公司提供的NX CAE或FEMAP的計算機輔助工 程(CAE)應用程序210對其進行測試,以便進行部分容錯測試和多種其它工程測試。如果 CAE用戶確定必須對實體模型進行修改以成功地通過容錯測試,則實體模型被返回到CAD 用戶以便在CAD應用程序205中進行修改。CAD應用程序205和CAE應用程序210與各用 戶之間的此迭代是遞歸的,直至實體模型成功地通過必要的設(shè)計要求和工程測試為止。在成功完成之后,處于以其最終設(shè)計形式的實體模型還被設(shè)計為用于諸如都由西 門子產(chǎn)品生命周期管理軟件公司提供的NX CAM或CAM Express的計算機輔助制造(CAM)應 用程序215中的實際制造。通過使用CAM應用程序215,CAM用戶將對數(shù)控程序、模具、工具 和沖模(die)如何制造實際產(chǎn)品230進行建模。CAM用戶可以具有附加修改以符合原始設(shè) 計要求,例如使用放電加工(EDM)可能要求不同的技術(shù),取決于是否使用線切割EDM還是刻 模(die sinking) EDM來制造實際產(chǎn)品230。為了虛擬地對一部分進行銑磨(mill),CAM應
6用程序215定義用于EDM過程的軌道的優(yōu)選電極路徑。CAM用戶可以確定為了符合設(shè)計和 工程要求,實體模型要求例如在冷卻之后的尺寸方面的細微修改以允許包括實際產(chǎn)品230 的材料的硬化。在產(chǎn)品的成功虛擬設(shè)計、工程化、和制造之后,制造省可以將所有制造規(guī)則與和產(chǎn) 品有關(guān)的產(chǎn)品工程化鏈接,包括過程布局和設(shè)計、過程模擬/工程化、和利用諸如由西門 子產(chǎn)品生命周期管理軟件公司提供的Tecnomatix的數(shù)字工廠應用程序200的生產(chǎn)管理。制 造省可能發(fā)現(xiàn)需要改進實際產(chǎn)品230,因為CAM用戶用例如已過時且要求制造商使用5軸圖 靈機(turning machine)來產(chǎn)生必要的坯的EDM系統(tǒng)對產(chǎn)品進行建模,或者制造商已轉(zhuǎn)入 噴射成型而不是壓縮成型來形成包括實際產(chǎn)品230的部分。例如,必須將實體模型修改為 符合制造實際產(chǎn)品230的最終要求。遍及上述虛擬產(chǎn)品開發(fā),產(chǎn)品設(shè)計例如從客戶請求流動至CAD用戶至CAE用戶至 CAD用戶,返回至CAE用戶、至CAM用戶、然后至用于實際產(chǎn)品230的實際生產(chǎn)的制造商。隨 著對實體模型的每次編輯,還修改幾何關(guān)系以便符合例如CAD用戶、CAE用戶、CAM用戶、以 及制造商進行的必要設(shè)計更改。此外,由于CAD/CAE/CAM用戶中的每一個修改實體模型,定 義實體模型的數(shù)據(jù)模型也被修改以適當?shù)亟鉀Q上文所討論的變化并被適當?shù)卮鎯υ趯嶓w 模型數(shù)據(jù)文件225中。然后,制造商根據(jù)原始設(shè)計規(guī)范和后續(xù)工程化修改來繼續(xù)生產(chǎn)實際 產(chǎn)品230。虛擬產(chǎn)品開發(fā)在系統(tǒng)中發(fā)生,其中,用于修改實體模型中的幾何關(guān)系的所述系統(tǒng) 和方法可在駐留于多種硬件系統(tǒng)上的存儲器中的多種軟件應用程序中執(zhí)行,下文進行更詳 細的描述。2.計算機程序產(chǎn)品
現(xiàn)在轉(zhuǎn)到硬件系統(tǒng),圖3是其中可以實施所述系統(tǒng)的計算機系統(tǒng)的方框圖。圖3和隨 后的討論意圖提供其中可以實現(xiàn)本實施例的適當硬件系統(tǒng)和計算環(huán)境的簡要的一般說明。 本實施例可以在多種已知計算環(huán)境中的任何一種中執(zhí)行。參照圖3,示例性計算機系統(tǒng)包括計算機300形式的計算設(shè)備,諸如臺式計算機或 膝上型計算機,其包括多個相關(guān)外圍設(shè)備(未描繪)。計算機300包括中央處理單元(CPU) 305和依照已知技術(shù)用來在中央處理單元305與計算機300的多個部件之間進行連接并能 夠?qū)崿F(xiàn)通信的總線310。CPU 350的操作在本領(lǐng)域中被透徹地理解,其優(yōu)選地為電路,能夠 執(zhí)行具有被編碼在其上的計算機可執(zhí)行指令的計算機程序,諸如由計算機300執(zhí)行的程序 模塊。通常,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定數(shù)據(jù)類型的例行程序、程序、對象、部 件、數(shù)據(jù)結(jié)構(gòu)等。優(yōu)選地,程序模塊包括文件處理模塊306、數(shù)據(jù)顯示模塊307、邏輯處理模 塊308、和方法處理模塊309。邏輯處理模塊308向文件處理模塊306、數(shù)據(jù)顯示模塊307和 方法處理模塊309發(fā)送請求以根據(jù)計算機可執(zhí)行指令進行操作。同樣地,邏輯處理模塊從 文件處理模塊306、數(shù)據(jù)顯示模塊307和方法處理模塊309接收請求以根據(jù)計算機可執(zhí)行指 令進行操作??偩€310還使得能夠?qū)崿F(xiàn)各種程序模塊和多個部件之間的通信??偩€310可 以是多種類型的總線結(jié)構(gòu)中的任何一種,包括存儲器總線或存儲器控制器、外圍總線、和本 地總線,其使用多種總線架構(gòu)中的任何一種。計算機300通常包括將中央處理單元306經(jīng)由 總線310連接到諸如鍵盤320、鼠標325、和/或其它接口設(shè)備330的一個或多個接口設(shè)備 的用戶接口適配器315,其它接口設(shè)備330可以是任何用戶接口設(shè)備,諸如觸感屏、數(shù)字化 鋼筆輸入板等??偩€310還經(jīng)由顯示適配器340將諸如IXD屏幕或監(jiān)視器的顯示設(shè)備335連接到中央處理單元305。總線310還將中央處理單元305連接到可以包括R0M、RAM等的 存儲器;345。計算機300還包括將至少一個存儲設(shè)備355和/或至少一個光驅(qū)360耦合到總線 的驅(qū)動接口 350。存儲設(shè)備355可以包括用于從盤讀取和向其寫入的未示出的硬盤驅(qū)動器、 用于從可移動磁盤驅(qū)動器讀取或向其寫入的未示出的磁盤驅(qū)動器。同樣地,光驅(qū)360可以 包括未示出的光盤驅(qū)動器,其用于從諸如CD ROM或其它光學介質(zhì)的可移動光盤讀取或向其 寫入。前述驅(qū)動器和相關(guān)計算機可讀介質(zhì)提供計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和用于 計算機300的可被文件處理模塊306在由方法處理模塊309提供的指令所描述的方法中根 據(jù)由邏輯處理模塊308接收到的指令進行訪問的其它數(shù)據(jù)的非易失性存儲。計算機300可以經(jīng)由通信信道365與其它計算機或計算機網(wǎng)絡(luò)通信。計算機300 可以與局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)中的此類其它計算機相關(guān)聯(lián),或者其可以是具有另一 計算機的客戶端/服務(wù)器布置中的客戶端等。此外,還可以在分布式計算環(huán)境中實施本實 施例,其中,由通過通信網(wǎng)絡(luò)鏈接的遠程處理設(shè)備來執(zhí)行在由方法處理模塊309提供的指 令所描述的方法中由邏輯處理模塊308提供的任務(wù)指令。在分布式計算環(huán)境中,程序模塊 可以位于本地和遠程存儲器存儲設(shè)備二者中。所有這些配置、以及適當?shù)耐ㄐ庞布蛙浖?在本領(lǐng)域中是已知的?,F(xiàn)在更詳細地轉(zhuǎn)到程序模塊,圖4a_4b舉例說明在軟件應用程序中體現(xiàn)的軟件編 程代碼的一般概念。進一步參照圖如,下面將在本實施例的背景下更詳細地描述程序模塊, 其中,軟件應用程序400包括如上文所討論的那些的可訪問程序模塊。軟件應用程序400可 以是實體建模應用程序的形式,諸如上述CAD應用程序205、CAE應用程序210或CAM應用 程序215。此外,可以預期由具有供訪問和利用的特定API (“應用程序編程界面”)調(diào)用特 征的第三方供應商提供軟件應用程序400。繼續(xù),隨著用戶與軟件應用程序400相交互,某 些修改事件觸發(fā)器與變化建模工具箱(toolkit) 405相交互,這將在下文中更詳細地討論。 軟件應用程序400和變化建模工具箱405 —起或單獨地在由方法處理模塊309提供的指令 所描述的方法中利用邏輯處理模塊308來調(diào)用低級幾何建模內(nèi)核以根據(jù)由用戶選擇并由 軟件應用程序400執(zhí)行的命令來實現(xiàn)實體模型的某些修改事件,如在實體建模領(lǐng)域中一般 理解的那樣,但在下文中更詳細地進行討論。低級幾何建模內(nèi)核通常是類似于由西門子產(chǎn) 品生命周期管理軟件公司授權(quán)的Parasolid的至少三維(3D)幾何建模器(modelerMlO的 集合和類似于由西門子產(chǎn)品生命周期管理軟件公司提供的3D DCM (或“DCM”)產(chǎn)品的幾何 軟件部件庫415的集合。另一方面,參照圖4b,變化建模工具箱405對從軟件應用程序400傳送的變化編輯 命令進行操作。另外,軟件應用程序400將非變化建模調(diào)用(call)傳送到3D幾何建模器 410,并且3D幾何建模器410利用幾何軟件部件庫415的集合,如幾何建模器領(lǐng)域中通常理 解的那樣。關(guān)于變化建模工具箱405及下文將更詳細地討論的,發(fā)生與涉及查找、編輯、求 解和應用的變化編輯有關(guān)的多個操作。在實體建模領(lǐng)域中一般應理解的是以上幾何軟件部 件庫的集合提供建模功能,例如,諸如幾何約束求解、變化設(shè)計、參數(shù)設(shè)計、運動模擬、沖突 檢測、間隙計算、拓撲結(jié)構(gòu)位置、拓撲結(jié)構(gòu)移動解決方案、以及隱藏線消除。還可以預期在本 實施例的范圍內(nèi),3D幾何建模器410和部件庫415是同一應用程序的部件而不是單獨的部 件、或其組合。已描述了計算機程序產(chǎn)品,現(xiàn)在提供關(guān)于分離系統(tǒng)的更多細節(jié)。
3.分離系統(tǒng)
現(xiàn)在轉(zhuǎn)到面分離系統(tǒng),圖5是本實施例所采用的方法的總體視圖的框圖。參照圖5,本 實施例公開了使用由方法處理模塊309提供的指令所描述的方法的邏輯處理模塊308,其 中,所述方法是用于分離在具有用于設(shè)計的軟件指令的計算機中操縱的實體模型中的面的 方法,一般在500處描繪。提到以下步驟是為了提供在具有隨后討論的細節(jié)的系統(tǒng)中所述 的實施例的概觀。該系統(tǒng)使用計算機外圍設(shè)備輸入端直接在實體模型上選擇修改特征上的 選擇點(步驟500)。該系統(tǒng)按距離將鄰近于由選擇點確定的選擇面的多個相鄰面分類(步驟 505)。該系統(tǒng)確定是否存在其中所述多個相鄰面向選擇面凸起的凸起情況(步驟510)。該 系統(tǒng)確定是否存在其中所述多個相鄰面與先前被訪問的面共享同一表面并且存在所述凸 起情況的候選曲線(步驟515)。該系統(tǒng)將候選曲線標記在實體模型上以使實體模型準備好 用于根據(jù)來自用戶的修改意圖進行修改(步驟520)。該系統(tǒng)根據(jù)導致已修改實體模型和已 修改可見顯示信息的修改意圖來修改實體模型(步驟525)。該系統(tǒng)使用已修改可見顯示信 息來向用戶顯示已修改實體模型(步驟530)。圖6舉例說明示例性實體模型修改系統(tǒng)。使用軟件應用程序400的用戶執(zhí)行用 于軟件應用程序400的必要命令以訪問優(yōu)選的是硬盤驅(qū)動器600的存儲設(shè)備355,硬盤驅(qū) 動器600具有與存儲在實體模型數(shù)據(jù)文件425中的實體模型的虛擬表示有關(guān)的數(shù)據(jù),所述 實體模型數(shù)據(jù)文件425優(yōu)選地可被軟件應用程序400、變化建模工具箱405、3D幾何建模 器410和部件庫415訪問。進一步參照圖6,軟件應用程序400的特征在于實體建模應用 程序605,其訪問優(yōu)選地被構(gòu)造為優(yōu)選地以指示用于3D幾何建模器410的建模器傳輸文 件類型的stand. x_t格式、指示用于變化建模工具箱405的變化建模工具箱信息文件類型 的stand. vtk_data格式被存儲在硬盤驅(qū)動器600上的數(shù)據(jù)文件610的實體模型數(shù)據(jù)文件 425,其中,stand*指的是類屬部分文件名。實體建模應用程序605具有其自己的已識別文 件類型擴展,例如APP,其用該已識別文件類型擴展來獲得用于操縱實體模型的足夠信息。 繼續(xù),實體建模應用程序605將stand. x_t文件加載到將被3D幾何建模器410訪問的3D 幾何建模器會話主體。stand. Vtk_data文件被加載并添加到3D幾何建模器會話主體。實 體建模應用程序605加載關(guān)于實體模型的應用程序數(shù)據(jù)并根據(jù)其自己的文件類型例如PRT 來訪問數(shù)據(jù)文件610。已加載實體模型的設(shè)計者意圖修改看到的實體模型的某個方面。在 此意圖時,設(shè)計者選擇可以是面、邊、或頂點的拓撲結(jié)構(gòu)進行修改。通過選擇拓撲結(jié)構(gòu)進行 修改,實體建模應用程序開始與變化建模工具箱405相交互以使用本領(lǐng)域中已知的技術(shù)借 助于變化建模工具箱API 615來處理修改計算。在實體模型修改之后,為了將已修改實體 模型保存到硬盤驅(qū)動器600,塊620舉例說明與變化建模工具箱405有關(guān)的數(shù)據(jù)被從實體模 型刪除(striped)并放置到Vtk_data數(shù)據(jù)結(jié)構(gòu)中,所述Vtk_data數(shù)據(jù)結(jié)構(gòu)隨后被保存到 stand. vtk_data文件。被刪除的實體主體也被保存到硬盤驅(qū)動器600,如應用程序數(shù)據(jù)一 樣。下面更詳細地討論選擇例如被合并的肋的拓撲結(jié)構(gòu)的動作。4.分離方法
現(xiàn)在更詳細地轉(zhuǎn)到面分離系統(tǒng),該系統(tǒng)包括采用遍歷遞歸程序多遍的面分離方法,所 述遞歸程序具有單個面和選擇點作為輸入。保持集合C以存儲在選擇被合并的肋之后被添 加到模型的所有新邊的參數(shù)數(shù)據(jù)。該方法還保持被從處理排除的一組面F(e),其中,列表最 初是空的。實體模型的當前狀態(tài)被保存在S中。該方法以單個面和選擇點的形式接收設(shè)計者的輸入。獲得所述單個面的相鄰面并按距離進行分類。以遞歸方式來檢驗已分類且獲得 的相鄰面以通過分離確定肋資格和限制肋的潛在性(potential)。對于肋資格,相鄰面必須 相對于輸入的單個面凸起。對于肋的潛在性限制,進行兩個確定。首先,如果相鄰面與先前 被訪問的面共享相同的底(underlying)表面和其次,如果任何兩個面具有與先前被識別為 肋的面鄰接的外圍環(huán)路,則所述方法嘗試將面分離。此外,如果添加邊,則停止遞歸并使用 初始輸入進行另一遍,其中,這些面被從任何進一步的處理排除。此第二確定有效地減小在 所有后續(xù)的遍中訪問的面的范圍,例如,同一面可能被分離不止一次,因此可以有多遍。用 于所有產(chǎn)生的邊的參數(shù)被保存在集合C中。在取盡(exhausting)該組相鄰面時,遞歸地訪 問上述的滿足肋資格的面,直至不再有要訪問的面為止?,F(xiàn)在,從集合C丟棄不限制輸入的 單個面的邊界的那些邊的參數(shù)數(shù)據(jù)。實體模型被返回到保存的狀態(tài)S,并且保存在集合C中 的邊被標記到實體模型中。
5.分離說明
圖7a_7b舉例說明實體模型修改系統(tǒng)中的示例性面分離。參照圖7a和7b,設(shè)計者已加 載用于修改的實體模型700以進行可見顯示。實體模型700具有肋705和被合并的肋710。 設(shè)計者意圖修改被合并的肋710并確定選擇面715和選擇點720。系統(tǒng)使FS為點PT處的 所選面。Fl和F2共享同一底表面且兩者均鄰近于FS,因此可以使用此表面上的曲線來分 離面FS。在初始化時,系統(tǒng)將F (e)和C設(shè)置為等于空集{}。當前模型狀態(tài)被保存為S。在 本示例中,發(fā)生3遍。在第1遍,
權(quán)利要求
1.一種用于選擇對在具有軟件指令的計算機中操縱的實體模型的修改的系統(tǒng),包括計算機系統(tǒng),其中,所述計算機系統(tǒng)包括存儲器、處理器、用戶輸入設(shè)備、以及顯示設(shè)備;計算機生成的幾何模型,其被存儲在所述計算機系統(tǒng)的存儲器中;以及 其中,所述計算機系統(tǒng)使用計算機外圍設(shè)備輸入端直接在實體模型上選擇修改特征上 的選擇點;按距離將鄰近于由所述選擇點確定的選擇面的多個相鄰面分類;確定是否存在 其中所述多個相鄰面向所述選擇面凸起的凸起情況;確定是否存在其中所述多個相鄰面與 先前訪問的面共享同一表面并且存在所述凸起情況的候選曲線;將所述候選曲線標記在所 述實體模型上以使實體模型準備好用于根據(jù)來自用戶的修改意圖進行修改;根據(jù)導致已修 改實體模型和已修改可見顯示信息的所述修改意圖來修改所述實體模型;以及使用所述已 修改可見顯示信息向用戶顯示所述已修改實體模型。
2.段落8的系統(tǒng),其中,所述計算機系統(tǒng)將具有可見顯示數(shù)據(jù)的實體模型數(shù)據(jù)文件加 載到實體模型建模應用程序中。
3.權(quán)利要求2的系統(tǒng),其中,所述計算機系統(tǒng)將已修改實體模型計算到所述實體模型 數(shù)據(jù)文件中。
4.一種用于分離實體模型中的面的方法,包括使用計算機外圍設(shè)備輸入端直接在實體模型上選擇修改特征上的選擇點; 按距離將鄰近于由選擇點確定的選擇面的多個相鄰面分類; 確定是否存在其中所述多個相鄰面向所述選擇面凸起的凸起情況; 確定是否存在其中所述多個相鄰面與先前被訪問的面共享同一表面并且存在所述凸 起情況的候選曲線;將候選曲線標記在實體模型上以使實體模型準備好用于根據(jù)來自用戶的修改意圖進 行修改;根據(jù)導致已修改實體模型和已修改可見顯示信息的所述修改意圖來修改實體模型;以及使用已修改可見顯示信息來向用戶顯示所述已修改實體模型。
5.權(quán)利要求4的方法,還包括將具有可見顯示數(shù)據(jù)的實體模型數(shù)據(jù)文件加載到實體 模型建模應用程序中。
6.權(quán)利要求5的方法,還包括將所述已修改實體模型計算到所述實體模型數(shù)據(jù)文件中。
7.一種計算機程序產(chǎn)品,包括具有在其中體現(xiàn)的計算機可讀程序代碼的計算機可用 介質(zhì),所述計算機可讀程序代碼適合于被執(zhí)行以實現(xiàn)用于選擇對實體模型的修改的方法, 該方法包括提供系統(tǒng),其中,所述系統(tǒng)包括邏輯處理模塊、顯示處理模塊、以及方法處理模塊; 使用計算機外圍設(shè)備輸入端直接在實體模型上選擇修改特征上的選擇點,并且其中, 由方法處理模塊響應于被所述邏輯處理模塊調(diào)用來執(zhí)行所述選擇;按距離將鄰近于由所述選擇點確定的選擇面的多個相鄰面分類,并且其中,由方法處 理模塊響應于被所述邏輯處理模塊調(diào)用來執(zhí)行所述分類;確定是否存在其中所述多個相鄰面向所述選擇面凸起的凸起情況,并且其中,由方法 處理模塊響應于被所述邏輯處理模塊調(diào)用來執(zhí)行所述確定;確定是否存在其中所述多個相鄰面與先前被訪問的面共享同一表面并且存在所述凸 起情況的候選曲線,并且其中,由方法處理模塊響應于被所述邏輯處理模塊調(diào)用來執(zhí)行所 述確定;將候選曲線標記在實體模型上以使實體模型準備好用于根據(jù)來自用戶的修改意圖進 行修改,并且其中,由方法處理模塊響應于被所述邏輯處理模塊調(diào)用來執(zhí)行所述標記;根據(jù)導致已修改實體模型和已修改可見顯示信息的所述修改意圖來修改實體模型,并 且其中,由方法處理模塊響應于被所述邏輯處理模塊調(diào)用來執(zhí)行所述修改;以及由所述顯示處理模塊使用來自所述修改處理模塊的已修改可見顯示信息來向用戶顯 示所述已修改實體模型。
8.權(quán)利要求7的計算機程序產(chǎn)品,還包括為所述系統(tǒng)提供數(shù)據(jù)文件處理模塊。
9.權(quán)利要求8的計算機程序產(chǎn)品,還包括將具有可見顯示數(shù)據(jù)的實體模型數(shù)據(jù)文件 加載到實體模型建模應用程序中,并且其中,由數(shù)據(jù)文件處理模塊響應于被邏輯處理模塊 調(diào)用來執(zhí)行所述加載。
10.權(quán)利要求8的計算機程序產(chǎn)品,還包括由數(shù)據(jù)文件處理模塊響應于被邏輯處理模 塊調(diào)用來將已修改實體模型計算到實體模塊數(shù)據(jù)文件中。
11.一種用于選擇對在具有用于設(shè)計的軟件指令的計算機中操縱的實體模型表示的 修改的系統(tǒng),包括計算機系統(tǒng),其中,所述計算機系統(tǒng)包括存儲器、處理器、用戶輸入設(shè)備、以及顯示設(shè)備;計算機生成的幾何模型,其被存儲在所述計算機系統(tǒng)的存儲器中;以及其中,所述計算機系統(tǒng)將具有可見顯示數(shù)據(jù)的實體模型數(shù)據(jù)文件加載到實體模型建模 應用程序中;顯示由從所述實體模型數(shù)據(jù)文件提取的可見顯示信息計算的實體模型;使用 傳送來自用戶的修改意圖的計算機外圍設(shè)備輸入端直接在實體模型上選擇修改特征;建議 所述修改特征包括多個附加選擇特征;通過視覺突出顯示來檢驗所包括的多個附加選擇特 征是否符合修改意圖;根據(jù)導致已修改實體模型和已修改可見顯示信息的所述修改意圖來 修改所述實體模型;將所述已修改實體模型計算到所述實體模型數(shù)據(jù)文件中;以及使用已 修改可見顯示信息向用戶顯示所述已修改實體模型。
全文摘要
一種用于選擇對在具有軟件指令的計算機中操縱的實體模型的修改的系統(tǒng)、方法和計算機程序,包括計算機系統(tǒng),其中,所述計算機系統(tǒng)包括存儲器、處理器、用戶輸入設(shè)備、以及顯示設(shè)備;計算機生成的幾何模型,其被存儲在所述計算機系統(tǒng)的存儲器中;以及其中,所述計算機系統(tǒng)使用計算機外圍設(shè)備輸入端直接在實體模型上選擇修改特征上的選擇點;按距離將鄰近于由所述選擇點確定的選擇面的多個相鄰面分類;確定是否存在其中所述多個相鄰面向所述選擇面凸起的凸起情況;確定是否存在其中所述多個相鄰面與先前訪問的面共享同一表面并且存在所述凸起情況的候選曲線;將所述候選曲線標記在所述實體模型上以使實體模型準備好用于根據(jù)來自用戶的修改意圖進行修改;根據(jù)導致已修改實體模型和已修改可見顯示信息的所述修改意圖來修改所述實體模型;以及使用所述已修改可見顯示信息向用戶顯示所述已修改實體模型、以及適當裝置和計算機可讀指令。
文檔編號G06T17/00GK102067133SQ200980122294
公開日2011年5月18日 申請日期2009年4月14日 優(yōu)先權(quán)日2008年4月14日
發(fā)明者J·J·博曼, V·漢布里奇 申請人:西門子產(chǎn)品生命周期管理軟件公司