要部件以適當(dāng)取向設(shè)置在模型內(nèi)。現(xiàn)在參照圖5-9描述可以被執(zhí)行以產(chǎn)生模型12的處理過程的示例。
[0054]在圖5中,示出了示意圖11的處理過程中使用以產(chǎn)生模型12的邏輯部件。特別是,示出了計(jì)算機(jī)程序中所使用的從示意圖產(chǎn)生模型的示例的類。任務(wù)類30包括對存儲(chǔ)示意圖11和用于訪問示意圖中的示意性符號的操作(如子例程,方法,功能等)所需的數(shù)據(jù)結(jié)構(gòu)。對于每一個(gè)在示意圖11中存在的示意性符號,任務(wù)類30的每種情形包括示意性符號類31的各種情形。任務(wù)類30的情形包括用于從示意性符號類31的情形中確定根符號的數(shù)據(jù)項(xiàng),和用于存儲(chǔ)與整個(gè)示意圖11有關(guān)的信息,例如基部類型、端口類型等的數(shù)據(jù)項(xiàng)。任務(wù)類30的每個(gè)情形因此提供了用于由處理設(shè)備3處理的示意圖的完整的表示。
[0055]任務(wù)類30的每個(gè)情形都與模型類32的情形相關(guān)聯(lián)。模型類32包括適于存儲(chǔ)完整的模型12的數(shù)據(jù)結(jié)構(gòu),包括該復(fù)合產(chǎn)品的各種模塊和部件的表示,以及任何其他可用于限定復(fù)合產(chǎn)品的信息,例如重量、長度、高度等。歧管匯編器類33包括用于從示意圖11生成模型12的操作(例如子例程,方法,功能等)和數(shù)據(jù)項(xiàng)。特別是,歧管匯編器類33包括布置成接收所述模型類32的一個(gè)情形的主子例程。歧管匯編器類33配置成通過步進(jìn)通過任務(wù)類30的情形內(nèi)包含的示意性符號類31的情形來處理與所接收的模型類32的情形相關(guān)聯(lián)的任務(wù)類30的情形。對于任務(wù)類30內(nèi)包含的示意性符號類31的每個(gè)情形,歧管匯編器類33配置成向模型類32的情形添加合適的模塊和/或其它部件以產(chǎn)生模型12。
[0056]現(xiàn)在參考圖6描述由歧管匯編器類33的主子例程執(zhí)行的處理。應(yīng)理解的是,在本發(fā)明的其它實(shí)施例中,圖6的處理過程可以在客戶設(shè)備2處進(jìn)行。即,在一些實(shí)施例中,處理設(shè)備3與客戶設(shè)備2可以是相同的設(shè)備。
[0057]在圖6的步驟S1中,收到示意圖11,并且創(chuàng)建新的歧管模型(例如,模型類32的情形是與任務(wù)類30的情形一起舉例說明)。處理過程從步驟S1進(jìn)行到步驟S2,在步驟S2中,初始的支架被添加到模型中。通常,需要支架以使歧管附接到基部。當(dāng)需要支架時(shí),支架的數(shù)量可受多個(gè)因素影響,包括歧管將附接其上的基部的類型(例如,“Namur”基部,“1英寸”基部等)和構(gòu)成歧管的模塊的數(shù)量。例如,可以指定歧管的每四個(gè)模塊需要一個(gè)支架,和歧管必須總共具有最少兩個(gè)支架。因此,從上一支架被添加開始已經(jīng)被添加到歧管模型的模塊數(shù)量的各自的計(jì)數(shù)可以被保持,以及被添加到歧管模型的支架的總數(shù)。
[0058]處理過程從步驟S2前進(jìn)到步驟S3,在步驟S3中,示意圖11的根示意性符號變成當(dāng)前內(nèi)嵌符號。然后,處理過程前進(jìn)到步驟S4,在步驟S4中,由當(dāng)前內(nèi)嵌符號代表的模塊被確定,并且該模塊被添加到所述歧管模型。下面參照圖7更詳細(xì)地描述中步驟S4中執(zhí)行選擇和添加模塊到歧管模型的處理過程。
[0059]處理過程從步驟S4前進(jìn)到步驟S5,在步驟S5中,確定是否有排氣(管)與由當(dāng)前內(nèi)嵌符號代表的模塊相關(guān)聯(lián)。可以通過任何適當(dāng)?shù)姆绞酱_定是否需要排氣模塊。例如,可基于在示意性符號的名稱內(nèi)設(shè)置的標(biāo)識(shí)符來識(shí)別那些需要排氣的模塊。這樣,可以在步驟S5中檢查當(dāng)前示意性符號的名稱以確定是否需要排氣模塊。例如,可保留特定的字符以用于代表需要排氣的模塊的符號名稱。
[0060]如果在步驟S5中確定在步驟S4中添加到歧管模型的模塊需要排氣模塊,則處理過程前進(jìn)到步驟S6,在步驟S6中,排氣模塊被添加到歧管模型。處理過程從步驟S6前進(jìn)到步驟S7。另一方面,如果在步驟S5中確定不需要排氣模塊與在步驟S4中添加到歧管模型的模塊相關(guān)聯(lián),則處理過程直接從步驟S5前進(jìn)到步驟S7。
[0061 ]在步驟S7中,確定在示意圖11中的當(dāng)前內(nèi)嵌符號“上方”是否有堆棧符號(即,在步驟S4被添加的模塊上方是否有任何堆棧模塊)。如果確定當(dāng)前內(nèi)嵌符號上方有堆棧符號,則處理過程從步驟S7前進(jìn)到步驟S8,在步驟S8中,堆棧中的第一堆棧符號變成當(dāng)前堆棧符號。處理過程從步驟S8前進(jìn)到步驟S9,在步驟S9中,由當(dāng)前堆棧符號代表的堆棧模塊被添加到歧管模型。
[0062]處理過程從步驟S9前進(jìn)到步驟S10,在步驟S10中,確定當(dāng)前堆棧符號的上方是否有堆棧符號。如果確定當(dāng)前堆棧符號上方有堆棧符號,則處理過程前進(jìn)到步驟S11,在步驟S11中,堆棧中的下一堆棧符號被設(shè)定為當(dāng)前堆棧符號。處理過程從步驟S11前進(jìn)到步驟S9。另一方面,如果在步驟S10中確定當(dāng)前堆棧符號上方不存在堆棧符號,則處理過程前進(jìn)到步驟 S12o
[0063]在步驟S12,連桿被添加到用于當(dāng)前堆棧的歧管模型。多個(gè)連桿穿過堆棧的每個(gè)堆棧模塊以使堆棧的模塊固定在一起。例如,各個(gè)連桿可以穿過堆棧的四“角”的每個(gè)角。要用來連接堆棧的連桿的長度取決于堆棧中的堆棧模塊的數(shù)量和類型(以及因此高度)。因此,通過等待直到每個(gè)堆棧模塊都已被處理,正確的連桿長度可以被自動(dòng)選擇,并添加具有正確長度的連桿。
[0064]處理過程從步驟S12前進(jìn)到步驟S13。另一方面,如果在步驟S7中確定當(dāng)前內(nèi)嵌符號上方?jīng)]有堆棧符號(并因此沒有堆棧),則處理過程從步驟S7直接前進(jìn)到步驟S13。在步驟S13,確定是否需要更多支架被添加到所述歧管模型。如上所述,從上一個(gè)支架被添加開始的已被添加到歧管模型12的模型數(shù)量的計(jì)數(shù)可以被保持。因此,步驟S13的確定可以是確定是否計(jì)數(shù)已經(jīng)達(dá)到預(yù)定數(shù)量(例如四個(gè))。如果在步驟S13確定需要另一支架,則處理過程前進(jìn)到步驟S14,在步驟S14中,具有一體的密封件的支架被添加到所述歧管模型。處理過程從步驟S14前進(jìn)到步驟S16。另一方面,如果在步驟S13中確定不需要另一支架,則處理過程從步驟S13前進(jìn)到步驟S15,在步驟S15中,在先前添加的模塊之后,密封板被添加到模型。處理過程從步驟S15前進(jìn)到步驟S16。
[0065]在步驟S16,確定當(dāng)前內(nèi)嵌符號的右側(cè)是否有任何示意性符號。如果確定當(dāng)前內(nèi)嵌符號的右側(cè)有示意性符號,則處理過程前進(jìn)到步驟S17,在S17中,下一個(gè)內(nèi)嵌符號變成當(dāng)前內(nèi)嵌符號。處理過程從步驟S17前進(jìn)到步驟S4。另一方面,如果在步驟S16確定在當(dāng)前內(nèi)嵌符號的右側(cè)沒有其它示意性符號,則處理過程從步驟S16前進(jìn)到步驟S18,在步驟S18中,任何所需的入口和出口端口都被添加到歧管模型。使內(nèi)嵌模塊連接在一起的水平連桿基于模塊的數(shù)量和類型(以及因此長度)被添加到所述歧管模型12。圖6的處理過程從步驟S18前進(jìn)到步驟S19的終止。
[0066]應(yīng)理解的是,參照圖6描述的處理過程是用于產(chǎn)生歧管模型的處理過程的示例,以顯示示意性符號如何被處理以產(chǎn)生復(fù)合產(chǎn)品的模型??梢愿淖儓D6的處理過程以用于產(chǎn)生歧管模型或用于產(chǎn)生其它類型的復(fù)合產(chǎn)品的模型二者。例如,圖6的處理過程假定支架被添加到模型中。這可能是由于例如使用了特殊的基部之類的因素,不要求支架并因此在示意圖11的處理過程中不被添加到模型12。
[0067]如上所述,在圖6的步驟S4和S9中,內(nèi)嵌模塊和堆棧模塊分別基于被處理的當(dāng)前內(nèi)嵌符號或當(dāng)前堆棧符號被添加到歧管模型。選擇正確的模塊是基于存儲(chǔ)在與每個(gè)模塊相連的數(shù)據(jù)庫5中的數(shù)據(jù)。參照圖7,現(xiàn)在描述在步驟S4和S9執(zhí)行以便添加新模塊到歧管模型的處理過程。
[0068]在步驟S20,對應(yīng)于當(dāng)前內(nèi)嵌或堆疊符號的模塊的細(xì)節(jié)從存儲(chǔ)全部模塊的細(xì)節(jié)的數(shù)據(jù)庫5的模塊表獲取。例如,示意圖11中的每個(gè)示意性符號可包括可被用于確定模塊標(biāo)識(shí)符的相應(yīng)的標(biāo)識(shí)符。模塊標(biāo)識(shí)符則可以被用作向模塊表內(nèi)的索引。當(dāng)示意性符號代表可逆轉(zhuǎn)的模塊時(shí),該示意性符號的示意圖標(biāo)識(shí)符可以與兩個(gè)模塊標(biāo)識(shí)符相關(guān)聯(lián)。因此在步驟S20中檢索到的具體模塊標(biāo)識(shí)符可包括確定示意性符號的取向以確定示意性符號是否已被逆轉(zhuǎn)。
[0069]從數(shù)據(jù)庫5獲取的細(xì)節(jié)可包括存儲(chǔ)在用于將模塊添加到歧管模型的數(shù)據(jù)庫5中的任何細(xì)節(jié)(例如,正確的取向和避免部件之間的沖突的方式)。在目前描述的示例中,數(shù)據(jù)庫5包括