提取CAD文檔中的信息
我們可以在模板上定義一類稱為“CAD Reader”的特殊的表間公式,它能夠從當(dāng)前打開的CAD文檔中提取信息,自動(dòng)填充到表單上。從而使得表單的內(nèi)容始終和CAD文件中的內(nèi)容保持一致。
例如,針對(duì)每個(gè)零部件,我們?cè)谙到y(tǒng)中都需要填一張“部件信息”表單,在其中要說明零件中的一些關(guān)鍵參數(shù)。
一個(gè)產(chǎn)品/部件,有其相應(yīng)的設(shè)計(jì)文件----某種CAD軟件的文檔,在這個(gè)CAD文檔中,實(shí)際上已經(jīng)包含了這個(gè)產(chǎn)品/部件的相關(guān)信息,比如這個(gè)“產(chǎn)品/部件信息”單中的 “設(shè)計(jì)者”、“材質(zhì)”、“重量”等,可能就是設(shè)計(jì)文件中的屬性或參數(shù),“長(zhǎng)”、“寬”、“高”等,可能就是設(shè)計(jì)文件中的某些尺寸。
我們把一份CAD文檔視作一個(gè)小數(shù)據(jù)庫(kù),文檔中包含的信息,視作是這個(gè)數(shù)據(jù)庫(kù)中的數(shù)據(jù),每一類信息,就是這個(gè)數(shù)據(jù)庫(kù)中的一個(gè)表,我們稱之為“圖元表”;例如,Pro/E中有特征的概念,則一個(gè)Pro/E文檔中,就有一個(gè)名為“特征”的圖元表,每個(gè)具體的特征,是特征表中的一條記錄。這樣一來,我們就可以像定義普通的表間公式一樣去定義一個(gè)CAD Reader,只不過,CAD Reader的數(shù)據(jù)源不再是我們所定義的模板上的數(shù)據(jù)表,而是CAD 文檔中的圖元表。
28.3.1 定義 CAD Reader
本節(jié)以一個(gè)具體的例子,說明 CAD Reader 的定義和使用方法。
用參數(shù)化設(shè)計(jì)的思路設(shè)計(jì)模型
假設(shè)有如下圖所示的一個(gè)Pro/E零件,其包含兩個(gè)拉伸特征,拉伸長(zhǎng)度分別是d0和d2,拉伸1的草圖是一個(gè)圓,直徑是d1。我們?cè)谶@個(gè)模型中定義了兩個(gè)實(shí)數(shù)型的參數(shù)h和w,并定義兩個(gè)關(guān)系式:h=d0+d2,w=d1
“部件信息”模板
定義一個(gè)“部件信息”模板,表樣如前圖所示,定義兩個(gè)數(shù)據(jù)表“部件信息表”和“部件設(shè)計(jì)參數(shù)”
表名 | 部件信息表 | 所在工作表 | sheet1 | 樣式 | 主表 | |||
主鍵 | 區(qū)域 | 字段名 | 數(shù)據(jù)類型 | 必填 | 填寫規(guī)范 | 其它 | ||
* | C2 | 編碼 | 文字(20字以內(nèi)) | * | ||||
C3 | 名稱 | 名稱或地址 | * | |||||
C5 | 設(shè)計(jì)部門 | 文字(100字以內(nèi)) | ||||||
C6 | 設(shè)計(jì)者 | 文字(20字以內(nèi)) | ||||||
C7 | 材質(zhì) | 文字(100字以內(nèi)) | ||||||
C8 | 重量 | 小數(shù) | ||||||
C4 | 模型文件名 | 文字(100字以內(nèi)) |
表名 | 部件設(shè)計(jì)參數(shù) | 所在工作表 | sheet1 | 樣式 | 按行 | |||
主鍵 | 區(qū)域 | 字段名 | 數(shù)據(jù)類型 | 必填 | 填寫規(guī)范 | 其它 | ||
* | B12:B14 | 參數(shù)名稱 | 文字(100字以內(nèi)) | * | ||||
C12:C14 | 參數(shù)值 | 小數(shù) | ||||||
D12:D14 | 對(duì)應(yīng)模型參數(shù)名 | 文字(100字以內(nèi)) |
定義CAD Reader
下面我們?cè)谌缜皥D 所示的“部件信息”模板上定義一個(gè)CAD Reader,把一個(gè)Pro/E模型中定義的所有參數(shù)提取出來,在“設(shè)計(jì)參數(shù)”明細(xì)表的“對(duì)應(yīng)模型參數(shù)名”那里構(gòu)造下拉列表。
- 打開模板“部件信息”
- 點(diǎn)擊“Excel服務(wù)器”功能區(qū)按鈕【表間公式】,彈出“表間公式”窗口。
- 點(diǎn)擊【新建】,彈出“選擇表間公式類型”窗口,選擇最后一項(xiàng)“CAD Reader”,點(diǎn)擊【確定】。
4.彈出“表間公式—提取數(shù)據(jù)”窗口,這個(gè)窗口和定義普通的提數(shù)公式的窗口幾乎是一樣的,只有一點(diǎn)小區(qū)別:在“公式名稱”旁邊多出來一個(gè)“類型”下拉列表,里面是Excel服務(wù)器2024 CAD版(CAD服務(wù)器2024)所支持的三種CAD軟件的名稱;我們這里要定義一個(gè)從Pro/E文檔中提取數(shù)據(jù)的公式,所以類型選擇“Pro/Engineer”;
5.輸入“公式名稱”,點(diǎn)擊【來源數(shù)據(jù)】按鈕,彈出“選擇數(shù)據(jù)表”窗口。在這個(gè)窗口上,“數(shù)據(jù)表分類”中增加了一個(gè)節(jié)點(diǎn)“Pro/Engineer”;點(diǎn)擊此節(jié)點(diǎn),在“可選數(shù)據(jù)表”中列出了我們可訪問的四個(gè)Pro/E 中的圖元表:特征、尺寸、參數(shù)、關(guān)系式;本例中,我們要提取Pro/E中的參數(shù),所以雙擊“參數(shù)”,將其加入到“已選數(shù)據(jù)表”中。
6.點(diǎn)擊【確定】,回到“表間公式—提取數(shù)據(jù)”窗口,點(diǎn)擊【填充方式】,彈出“填充方式”窗口,選擇填充目的表為“部件信息”模板上的明細(xì)表“部件設(shè)計(jì)參數(shù)”。
7.點(diǎn)擊“對(duì)應(yīng)模型參數(shù)名”的“提取數(shù)據(jù)…”列上的編輯圖標(biāo),彈出“輸入表達(dá)式”窗口,注意看在“分類”那里多了一項(xiàng)“<當(dāng)前文檔>”,下面列出的是我們?cè)谶x擇數(shù)據(jù)源那一步所選擇的Pro/E圖元表表名----參數(shù)。輸入表達(dá)式為“當(dāng)前文檔.參數(shù).參數(shù)名”。
8.點(diǎn)擊【確定】回到“填充方式”窗口。選擇操作為“構(gòu)造下拉選項(xiàng)”。點(diǎn)擊【保存】返回到“表間公式—提數(shù)數(shù)據(jù)”窗口。
9.定義完整的CAD Reader 如下圖,點(diǎn)擊【保存】。
用同樣方法,定義另一個(gè)CAD Reader,如下圖所示:
28.3.2 應(yīng)用CAD Reader
前文說到,CAD Reader 能夠把“當(dāng)前打開的”CAD文檔中的信息,提取到“當(dāng)前填報(bào)的”表單上,也就是說,CAD Reader 的應(yīng)用,要求表單和CAD 文檔同時(shí)處在打開的狀態(tài)。
在兩種情況下,可以做到表單和CAD文檔同時(shí)打開,一是提交CAD 文檔的時(shí)候,同時(shí)填報(bào)表單;二是單獨(dú)填報(bào)表單的時(shí)候打開表單的相關(guān)文檔。下面分別按這兩種情況,介紹CAD Reader 的應(yīng)用。
提交文檔的同時(shí)填報(bào)表單,并應(yīng)用CAD Reader
- 按29.2節(jié)所述方法,設(shè)置模板“部件信息”的屬性,勾選“是CAD表單”,并選擇與Pro/E掛鉤。
- 簽出并打開文檔庫(kù)中的Pro/E文檔,提交,在提交窗口上,勾選“填報(bào)以下表單”,選擇“部件信息”。
3.點(diǎn)擊【確定】,則自動(dòng)打開Excel,出現(xiàn)“部件信息”的填報(bào)界面。點(diǎn)擊“Excel服務(wù)器”功能區(qū)中的按鈕【應(yīng)用公式】,彈出“應(yīng)用公式”窗口,勾選“Pro/E_參數(shù)名”,點(diǎn)擊【應(yīng)用】按鈕。
4.應(yīng)用了公式之后,在明細(xì)表的“對(duì)應(yīng)模型參數(shù)”那里,會(huì)出現(xiàn)下拉列表,列表中的內(nèi)容,就是Pro/E文檔中的參數(shù)。選擇某個(gè)參數(shù)后,在該行的“參數(shù)值”那里,會(huì)自動(dòng)出現(xiàn)該參數(shù)的值,這是因?yàn)槲覀冞€有第二個(gè)CAD Reader“Pro/E_參數(shù)值”,它帶有篩選條件,其中用到了“本報(bào)表.部件設(shè)計(jì)參數(shù).對(duì)應(yīng)模型參數(shù)名”,而且是“篩選條件條件改變后自動(dòng)執(zhí)行”的,所以只要選擇了對(duì)應(yīng)模型參數(shù),就會(huì)自動(dòng)執(zhí)行它,從Pro/E文檔中提取出所選參數(shù)的值,填充到表單上。
5.保存表單,文檔也被同時(shí)提交,表單中的數(shù)據(jù)和文檔中包含的信息完全一致。
填報(bào)表單的同時(shí)打開相關(guān)的CAD文檔,并應(yīng)用CAD Reader
在26.3節(jié),我們講過可以設(shè)置文檔庫(kù)中的文檔與表單的相關(guān)關(guān)系,當(dāng)填報(bào)表單的時(shí)候,在設(shè)置了文檔庫(kù)的情況下,可通過點(diǎn)擊“Excel服務(wù)器”功能區(qū)按鈕【相關(guān)文檔】,彈出“相關(guān)文檔”窗口,選擇相關(guān)文檔并打開,而后,即可以應(yīng)用 CAD Reader,從已打開的相關(guān)文檔中提取數(shù)據(jù),填充到表單上。