版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 武漢工業(yè)學院</b></p><p><b> 畢 業(yè) 論 文</b></p><p> 畢業(yè)設計題目: 帶輪的參數(shù)化設計 </p><p> 姓 名 </p><p> 學 號 03033317 </p><
2、;p> 院 (系) 機械工程系 </p><p> 專 業(yè) 包裝工程 </p><p> 指導教師 </p><p><b> 2007年 6 月</b></p><p><b> 摘 要</b></p><p> 本論文研
3、究的主要目的是為了有效利用CAD技術,實現(xiàn)零件的參數(shù)化設計,從而提高生產(chǎn)效率。介紹了利用Pro/E的二次開發(fā)工具包Pro/Toolkit和VC++相結(jié)合對Pro/E進行二次開發(fā),采用動態(tài)連接庫方式實現(xiàn)三者之間的信息傳遞,從而完成帶輪的設計計算、應用模塊之間的調(diào)用以及設計圖樣的生成顯示。設計過程中探討了設計資料程序化處理、帶輪設計計算、模型驅(qū)動、三維參數(shù)化建模等技術問題。在完成系統(tǒng)開發(fā)和注冊后,只要輸入帶輪設計的驅(qū)動參數(shù),系統(tǒng)就會自動完成
4、帶輪的設計以及帶輪零件實體圖形的生成。這種方法的整個設計界面友好,且便于操作,設計的零件能夠很好的滿足設計精度和強度要求。</p><p> 關鍵詞:Pro/E;二次開發(fā);參數(shù)化;帶輪</p><p><b> Abstract</b></p><p> In this study, the main purpose is to the
5、effective use of CAD technology, the parts of parametric design, thereby enhancing production efficiency. Introduced to the use of </p><p> Pro/E of the Second Development Kit Pro/Toolkit and VC + + combina
6、tion of Pro/E </p><p> for the second development, dynamic link library achieved between the transmission </p><p> of information, thus completing the pulley design, application module between
7、 the call </p><p> and the production design drawings show. The design process of design information processing procedures, pulley design, model-driven, 3D parametric modeling, and other technical issues. T
8、he completion of systems development and registration, as long as the importation of the driving pulley design parameters, system will automatically complete the design and pulley pulley parts of the entities generated g
9、raphics. This method of the entire design interface is friendly and easy to operate. designed</p><p> Keywords:Pro/E;Secondary Development;Parametric;Pulley</p><p><b> 目 錄</b><
10、;/p><p><b> 摘 要I</b></p><p> 英文摘要錯誤!未定義書簽。</p><p> 第一章 緒 論1</p><p> 1.1 選題的意義1</p><p> 1.2 CAD技術概述2</p><p> 1.2.1 CAD技術
11、的概念2</p><p> 1.2.2 CAD技術在機械工業(yè)中的應用2</p><p> 1.2.3 CAD技術的發(fā)展現(xiàn)狀及發(fā)展趨勢3</p><p> 1.3 本論文主要工作4</p><p> 第二章系統(tǒng)開發(fā)環(huán)境分析5</p><p> 2.1Visual C++基礎知識5</p&g
12、t;<p> 2.1.1 Visual C++簡介5</p><p> 2.1.2 MFC簡介5</p><p> 2.1.3 VC++動態(tài)鏈接庫5</p><p> 2.2 面向?qū)ο蟮幕A知識6</p><p> 2.2.1 面向?qū)ο蠓椒ê喗?</p><p> 2.2.2 面向?qū)?/p>
13、象方法中基本概念6</p><p> 2.2.3 面向?qū)ο蟮能浖_發(fā)技術7</p><p> 2.3 Pro/ENGINEER基礎知識8</p><p> 2.3.1 Pro/ENGINEER簡介8</p><p> 2.3.2 Pro/TOOLKIT基礎知識9</p><p> 2.3.3 參數(shù)化
14、設計技術10</p><p> 第三章 帶輪結(jié)構的確定12</p><p> 3.1 帶輪簡介12</p><p> 3.2 確定帶輪的基本結(jié)構尺寸12</p><p> 3.2.1 帶輪的基本參數(shù)及其意義12</p><p> 3.2.2 帶輪設計的驅(qū)動尺寸確定及其輸入12</p>
15、<p> 3.2.3 確定帶輪的結(jié)構尺寸13</p><p> 第四章參數(shù)化設計的方法和步驟16</p><p> 4.1 Pro/TOOKIT的安裝16</p><p> 4.2 VC.net環(huán)境設置16</p><p> 4.2.1 創(chuàng)建DLL工程16</p><p> 4.2
16、.2 設置包含頭文件16</p><p> 4.2.3 設置庫文件環(huán)境17</p><p> 4.2.4 設置庫文件路徑17</p><p> 4.3 Pro/TOOLKIT應用程序設計(編寫源文件)17</p><p> 4.3.1 編寫資源文件17</p><p> 4.3.2 編寫程序源文件主
17、框架18</p><p> 4.4創(chuàng)建并調(diào)用參數(shù)輸入對話框19</p><p> 4.4.1 創(chuàng)建對話框過程19</p><p> 4.4.2 編輯用戶界面應用程序20</p><p> 4.4.3 添加一個數(shù)據(jù)接口文件20</p><p> 4.5應用程序注冊與運行21</p>
18、<p> 4.5.1 注冊文件的編寫21</p><p> 4.5.2 應用程序的注冊21</p><p> 4.5.3 應用程序的運行22</p><p><b> 結(jié) 論25</b></p><p><b> 謝 辭26</b></p><
19、;p><b> 參考文獻27</b></p><p> 附表1:V帶輪的基準直徑系列及其對應外徑28</p><p> 附表2:帶輪鍵槽尺寸的確定29</p><p> 附錄3:GuiInterface.cpp程序30</p><p> 附錄4:ParamDlg.cpp程序30</p>
20、;<p> 附錄5:ModelView.cpp程序31</p><p><b> 第一章 緒 論</b></p><p><b> 1.1 選題的意義</b></p><p> 當今任何一個國家,若要在綜合國力上取得優(yōu)勢地位,就必須在科學技術上取得優(yōu)勢。90年代以來,隨著以計算機技術為支柱的信息
21、技術的發(fā)展,世界經(jīng)濟格局發(fā)生了巨大的變化,逐步形成了一個統(tǒng)一的一體化市場,經(jīng)濟循環(huán)加大、加快,市場競爭日趨激烈。同時,工業(yè)產(chǎn)品由傳統(tǒng)的機械產(chǎn)品向機電一體化產(chǎn)品、信息電子產(chǎn)品方向發(fā)展,技術含量大為增高。這種趨勢促使企業(yè)在著手進行新產(chǎn)品開發(fā)時把面向產(chǎn)品的創(chuàng)新性、外觀造型、人機工程等設計理念提高到了一個新的高度,從而也迫切要求對產(chǎn)品設計的研究能有進一步的突破,以提高企業(yè)形象、產(chǎn)品設計水平和市場競爭力。正因如此,對于工業(yè)設計領域的研究逐漸受到了
22、國內(nèi)外學者的關注。特別是近幾年來,隨著計算機軟硬件技術的日新月異,計算機圖形學、計算機輔助設計、多媒體等技術的發(fā)展,日益激烈的市場競爭要求現(xiàn)代化企業(yè)必須低成本高效率的開發(fā)新產(chǎn)品。同時,新產(chǎn)品的更新?lián)Q代周期不斷縮短,這樣產(chǎn)品的設計過程在產(chǎn)品的整個生命周期中占據(jù)了越來越重要的地位。企業(yè)對產(chǎn)品的設計要求程序化,可視化。正應如此,CAD(計算機輔助設計),CAM(計算機輔助制造)、CAE(計算機輔助工程)等技術得到迅速普及和發(fā)展。</p&
23、gt;<p> 美國評出的最具影響的十大技術中,CAD/CAM/CAE技術榜上有名,在為數(shù)眾多的CAD軟件界,由美國PTC公司的軟件產(chǎn)品Pro/ENGINEER是世界上最成功的參數(shù)化設計軟件之一[1]。其軟件的總體設計思想體現(xiàn)了MDA(Mechanical Design Autom-</p><p> ation)軟件的新發(fā)展,在機械設計自動化(MDA)方面,Pro/ENGINEER通過一種獨特
24、的、參數(shù)化的以及面向零件的3D實體模型設計制作技術,徹底改變了傳統(tǒng)的設計理念,為工程設計提供了一條革命性的途徑。</p><p> 在機械設計過程中,將大量復雜而繁瑣的設計計算、圖表查詢等任務交給計算機去完成是機械CAD系統(tǒng)要完成的主要工作之一。過去,這種CAD系統(tǒng)的開發(fā)采用面向過程的建模方法,這種建模過程是一種順序的線性過程,這種模型強調(diào)開發(fā)中的每一過程的完整性和獨立性,后一過程必須在前一過程之后才能進行,這
25、顯然不符合人們認識世界是一個漸進往復的過程這一客觀規(guī)律。在帶輪的傳統(tǒng)設計中,原有的幾何模型是設計者利用固定的尺寸值得到的,零件的結(jié)構形狀不能靈活的改變,一旦零件尺寸發(fā)生變化,必須重新繪制其對應的幾何模型。為了能夠更直觀、更全面地反映設計意圖,可借助參數(shù)化設計軟件Pro/ENGINEER建立相應的帶輪三維實體模型庫,用Pro/ENGINEER自帶的二次開發(fā)工具包Pro/TOOLKIT在三維模型的基礎上進行參數(shù)傳遞,關系修改,零件裝配、干涉
26、檢查等高級的計算機輔助設計及制造工作[2]。</p><p> 在這種背景下,本論文將以帶輪設計為契機,開展《帶輪的參數(shù)化設計》的學位論文研究。在VC++6.0的集成開發(fā)環(huán)境下,對帶輪進行參數(shù)化設計,通過利用Pro/ENGINEER自帶的開發(fā)工具Pro/TOOLKIT對Pro/ENGINEER進行二次開發(fā),并在Pro/ENGINEER環(huán)境下進行帶輪結(jié)構的三維參數(shù)化設計,將零件的實體模型展現(xiàn)在用戶的面前。該系統(tǒng)的
27、開發(fā)將大大的方便用戶進行帶輪的結(jié)構設計,不僅可以提高設計效率和質(zhì)量,縮短產(chǎn)品的開發(fā)周期,而且對產(chǎn)品的有限元分析及后續(xù)加工具有一定的實用價值和參考意義,同時也符合現(xiàn)代技術的發(fā)展要求。</p><p> 1.2 CAD技術概述</p><p> 1.2.1 CAD技術的概念</p><p> 計算機輔助設計(Computer Aided Design簡稱CAD)是
28、指工程技術人員以計算機為工具進行設計活動的全過程:包括資料檢索、方案構思、分析計算、工程繪圖和編制技術文件等,是隨著計算機、外圍設備及軟件的發(fā)展而形成的一門綜合性很高的新技術。廣義的CAD包括設計和分析兩個方面。設計是指構造零件的幾何形狀、選擇零件的材料,以及為保證整個設計的統(tǒng)一性而對零件提出的功能要求等。分析是指運用數(shù)學造型技術,如有限元分析法、優(yōu)化設計方法等,從理論上對產(chǎn)品的性能進行模擬、分析和測試,以保證產(chǎn)品設計的可靠性。<
29、/p><p> CAD技術本身是一項綜合性的、技術復雜的系統(tǒng)工程,涉及許多學科領域,如計算機科學和工程、計算數(shù)學、幾何造型、計算機圖形顯示、數(shù)據(jù)結(jié)構和數(shù)據(jù)庫、仿真、數(shù)控、機器人和人工智能學科和技術以及與產(chǎn)品設計和制造有關的專業(yè)知識等。CAD技術可以承擔產(chǎn)品設計中的零件設計、裝配設計、模具設計、機構設計與分析、有限元分析、數(shù)控加工與仿真等環(huán)節(jié)的關鍵工作[3],與傳統(tǒng)的設計內(nèi)容和方式相比產(chǎn)生了根本性的變革。</p
30、><p> 如今,CAD技術己廣泛應用于航空航天、電子、機械、建筑、輕紡、化工、交通、影視、教育等各個領域,并取得了明顯的經(jīng)濟效益和社會效益。</p><p> 1.2.2 CAD技術在機械工業(yè)中的應用</p><p> CAD技術在機械工業(yè)中的應用已經(jīng)越來越廣泛,其主要應用有以下幾方面[6]:</p><p> 1.二維、三維繪圖這是最
31、普遍最廣泛的一種應用,用來代替?zhèn)鹘y(tǒng)的手工繪圖;</p><p> 2.圖形及符號庫將復雜圖形分解成許多簡單圖形及符號,先存入庫中,需要時調(diào)出,經(jīng)編輯修改后插入到另一圖形中去,從而使圖形設計工作更加方便;</p><p> 3.參數(shù)化設計標準化或系列化的零部件具有相似結(jié)構,但尺寸需經(jīng)常改變,采用參數(shù)化設計的方法建立圖形程序庫,調(diào)出后賦以一組新的尺寸參數(shù)就能生成一個新的圖形;</p&
32、gt;<p> 4.三維造型采用實體造型設計零部件結(jié)構,經(jīng)消隱及著色等處理后顯示物體的真實形狀,還可作裝配及運動仿真,以便觀察有無干涉等;</p><p> 5.工程分析常見的有有限元分析、優(yōu)化設計、運動學及動力學分析等。此外針對某個具體設計對象還有它們自己的工程分析問題,如注塑模設計中要進行塑流分析、冷卻分析、變形分析等;</p><p> 6.設計文檔或生成報表許多
33、技術屬性需要制成文檔說明或輸出報表,有些設計參數(shù)需要用直方圖、餅圖或曲線圖等來表達。</p><p> 1.2.3 CAD技術的發(fā)展現(xiàn)狀及發(fā)展趨勢</p><p> CAD概念是50年代末由麻省理工學院首次明確提出的,60年代研制成功試驗CAD系統(tǒng)、70年代,CAD開始實用化,從二維的電路設計發(fā)展到三維的飛機、造船、汽車等設計。80年代,由于解決了三維幾何造型、仿真等問題,應用范圍不斷
34、擴大,大中型系統(tǒng)向微型化發(fā)展,出現(xiàn)了應用極廣的微機CAD系統(tǒng)和性能優(yōu)良的工作站CAD系統(tǒng)。90年代后隨著CAD技術的發(fā)展,其系統(tǒng)性能提高、價格降低,CAD開始在設計領域全面普及,成為必不可少的設計工具。CAD之所以在短短的30年內(nèi)發(fā)展如此迅速,是因為它是人類在20世紀取得的重大科技成就之一,它幾乎推動了一切領域的設計革命,徹底改變了傳統(tǒng)的手工設計繪圖方式,極大的提高了產(chǎn)品開發(fā)的速度和精度,使得科技人員的智慧和能力得到了延伸。應用CAD技
35、術來進行產(chǎn)品設計,能使設計、生產(chǎn)、維修工作快速而高效地進行,所帶來的經(jīng)濟效益是十分明顯的。CAD技術的發(fā)展與應用水平已成為和衡量一個國家的科學技術現(xiàn)代化和工業(yè)現(xiàn)代化的重要標志。</p><p> 近幾年來,隨著計算機技術的飛速發(fā)展,CAD 技術己經(jīng)由發(fā)達國家向發(fā)展中國家擴展,而且發(fā)展的勢頭非常迅猛。因為當今世界工業(yè)產(chǎn)品的市場競爭,歸根結(jié)底是設計手段和設計水平的競爭,發(fā)展中國家的工業(yè)產(chǎn)品要在世界市場占有一席之地,
36、就必須采用CAD)技術。</p><p> 我國CAD技術研究和開發(fā)起步相對較晚,自80年代開始,CAD技術應用工作才逐步得到了開展。國家逐步認識到開展CAD應用工程的必要性和可靠性,并在全國各個行業(yè)大力推廣CAD技術,同時展開CAD技術的開發(fā)和研制工作,如清華大學和華中理工大學共同開發(fā)的高華CAD,中科院軟件工程研制中心的PICAD[4]等。</p><p> CAD技術隨著不段研究
37、、開發(fā)和廣泛使用,工業(yè)生產(chǎn)也對CAD技術提出了越來越高的新要求。CAD技術將朝著集成化、智能化和標準化的方向發(fā)展。</p><p> 1.3 本論文主要工作</p><p> 采用Pro/ENGINEER提供的二次開發(fā)工具Pro/TOOLKIT用編程方法,實現(xiàn)帶輪參數(shù)化設計。開發(fā)時,需建立實例帶輪模型庫。在輸入驅(qū)動參數(shù)后,通過程序的調(diào)用,系統(tǒng)從庫中尋找該參數(shù)驅(qū)動下的帶輪模型,以實現(xiàn)不同
38、基準直徑、基準寬度、輪槽數(shù)、配合軸直徑等參數(shù)的帶輪設計,從而提高設計的效率和質(zhì)量。</p><p> 用Pro/TOOLKIT可以開發(fā)出具有Pro/ENGINEER風格的對話框,能向用戶提供人機交互界面,進行簡單的人機交互。但是目前這種方法還不太完善,功能有限,而且對話框資源編寫起來繁瑣,一個簡單的對話框資源就會用去很多的時間,對于稍微復雜的對話框更是無能為力。MFC具有強大的編制對話框能力,編制簡單,但Pro
39、/TOOLKIT并不提供對MFC的支持,所以在Pro/TOOLKIT中并不能直接應用MFC對話框。本文通過動態(tài)連接庫開發(fā)了Pro/TOOLKIT與MFC的接口,利用MFC強大的功能實現(xiàn)對話框的開發(fā),在Pro/ENGINEER環(huán)境中生成MFC對話框,方便、自然、快捷地進行人機交互。</p><p> 因此本文主要解決好以下幾方面工作:</p><p> 1.結(jié)構設計:通過優(yōu)化方案數(shù)據(jù),確
40、定最佳帶輪設計的驅(qū)動尺寸,然后利用驅(qū)動尺寸,根據(jù)設計手冊相關公式及數(shù)據(jù)確定帶輪的基本結(jié)構尺寸;</p><p> 2. 結(jié)構設計:在Pro/Engineer WILDFIRE環(huán)境下,建立帶輪模型庫,并給模型零件設置編碼參數(shù);</p><p> 3.編寫VC和Pro/E接口程序:以VC++6.0集成開發(fā)環(huán)境下編寫調(diào)用Pro/E的接口程序,調(diào)用Pro/E二次開發(fā)包Pro/TOOLKIT來實
41、現(xiàn)系統(tǒng)的參數(shù)傳遞和修改;</p><p> 4.利用Pro/ENGINEER WILDFIRE三維參數(shù)化設計平臺上利用Pro/TOOLKIT開發(fā)工具添加用戶菜單,調(diào)用模型庫,實現(xiàn)帶輪模型的參數(shù)化顯示、修改和分析。</p><p><b> 系統(tǒng)開發(fā)環(huán)境分析</b></p><p> 本文以Pro/ ENGINEER 2.0為開發(fā)平臺,利用
42、其二次開發(fā)工具包Pro/TOOLKIT,以VC++6.0為編程語言,以動態(tài)鏈接庫的方式對帶輪進行了參數(shù)化設計。在這個過程中我們利用的設計軟件是Pro/ ENGINEER 2.0和VC++6.0,二次開發(fā)的工具是Pro/TOOLKIT工具包,通信方式是動態(tài)鏈接庫的方式,程序設計的方法的面向?qū)ο蠓椒āK栽谠O計進行之前,我們必須對這些方法和環(huán)境進行必要的了解。</p><p> Visual C++基礎知識<
43、/p><p> 2.1.1 Visual C++簡介</p><p> Visual C++是Microsoft公司推出的基于C/C++的集成開發(fā)工具,自誕生以來它一直是Windows環(huán)境下最主要的應用開發(fā)系統(tǒng)之一。它不僅是C++語言的集成開發(fā)環(huán)境,而且與Win32緊密相連[5],所以,利用Visual C++開發(fā)系統(tǒng)可以完成各種各樣的應用程序開發(fā),實現(xiàn)從底層軟件直到上層直接面向用戶的軟件
44、,而且Visual C++強大的調(diào)試功能也為大型復雜軟件的開發(fā)提供了有效的排錯手段。</p><p> 2.1.2 MFC簡介</p><p> MFC是用來編寫Windows應用程序的C++類庫,該類庫集以層次結(jié)構組織起來,其中封裝了大部分Windows API函數(shù)和Windows控件,它所包含的功能設計到整個Windows操作系統(tǒng)。MFC不僅為用戶提供了Windows圖形環(huán)境下應用
45、程序的框架,而且還提供了創(chuàng)建應用程序的組件[6]。使用MFC類庫和Visual C++提供的高度可視的應用程序開發(fā)工具,可使應用程序開發(fā)變得更簡單,開發(fā)周期極大地縮短,提高代碼的可靠性和可重用性。</p><p> MFC封裝了一個程序操作的每一個方面。在MFC程序中,程序員很少需要直接調(diào)用Windows API函數(shù),而是通過定義MFC類的對象并通過調(diào)用對象的成員函數(shù)來實現(xiàn)相應的功能。</p>&
46、lt;p> 2.1.3 VC++動態(tài)鏈接庫</p><p><b> COM標準及庫文件</b></p><p> 為了實現(xiàn)按組件化程序設計思想把復雜的應用程序設計成一些小的、功能單一的組件模塊,并且它們可以運行在不同的機器上等要求,微軟提出了COM(Component Object Model)標準。COM組件技術的核心思想是將軟件實現(xiàn)與接口的分離,減少
47、與系統(tǒng)其其他部分的耦合程度[7]。接口部分提供所定義功能的使用方法,所有能夠獲得接口信息的應用程序都能通過接口使用組件提供的功能。COM的主要實現(xiàn)方式之一就是庫文件,有兩種庫文件形式:靜態(tài)鏈接庫和動態(tài)鏈接庫。靜態(tài)鏈接庫將目標代碼嵌入到應用程序中,應用程序可獨立運行,而動態(tài)鏈接庫還必須給應用程序提供動態(tài)鏈接庫文件。</p><p><b> 動態(tài)鏈接庫</b></p><
48、p> 動態(tài)鏈接庫是一個可執(zhí)行模塊,其包含的函數(shù)可以有Windows應用程序調(diào)用以執(zhí)行一些功能。動態(tài)鏈接庫還包含了其所提供函數(shù)的目標代碼。程序在運行中連接動態(tài)鏈接庫中的函數(shù)時,簡單地記錄了函數(shù)的位置信息,這就可以讓程序在執(zhí)行時很快找到執(zhí)行代碼。只在執(zhí)行時才做到真正的連接。提供函數(shù)在動態(tài)鏈接庫中位置的信息存放在一個獨立的后綴為.lib的文件中。</p><p> 2.2 面向?qū)ο蟮幕A知識</p>
49、;<p> 2.2.1面向?qū)ο蠓椒ê喗?lt;/p><p> 首先將數(shù)據(jù)及對數(shù)據(jù)的操作方法放在一起,作為一個相互依存、不可分割的整體----對象。對同類型對象抽象出其共性,形成類。類中的大多數(shù)數(shù)據(jù)只能用本類的方法進行處理。類通過一個簡單的外部接口與外界發(fā)生關系,對象與對象之間通過消息進行通信。這就是面向?qū)ο蟮姆椒ā?lt;/p><p> 2.2.2 面向?qū)ο蠓椒ㄖ谢靖拍?lt
50、;/p><p> 面向?qū)ο蟮暮诵氖菙?shù)據(jù)(結(jié)構)抽象及操作行為的抽象,封裝機制使二者集為一體,形成類或?qū)ο骩8]。繼承是面向?qū)ο蟮牧硪粋€抽象手段,反映“一般—特殊“關系抽象,通過子類對父類的繼承,可使子類享有父類的數(shù)據(jù)及操作行為,子類也可定義新的數(shù)據(jù)或新的操作或覆蓋原有操作,這種性質(zhì)叫做多態(tài)性。</p><p><b> 對象</b></p><p&
51、gt; 面向?qū)ο蠓椒ㄖ械膶ο笫窍到y(tǒng)中用來描述客觀事物的一個實體,它是構成系統(tǒng)的一個基本單位。屬性是用來描述對象靜態(tài)特征的數(shù)據(jù)項,行為是用來描述動態(tài)特征的操作序列。</p><p><b> 類</b></p><p> 面向?qū)ο蠓椒ㄖ械念愂侵妇哂邢嗤瑢傩院头盏囊唤M對象的集合。它為屬于該類的全部對象提供抽象描述,其內(nèi)部包括屬性和行為兩個主要部分。類與對象的關系猶
52、如模具與鑄件之間的關系,一個屬于某類的對象稱為該類的一個事例。</p><p><b> 封裝</b></p><p> 封裝是面向?qū)ο蠓椒ㄖ械囊粋€重要原則,就是把對象的屬性和服務結(jié)合成意義個獨立的系統(tǒng)單位,并盡可能隱藏對象的內(nèi)部細節(jié)。這一種有兩個含義:第一個含義是把對象的全部屬性和服務結(jié)合在一起,形成一個不可分割的獨立單位;第二個含義也稱為“信息隱藏”,即盡可能
53、隱藏對性的內(nèi)部細節(jié),對外形成一個邊界(或者說一道屏障),只保留有限的對外接口使之與外部發(fā)生聯(lián)系。</p><p><b> 繼承</b></p><p> 特殊類的對象擁有其一般類的全部屬性和服務,稱為特殊類對一般類的繼承。繼承是面向?qū)ο蠹夹g能夠提高軟件開發(fā)效率的重要原因之一。它可以將開發(fā)好的類作為構件放到構件庫中,在開發(fā)新系統(tǒng)時便可以直接使用或繼承使用。<
54、/p><p><b> 多態(tài)性</b></p><p> 對象的多態(tài)性是指在一般類中定義的屬性或服務被特殊類繼承之后,可以具有不同的數(shù)據(jù)類型或表現(xiàn)出不同的行為。這使得同一個屬性或服務在一般類及其各個特殊類中具有不同的語義。</p><p> 2.2.3 面向?qū)ο蟮能浖_發(fā)技術</p><p> 面向?qū)ο髲母旧细淖兞?/p>
55、傳統(tǒng)的軟件設計思想,面向?qū)ο蟮拈_發(fā)是一種系統(tǒng)分解基于對象概念的軟件設計方法。目前,面向?qū)ο蠹夹g趨向于成為一種集分析(OOA)、設計(OOD)、編程(OOP)于一體的系統(tǒng)化技術[9]。</p><p> 使用面向?qū)ο蟮姆椒ǎ梢允巩a(chǎn)品設計在較高的層次上進行,在實際設計過程中,經(jīng)常有大量的反復使用的結(jié)構,這些結(jié)構在拓撲形狀基本上已經(jīng)確定,而只是在具體的尺寸上有所變化,因此,面向?qū)ο蟮母拍钍菢O為有利的。結(jié)合本文,我們
56、也不難發(fā)現(xiàn),帶輪的設計正好符合這一特點,所以,我們選擇面向?qū)ο蟮脑O計方法是非常合適的。</p><p> 面向?qū)ο蟪绦蛟O計是一種試圖模仿人們建立現(xiàn)實世界模型的程序設計方法,它的著眼點是數(shù)據(jù)而不是功能。它的設計思路是從確定表征客觀實體的對象開始,建立對象之間的層次結(jié)構,確定反映對象狀態(tài)的屬性及施加于這些屬性之上的操作,對象之間通過消息互相作用和聯(lián)系,從而形成軟件結(jié)構。這種方式符合人們對客觀世界的認識過程。按此方法
57、開發(fā)軟件可克服傳統(tǒng)CAD的一些缺陷。</p><p> 面向?qū)ο蠓椒ú捎脤ο蠼S^點,其主要思想[10]如下: (1)客觀世界是由許許多多的對象所組成的,每種對象都有其自身的狀態(tài)和改變其狀態(tài)的運動規(guī)律;(2)面向?qū)ο罄谩俺橄髷?shù)據(jù)類型”對客觀世界進行擬合,在對象(模塊)中,用數(shù)據(jù)來描述現(xiàn)實世界中對象的狀態(tài),用處理過程(操作)來描述其狀態(tài)的改變規(guī)律,相似的對象抽象為類,類由數(shù)據(jù)和操作組成,對象由類來生成并自動擁有
58、類所定義的特性;(3)對象之間相互通訊的唯一方式是消息傳遞。換句話說,系統(tǒng)內(nèi)各要素(對象)之間的聯(lián)系是通過消息通訊方式進行的,這不僅真實地模擬了現(xiàn)實世界,而且使得軟件系統(tǒng)呈柔性,是真正的藕合系統(tǒng)。</p><p> 面向?qū)ο蠓椒ㄒ宰R別“對象”和“對象的功能”為出發(fā)點,通過把問題域作為一系列相互作用的實體進行建模,把整個開發(fā)階段的每個過程看作是互相交迭的不斷深化的過程,從而使得問題空間和求解空間保持一致。相比較而
59、言,“對</p><p> 象”要穩(wěn)定得多,即使個別對象發(fā)生變化,對全局造成的影響也小得多,因此,用面向?qū)ο蟮姆椒ㄩ_發(fā)出的軟件,系統(tǒng)易于擴充和維護。</p><p> Pro/ENGINEER基礎知識</p><p> 2.3.1 Pro/ENGINEER簡介</p><p> Pro/Engineer系統(tǒng)是美國PTC公司的三維CAD
60、/CAM系統(tǒng),它提出了真正的全相關性(任何地方的修改都會 自動反映到所有相關地方 )、單一的數(shù)據(jù)庫(整個Pro/Engineer系統(tǒng)建立在統(tǒng)一的數(shù)據(jù)庫上,具有完整而統(tǒng)一的模型,提供了所謂雙向關聯(lián)性的功能,符合現(xiàn)代產(chǎn)品中“并行工程”概念[11],為產(chǎn)品的同開發(fā)提供了可能)、基于特征的參數(shù)化造型(Pro/Engineer使對象特征成為產(chǎn)品幾何模型的構造要素)等概念,已成為當今世界機械領域的新標準。</p><p>
61、 另外,Pro/ENGINEER目前有80多個專用模板,涉及工業(yè)設計、機械設計、功能仿真、加工制造等方面,為用戶提供全套解決方案。同時,Pro/ENGINEER系統(tǒng)用戶界面簡潔,概念清晰,符合工程人員的設計思想與習慣。整個系統(tǒng)建立在統(tǒng)一的數(shù)據(jù)庫上,具有完整而統(tǒng)一的模型。又Pro/ENGINEER建立在工作站上,系統(tǒng)獨立于硬件,便于移植。更重要的是它還具有開放的體系結(jié)構和優(yōu)秀的二次開發(fā)工具,并且參數(shù)化設計是其最重要的特征。這里將主要介紹P
62、ro/ENGINEER的主要特征[12]。</p><p> 1.3D實體模型(Solid model)</p><p> 3D實體模型除了可以將用戶的設計思想以最真實的模型在計算機上表現(xiàn)之外,借助于系統(tǒng)參數(shù)(System parameters),用戶還可以隨時計算出產(chǎn)品的體積、面積、重心、慣性大小等,以了解產(chǎn)品的真實性,并補足傳統(tǒng)的面結(jié)構、線結(jié)構的不足。用戶在產(chǎn)品設計過程中,可以隨時
63、掌握以上情況,設計物理參數(shù),并減少許多人為計算時間。</p><p> 2.單一數(shù)據(jù)庫(Singled atabase)</p><p> Pro/ENGINEER可隨時修改由3D實體模型產(chǎn)生2D工程圖,而且自動標注工程圖尺寸。不論在3D還是2D圖形上作尺寸修改,其相關的2D圖形或者3D實體模型均自動修改,同時組合、制造等相關設計也會自動修改,這樣可確保數(shù)據(jù)的正確性,并避免反復修正的耗
64、時性。由于采用單一數(shù)據(jù)庫,提供了所謂雙向關聯(lián)性的功能,這種功能也正符合了現(xiàn)代產(chǎn)業(yè)中所謂的同步工程(Concurrent engineering).</p><p> 3.以特征作為設計的單位(Feature-based design)</p><p> Pro/ENGINEER以最自然的思考方式從事設計工作,如孔(Hole),開槽(Slot)、倒圓角(Round)等均被視為零件設計的基
65、本特征,可隨時對特征做合理、不違反JL何的順序調(diào)整(Reorder)、插入(Insert),刪除(Delete)、重新定義(Redefine)等修正動作。</p><p> 4.參數(shù)化設計(Parametric design)</p><p> 參數(shù)化設計技術將在后面2.3.3中作詳細介紹,在這里將就不做具體講解了。正因為Pro/Engineer有了以上優(yōu)秀的特征,該軟件越來越廣泛地用
66、于機械、汽車、航天、電子和工程機械等行業(yè),是當今世界上應用最廣泛的三維CAD軟件之一。</p><p> 2.3.2 Pro/TOOLKIT基礎知識</p><p> (1)Pro/Toolkit簡介</p><p> Pro/Toolkit是PTC公司為Pro/Engineer軟件提供的開發(fā)工具包,即應用程序</p><p> 接口
67、(API)。其主要目的是讓用戶或第三方通過C程序代碼擴充Pro/Engineer</p><p> 系統(tǒng)的功能,開發(fā)基于Pro/Engineer系統(tǒng)的應用程序模塊,從而滿足用戶的特殊要求。它提供了大量的C語言庫函數(shù),能夠使外部應用程序(客戶應用程序)安全有效地訪問Pro/Enginee的數(shù)據(jù)庫和應用程序[13]。通過和第三方能夠Pro/Engineer系統(tǒng)中添加所需要的功能。不僅如此,還可以利用Pro/Tool
68、kit提供的UI對話框、菜單以及VC的可視化界面技術,設計出方便實用的人機界面,從而大大提高系統(tǒng)的使用效率。</p><p> Pro/Toolkit工具包提供了開發(fā)Pro/Engineer所需的函數(shù)庫文件和頭文件,使用戶編寫的應用程序能夠完全地控制和訪問Pro/Engineer,并可以實現(xiàn)應用程序模塊與Pro/Engineer系統(tǒng)的無縫集成。</p><p> Pro /Toolki
69、t應用程序有兩種工作模式,分別是同步模式和異步模式。同步模式又有兩種形式,即動態(tài)連接庫模式(DLL模式)和多進程模式,分述如下:動態(tài)連接模式是將Pro/Toolkit應用程序集成到Pro/Engineer中的標準方法。用戶編譯C應用程序,與Pro/Toolkit庫連接,這種方法又稱為DLL模式。DLL模式具有代碼簡單、執(zhí)行速度快等優(yōu)點,所以本文選擇該模式作為Pro /Toolkit開發(fā)發(fā)應用程序工作模式。</p><
70、p> ?。?)Pro/Toolkit的開發(fā)</p><p> Pro/Toolkit應用程序開發(fā)采用目前最先進的面向?qū)ο蠹夹g的程序開發(fā)方法。它能直接利用VC++6.0的應用程序設計向?qū)Ш皖愊驅(qū)нM行程序的設計、創(chuàng)建和調(diào)試。Pro/Toolkit典型程序開發(fā)包括源程序(Pro/Toolkit C程序源程序、菜單資源文件、窗口信息資源文件、對話框資源文件等)的編寫、源程序的編譯和連接,參數(shù)化模板庫的建立、注冊文
71、件及程序的注冊和運行。Pro/Toolkit典型開發(fā)結(jié)構如圖1所示。</p><p><b> 。</b></p><p> 圖1:Pro/Toolkit典型開發(fā)結(jié)構圖</p><p> 2.3.3 參數(shù)化設計技術</p><p><b> 參數(shù)化設計的概念</b></p>&
72、lt;p> 參數(shù)化設計(也叫尺寸驅(qū)動,Dimension—Driven)是目前CAD應用技術中最重要的技術之一,作為產(chǎn)品建模的一個重要手段,在系列化產(chǎn)品設計中得到較好的應用。它是以約束來表達產(chǎn)品模型的形狀特征,以一組參數(shù)來控制設計結(jié)果,從而能通過變換設計參數(shù)來實現(xiàn)產(chǎn)品模型的更改或相似產(chǎn)品模型的創(chuàng)建[14]。Pro/Engineer的參數(shù)化是指將表示零件或組件的形狀和拓撲關系由賦予它們的特征值來控制,這些特征值可能與其它特征值相關
73、聯(lián)。在齒輪、軸等旋轉(zhuǎn)體結(jié)構比較簡單的產(chǎn)品方面基于Pro/Engineer的參數(shù)化得到了很好的應用和推廣 。</p><p> 參數(shù)化設計的實現(xiàn)過程</p><p> 基于Pro/Toolkit三維參數(shù)化設計的開發(fā)方法有兩種:一是應用特征描述法,利用 Pro/Toolkit提供的底層函數(shù)完成特征建模,并建立人機對話框,實現(xiàn)三維參數(shù)化設計,此方法程序設計繁瑣,對于形狀復雜的產(chǎn)品來說,用程序
74、來生成三維模型非常困難。二是采用三維模型與程序控制相結(jié)合的方式,基本過程為在Pro/Engineer環(huán)境下利用交互方式生成三維模型 ,然后在已創(chuàng)建的零件三維模型的基礎上,根據(jù)零件的設計要求建立一組可以完全控制三維模型形狀和大小的設計參數(shù)。</p><p> 文中采用結(jié)合二者的優(yōu)勢來實現(xiàn)參數(shù)化零件設計的二次開發(fā),即采用三維參數(shù)化模型與程序控制相結(jié)合,實現(xiàn)將零件模型用 Pro/Engineer交互方式創(chuàng)建其三維基本
75、模型,建立相應的設計參數(shù)和約束關系,并保存到零部件基本數(shù)據(jù)庫作為基準零部件模型;然后由Pro/Toolkit程序檢索基準零部件模型的設計參數(shù)供用戶編輯修改,最后按照新的設計參數(shù)更新,設計出新的零部件模型,實現(xiàn)快速設計。采用這種方式,可以方便地實現(xiàn)產(chǎn)品的系列化 和變形設計,其實現(xiàn)過程如圖2所示。</p><p> 圖2:基于三維模型的參數(shù)化設計實現(xiàn)過程</p><p> 基于Pro/To
76、olkit二次開發(fā)的參數(shù)化程序設計的基本原理是:采用三維模型與程序控制相結(jié)合的方式,根據(jù)零件或組件的設計要求,建立一組能控制三維模型形狀和拓撲關系的設計參數(shù),參數(shù)化程序通過對零件或組件的設計參數(shù)編程,來實現(xiàn)設計參數(shù)的檢索、修改以及三維模型的再生。有關參數(shù)化設計二次開發(fā)流程[15]請參見圖3。</p><p> 圖3:參數(shù)化設計二次開發(fā)流程圖</p><p> 第三章 帶輪結(jié)構的確定&
77、lt;/p><p><b> 3.1 帶輪簡介</b></p><p> 帶輪作為機械傳動系統(tǒng)中一種常見的傳動件,具有結(jié)構簡單、傳動平穩(wěn)、造價低廉以及緩沖吸振等優(yōu)點,因而被廣泛的應用于各種工農(nóng)業(yè)生產(chǎn)中。</p><p> 帶輪的設計應滿足的要求有:質(zhì)量小;結(jié)構工藝性好;無過大的鑄造內(nèi)應力;質(zhì)量分布均勻,轉(zhuǎn)速高時要經(jīng)過動平衡;輪槽工作要精細加工
78、(表面粗糙度一般應為3.2),以減少帶的磨損;各槽的尺寸和角度應保持一定的精度,以使載荷分布較為均勻[16]。帶輪的輪槽槽型有Y、Z(SPZ)、A(SPA)、B(SPB)、C(SPC)、D和E幾種。這主要決定于帶輪的基準寬度。帶輪的結(jié)構形式主要有以下幾種(見圖4):(a)實心式;(b)腹板式;(c)孔板式;(d)橢圓輪輻式。當帶輪的基準直徑dd ≤2.5d(d為配合軸的直徑)時,可采用實心式;當dd ≤300mm時,可采用腹板式(當D
79、1-d1≥100mm時,可采用孔板式);當dd>300mm時,可采用輪輻式。</p><p> 圖4:帶輪的結(jié)構形式</p><p> 3.2 確定帶輪的基本結(jié)構尺寸</p><p> 3.2.1 帶輪的基本參數(shù)及其意義</p><p><b> (1)輪槽節(jié)寬bd</b></p><p>
80、; V帶輪的輪槽與配用V帶節(jié)寬相等處的槽寬bd</p><p> (2)基準直徑dd </p><p> V帶輪在輪槽節(jié)寬bd處的直徑稱為基準直徑dd。</p><p> 3.2.2 帶輪設計的驅(qū)動尺寸確定及其輸入</p><p> (1)確定帶輪設計的驅(qū)動尺寸</p><p> 在實際生產(chǎn)中,帶輪的設計是
81、根據(jù)帶輪的工作條件和工作場合來進行合適設計的。也就是說在給定工作條件的情況下,自行確定帶輪的相關參數(shù)。而帶輪的工作條件的信息主要有以下幾個:電動機的型號、額定功率、轉(zhuǎn)速、傳動比以及工作運轉(zhuǎn)時間。我們根據(jù)以上參數(shù)可以由設計經(jīng)驗和計算公式可以得到傳動帶的帶型(帶輪的槽型)、主從動帶輪的基準直徑dd、帶輪配合軸的直徑d以及帶的根數(shù)(帶輪的輪槽數(shù)z)。在知道以上參數(shù)的情況下,我們再進行的帶輪的結(jié)構設計。又由于在進行帶輪參數(shù)化設計過程中,為了保證
82、我們程序設計的簡單和方便并能夠識別,我們將帶輪的槽型用帶輪的基準寬度來表示具有同樣的效果。因為帶輪我每一個槽型都對應于一個固定的基準寬度bd。</p><p> 結(jié)合以上的分析,我們將帶輪的基準寬度bd、基準直徑dd、輪槽數(shù)z和配合軸的直徑d作為帶輪設計的驅(qū)動參數(shù)。</p><p><b> ?。?)參數(shù)的輸入</b></p><p> 參
83、數(shù)化設計的運行前需要在人機交互界面上輸入一定參數(shù),才可以得到其他結(jié)構尺寸和三維實體結(jié)構圖,這個過程我們可以稱之為參數(shù)驅(qū)動[17]。對于輸入的參數(shù)我們稱之為驅(qū)動參數(shù)。程序的運行就是將這些參數(shù)作為自變量經(jīng)過一系列運算得到其他的結(jié)構尺寸。結(jié)合帶輪的設計過程,我們前面已經(jīng)確定其驅(qū)動尺寸有四個。這四個尺寸就是我們在人機交互界面上需要輸入的參數(shù)。四個參數(shù)的數(shù)型及位數(shù)必須滿足一定的要求才可能使設計存在意義,也就是說也只有符合條件的參數(shù)才會被系統(tǒng)所識別
84、,具體參數(shù)條件參見表1。</p><p><b> 表1:基本輸入?yún)?shù)</b></p><p> 3.2.3 確定帶輪的結(jié)構尺寸</p><p> 帶輪的結(jié)構尺寸主要包括兩部分:帶輪的輪槽尺寸、帶輪的基本外形尺寸和鍵槽的配合尺寸。</p><p> 我們將由前面確定的四個基本驅(qū)動參數(shù)來確定帶輪的所有外形尺寸。&l
85、t;/p><p><b> 確定帶輪的輪槽尺寸</b></p><p> 我們要確定的輪槽結(jié)構尺寸及其意義見圖5。輪槽尺寸主要有基準寬度bd、基準線上槽深ha、基準線下槽深hf、槽間距e、槽邊距f、輪緣厚?、輪槽角φ等。它們都可以根據(jù)表2由基準寬度來確定[18]。</p><p><b> 圖5:輪槽結(jié)構圖</b><
86、;/p><p> 表2:基準帶寬制V帶輪輪槽尺寸 mm (GB/T 13575.1-92)</p><p><b> 確定帶輪的外型尺寸</b></p><p> 實心式帶輪的結(jié)構圖如圖6所示,由圖我們可以知道要確定的實心式帶輪外形尺寸主要有:帶輪的外徑直徑da、基準直徑dd、帶輪輪緣寬B、輪轂孔直徑d、輪毅長L和端面直徑d1。其中基準直徑d
87、d和輪轂孔直徑d作為驅(qū)動參數(shù)是已知的,那么確定其它參數(shù)的計算公式如下:</p><p> B=(z-1)e+2f;</p><p> d1=(1.8~2.0)d;</p><p> L=(1.5~2.0)d;</p><p> da=dd + 2ha;</p><p> 圖6:實心帶輪結(jié)構圖</p>
88、;<p> 其中,又為了使我們的計算更加方便快捷,帶輪的外徑可以由附表1根據(jù)基準直徑的值和槽型對應查得;輪緣寬B和輪轂長L也可以根據(jù)GB10412-89查得。例如:若帶輪的槽型為Z、基準直徑為80mm、輪槽數(shù)為3,則可查得其外徑da=84mm、輪緣寬為B=40mm和輪轂長為L=40mm。那么帶輪的所有參數(shù)都可以根據(jù)驅(qū)動參數(shù)進行相關計算查表得到了。</p><p><b> 確定帶輪的鍵
89、槽尺寸</b></p><p> 帶輪的鍵槽尺寸主要是根據(jù)輪轂孔尺寸來查閱國家標準來確定[19]。其結(jié)構及相關參數(shù)確定見附表2。</p><p><b> ?。?)小結(jié)</b></p><p> 根據(jù)以上分析,我們可以發(fā)現(xiàn)根據(jù)前面所選擇的的四個驅(qū)動參數(shù)可以得到帶輪的所有結(jié)構尺寸,因此選擇他們作為驅(qū)動參數(shù)是滿足設計要求的。這四個驅(qū)
90、動尺寸為:帶輪的輪槽數(shù)z、帶輪的基準寬度、帶輪的基準直徑dd和帶輪配合軸的直徑d。</p><p> 參數(shù)化設計的方法和步驟</p><p> 4.1 Pro/TOOKIT的安裝</p><p> Pro/TOOKIT工具包是隨Pro/ENGINEER Wildfire安裝盤一起提供的,所以不需要專門購買。當用Pro/SETUP安裝Pro/ENGINEER W
91、ildfire時,其中有一個可選項“API Tookits”。它包括Pro/TOOKIT、Pro/Web.lib和Pro/J。link。選擇“Pro/TOOKIT”選項,在Pro/ENGINEER安裝目錄下自動創(chuàng)建子目錄Pro/TOOKIT。</p><p> Pro/TOOKIT包含了全部頭文件、庫文件、應用程序示例等。當中有四個子目錄:\i486_nt、\include、\protk_appls和prot
92、k.doc。頭文件位于\include目錄。庫文件位于\i486_nt目錄[20]。這兩種類型文件是用VC++開發(fā)Pro/ENGINEER應用程序必不可少的支持文件。</p><p> 4.2 VC.net環(huán)境設置</p><p> VC的集成開發(fā)環(huán)境采用工程(PROJECT)來管理所有C++源程序、頭文件、庫文件和各種資源,程序的設計、編譯、連接和調(diào)試均十分方便。VC作為Pro/TO
93、OLKIT開發(fā)應用程序工具時需要進行相應的環(huán)境設置。</p><p> 4.2.1 創(chuàng)建DLL工程</p><p> 啟動VC++,點擊菜單欄中的“文件”按鈕,在下拉菜單中選擇“新建”。這時會彈出“新建”對話框,點擊“工程”選項,選擇 MFC AppWizard(dll)方式。 指定工程名稱及存放路徑。 然后點擊下面的“確定”按鈕,后面的接受缺省設置。那么我們就利用VC向?qū)陆ㄒ粋€共享
94、MFC的常規(guī)動態(tài)鏈接庫框架工程。該框架提供建立DLL應用程序所需的必要文件支持,這是一個空的框架,不能實現(xiàn)任何功能,主要是為了滿足Windows操作系統(tǒng)要求。</p><p> 4.2.2 設置包含頭文件</p><p> 在VC++中菜單欄中的“工具”里點擊“選擇”按鈕。在彈出的“選擇”對話框里點擊“目錄”,選擇“Win32”平臺,“顯示目錄為”中選擇“include file”,“
95、路徑”選擇“C:\PROGRAM FILES\PROEWILDFIRE\PROTOOLKIT\INCLUDES”。然后點擊“確定”按鈕。</p><p> 4.2.3設置庫文件環(huán)境</p><p> 在VC++中菜單欄中的“工程”中選擇“設置”,彈出“Project Settings”對話框中左邊的”Settings For”中選擇“Win32 Unicode Release”,在右邊
96、按鈕中選擇”Link”在“分類”中選擇“Input”,在“對象/庫模塊”中輸入:protk_dll.lib prodev_dll.lib mpr.lib wsock32.lib,設置 Ignore libraries: msvcrt.lib 然后點擊“確定”按鈕。</p><p> 4.2.4設置庫文件路徑</p><p> 在VC++中菜單欄中的“工具”里點擊“選擇”按鈕。在彈出的
97、“選擇”對話框里點擊“目錄”,選擇“Win32”平臺,“顯示目錄為”選擇“Library files”, “路徑”選擇C:\PROGRAM FILES\PROWILDFIRRE\PROTOOLKIT\1486 NT\OBJ”。然后點擊“確定”按鈕。</p><p> 通過在這個DLL工程界面中選擇FileView,我們可以看到打開VC應用程序向?qū)ё詣由傻某绦蛭募C應用程序設計向?qū)г贔ileView中自動加
98、入了ReadMe、StdAfx.cpp和以工程文件名為前綴的cpp源文件、def模塊定義文件以及rc資源文件等。</p><p> 那么,經(jīng)過以上的操作我們就完成了Pro/TOOLKIT二次開發(fā)環(huán)境下的VC的環(huán)境設置,也就使其符合創(chuàng)建Pro/TOOLKIT應用程序的基本條件。</p><p> 4.3 Pro/TOOLKIT應用程序設計-----編寫源文件</p><
99、;p> 使用VC向?qū)蒑FC DLL工程并完成環(huán)境設置之后,必須添加必要的函數(shù)代碼、增加新的CPP源程序以及新的資源,才可以構成一個完整的Pro/TOOLKIT應用程序體系,這些文件就組成了源文件,也就是與工程文件名同名的CPP文件。源文件包括資源文件和程序源文件[21]。</p><p> 4.3.1 編寫資源文件</p><p> 程序中用到的菜單信息資源文件應保存在PT
100、C目錄下的text\usascii中。 因此我們在text下添加usascii子文件夾,同時創(chuàng)建usermsg.txt文件,它是通過記事本編寫的文件格式文件。4行為一組,每組對應一個菜單項。這個文件就是帶輪參數(shù)化設計的菜單資源文件,內(nèi)容如下:</p><p> USER Menu0 </p><p><b> 參數(shù)化設計</b></p><p
101、><b> # </b></p><p><b> # </b></p><p> USER Menu1 </p><p><b> 帶輪設計</b></p><p><b> # </b></p><p>
102、<b> # </b></p><p> USER Menu1 help </p><p><b> 參數(shù)化設計幫助</b></p><p><b> # </b></p><p><b> # </b></p><p
103、> USER Menu2 help </p><p><b> 帶輪設計幫助</b></p><p><b> # </b></p><p><b> # 2.5</b></p><p> 4.3.2 編寫程序源文件主框架</p><p
104、> Pro/TOOLKIT應用程序源文件整體上包含3部分:頭文件部分、用戶初始化函數(shù)和終止函數(shù)。初始函數(shù)user_initialize()和終止函數(shù)user_terminate()是每個同步模式所必須添加的。程序源文件可以將菜單文件載入,實現(xiàn)菜單載入、菜單注冊和動作定義等任務。在本文中,該源文件全部內(nèi)容及其分析見附錄1中的ModelView.cpp程序。</p><p><b> ?。?)添加頭
105、文件</b></p><p> 頭文件包含部分是指應用程序所使用對象函數(shù)的原型部分,每個應用程序都必須包含的頭文件是“Pro/TOOLKIT.h”,因為它定義了因為它定義了值wchar_t,其類型為寬字符串。</p><p> 使用一個特定的Pro/TOOLKIT對象函數(shù)時應包括有其函數(shù)原形的頭文件(.h)文件。否則在編譯該文件時,會出現(xiàn)編譯器不能對函數(shù)參數(shù)類型進行檢查的錯
106、誤。</p><p> ?。?)編寫user.initialize()函數(shù)</p><p> 初始化函數(shù)主要是用來設置需要添加的菜單,以及其它的一些初始值設置,這個函數(shù)相當于C++類的構造函數(shù)或C語言中的main()函數(shù)。user.initialize()函數(shù)在編寫時必須注意到其至少應包含一個Pro/TOOLKIT的API調(diào)用[22]。否則就會導致Pro/TOOLKIT應用程序失敗,且返
107、回PRO_TK_GENERAL_ERROR。典型的定義格式為:</p><p> extern“C”int user_initialize(int argc,char *argv[],char*version,char*build, wchar_t errbuf[])</p><p><b> {</b></p><p> ProErro
108、r status;</p><p> //用戶添加的接口程序部分</p><p><b> ……</b></p><p> return status;</p><p><b> }</b></p><p> 編寫user_terminate()函數(shù)</p&g
109、t;<p> user_terminate()作用是結(jié)束應用程序的執(zhí)行(退出Pro/ENGINEER將終止應用程序的運行)。該函數(shù)由用戶定義,其中可以不執(zhí)行任何動作。</p><p><b> 如下結(jié)構:</b></p><p> user_terminate()</p><p><b> {</b>
110、</p><p><b> }</b></p><p> 添加菜單和菜單響應函數(shù)。</p><p> 菜單響應函數(shù)中需要使用三個函數(shù)[23](ProMenubarMenuAdd、ProCmdAcTi-</p><p> onAdd、ProMenubarmenuPushbuttonAdd),這三個函數(shù)定義了菜單內(nèi)容
111、和菜單動作等。∥為Clytaper加載菜單文件,在Help菜單后ProMenubarMenuAdd</p><p> (("Menu0", "USER Menu0","Help", PRO_B_TRUE, mf));∥在Gear 菜單組中定義新的按鈕按鈕及其響應函數(shù)Taper()ProCmdActionAdd(uiCmdCmdActFn)</p&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 5參數(shù)化繪制帶輪設計畢業(yè)設計說明書.doc
- 帶輪參數(shù)化繪圖設計.doc
- 錐形帶輪注塑模具畢業(yè)設計論文
- 齒輪參數(shù)化設計畢業(yè)設計
- 機械畢業(yè)設計(論文)-基于ug的油缸的參數(shù)化設計【全套設計】
- 畢業(yè)設計(論文)塑料帶輪模流分析及模具設計
- 畢業(yè)設計-齒輪機構參數(shù)化設計
- 基于proe的齒輪類零件參數(shù)化設計畢業(yè)設計(論文)
- 畢業(yè)設計(論文)-骨輪的注射模設計
- 畢業(yè)設計(論文)-基于proe齒輪類零件參數(shù)化設計
- 環(huán)形件軋制工藝的參數(shù)化設計【畢業(yè)設計】
- 錐形帶輪注塑模具畢業(yè)設計
- 錐形帶輪注塑模具畢業(yè)設計
- 基于ug的油缸的參數(shù)化設計【帶參數(shù)化設計文件】
- 機械電子工程畢業(yè)設計-差速器的參數(shù)化設計
- 帶輪的設計與工藝分析畢業(yè)論文
- 減速器參數(shù)化畢業(yè)設計
- 基于ug的油缸的參數(shù)化設計【帶參數(shù)化設計文件】
- autocad二次開發(fā)――參數(shù)化繪制帶輪設計
- 畢業(yè)設計(論文)-帶式壓濾機設計
評論
0/150
提交評論