1.引言
Pro/ENGINEER是PTC公司設計開發(fā)的基于參數(shù)化、特征設計的三維實體造型設計軟件,其強大的功能一直受到業(yè)界用戶的好評。
雖然Pro/ENGINEER的功能強大并且通用性良好,但是在具體使用過程中不可能滿足各種各樣的特定要求,為使軟件能夠滿足特定使用者的多樣化需求,則需在該軟件已有功能的基礎上進行二次開發(fā)。
本文是基于Pro/E Wildfire 4.0版本的設計,PTC公司推薦使用Visual Studio.NET 2005平臺進行開發(fā)。
2.Pro/ENGINEER開發(fā)工具的對比分析
Pro/ENGINEER軟件在提供強大的設計分析與制造功能的同時,也為用戶提供了多種二次開發(fā)工具,常用的方式有Pro/Program(內(nèi)置)、Pro/TOOLKIT、VB以及J-Link等。
在Pro/ENGINEER軟件中,對于每一個模型都有一個Pro/Program,用于記錄模型的主要涉及步驟和參數(shù)列表,其語言結構類似于BASIC高級語言。用戶可以根據(jù)模型的設計要求來編輯該模型的程序,通過運行程序,系統(tǒng)可以通過良好的人機交互的方法來控制系統(tǒng)參數(shù)、特征是否顯示、特征尺寸的大小等。該方式多用來開發(fā)齒輪、鏈輪、蝸輪蝸桿等復雜零件。
VB.NET是完全面向?qū)ο蟮?a target="_blank">編程語言,在它的完全模式下,實現(xiàn)了監(jiān)聽Pro/ENGINEER軟件本身發(fā)出的各種消息的接口,因此也支持調(diào)用Pro/E的函數(shù),向添加菜單、按鈕等。
J-Link是Pro/ENGINEER軟件自帶的基于JAVA語言的二次開發(fā)工具,是一種面向?qū)ο螵毩⒂?a target="_blank">操作系統(tǒng)平臺的應用程序接口,它封裝了許多針對Pro/E底層資源調(diào)動的類庫和程序包,用戶可以使用來擴展Pro/E功能。
Pro/TOOLKIT是PTC公司專門定制的開發(fā)工具包,它提供了應用程序接口,使客戶具有擴展Pro/E功能的能力。Pro/TOOLKIT使用面向?qū)ο箫L格的C語言編程,并且提供了用于底層資源調(diào)用的函數(shù)庫和頭文件,外部應用程序可以通過這些函數(shù)來訪問Pro/E.另外,還可以利用Pro/TOOLKIT提供的UI對話框、菜單以及VC的可視化界面技術,設計出方便、實用、美觀的人機交互界面,從而大大地提高了系統(tǒng)發(fā)的使用效率。
3.Pro/TOOLKIT工作模式的對比分析
Pro/TOOLKIT開發(fā)方式有兩種工作模式:異步模式(Asynchronous)是在不需要啟動Pro/E的情況下,就可以單獨運行Pro/TOOLKIT應用程序的方式。但是相對來說該方式代碼較為復雜,開發(fā)難度大以main()函數(shù)作為Pro/TOOLKIT應用程序的接口函數(shù);同步模式(SynchronousMode)必須與Pro/E軟件同時運行,能達到所見即所得的設計結果,相對開發(fā)比較容易;并且程序執(zhí)行速度較快。在本次開發(fā)過程中,鑒于設計者并非專業(yè)程序設計人員,所以最終采用同步模式進行設計開發(fā),比較容易上手。
在同步設計開發(fā)模式中,又分為動態(tài)鏈接模式(DLL模式)和多進程模式(Multiprocess)兩種。多進程模式主要用于程序開發(fā)階段以便程序的測試,但由于DLL模式運行比較快,所以程序開發(fā)完成后,最后轉(zhuǎn)換為后者。
4.Pro/ENGINEER UI界面設計的對比分析
在本文的零件庫的開發(fā)設計過程中,不僅有菜單的使用,還涉及UI對話框的設計以及零件的可視化表達等內(nèi)容,因此,主要以Pro/Program和Pro/TOOLKIT作為主要對象加以對比分析。
用戶界面對話框(User Interface Dialog Boxes,簡稱UI對話框)是Pro/TOOLKIT提供的一種交互界面設計工具。它能夠按界面的布局編寫對話框資源文件;針對UI對話框的功能編寫相應的控制程序。該方式設計的UI界面和Pro/E的資源、設計風格相一致,人機交互界面風格有連貫性。但是這種利用文本文件設計的方式不能直觀地反映界面的布局,設計、修改和調(diào)試比較困難。
另外采用Visual C++2005.NET與Pro/ENGINEER軟件相匹配,就可以直接使用VC的面向?qū)ο蟮目梢暬勺兂上到y(tǒng),它具有程序框架自動生成、類別管理方便靈活,代碼編寫和界面設計的交互設計,3D控制界面等多種開發(fā)程式。MFC是VC++程序的界面設計開發(fā)方式,實現(xiàn)界面的可視化設計。
本文以直齒圓柱齒輪的參數(shù)界面設計為例,來加以對比分析。
采用Pro/Program方式,只是需要在【工具】菜單的模型【程序】
的頭部,INPUT和END INPUT程序中間添加以下程序:Z NUMBER“請輸入齒輪的齒數(shù)==”
… …就可以通過INPUT SEL列表來選擇需要修改的參數(shù)名稱,并在消息區(qū)根據(jù)提示輸入新的尺寸,完成模型的修改。這種方式實現(xiàn)比較容易,但是人性化設計理念不強。
采用UI對話框方式進行如圖所示的參數(shù)表設計,仍以齒數(shù)為例,則需要的部分程序如下:
可以看出雖然設計的界面更接近于Pro/E常用對話框的風格,但是設計語句較為復雜,實現(xiàn)難度較大。
使用MFC設計的對話框界面則較為容易,只需要使用Dialog對話框編輯器中的Static Text進行文字說明的編寫,使用EditControl建立示例編輯框,即可完成上圖界面的設計工作。需要注意的是,示例編輯框要想進行數(shù)值的傳遞,就必須通過【添加變量】來進行屬性的編輯以及命名。其后的程序修改和調(diào)試工作也相對來說較為容易,為了實現(xiàn)齒數(shù)值得傳遞僅需要一下程序:
通過以上三種方式的對比分析,可以看到利用MFC實現(xiàn)對話框的設計以及參數(shù)的傳遞過程,相對來說比較容易,而且可視化程度高。
5.結論
本文通過市面上常用的Pro/ENGINEER開發(fā)方式入手,對比分析了Pro/Program和Pro/TOOLKIT界面設計方式的不同。從以上分析可以看出,雖然MFC的設計方式不是最簡單易行的設計模式,但是其優(yōu)秀的面向?qū)ο蟮脑O計方式,大大減少了開發(fā)的難度,也為更為復雜的人機交互方式提供了可能。
-
控制系統(tǒng)
+關注
關注
41文章
6780瀏覽量
112157 -
JAVA
+關注
關注
20文章
2989瀏覽量
109599 -
開發(fā)
+關注
關注
0文章
373瀏覽量
41510
發(fā)布評論請先 登錄
請問SigmaStudio圖形開發(fā)工具怎么使用
用xml配置文件的可視化工具實時模擬仿真UI界面功能
pro/engineer wildfire 快速入門教程
ARM開發(fā)工具解讀

圖解android開發(fā)工具
實戰(zhàn)Pro Engineer 2001基礎入門

使用WinForm開發(fā)的UI界面資料合集

利用YOCTO的力量進行Linux操作系統(tǒng)移植項目

Qt Designer中提供的原生界面元素
常用的上位機開發(fā)工具

使用Helium開發(fā)工具包和Cayenne進行GPS跟蹤

Intellij IDEA 開發(fā)工具實例

評論