999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

塑料瓶及其吹塑模具參數化CAD軟件的程序設計

2011-02-09 01:57:08
制造業自動化 2011年4期
關鍵詞:按鈕程序

付 饒

(綿陽職業技術學院,綿陽 621000)

1 選擇應用程序的開發模式和創建方法

所謂的Pro/TOOLKIT應用程序,是指利用Pro/E系統提供的Pro/TOOLKIT工具包的支持,用C語言進行程序設計,采用C編譯器和連接器創建能夠在Pro/E環境運行的可執行程序(文件后綴名為EXE)或動態連接庫程序(文件后綴名為DLL)形式的程序[1]。對于不同的操作系統平臺,在編譯和連接生成Pro/TOOLKIT應用程序時,編譯器選項和所需的系統庫文件通常是不同的。要使Pro/TOOLKIT應用程序在Pro/E環境下正常運行,必須正確設置編譯和連接選項。

1.1 開發模式

用Pro/TOOLKIT開發應用程序有兩種模式:同步模式(Synchronous Mode)和異步模式(Asynchronous Mode)[2]。在著手進行應用程序開發前,必須先選擇采用同步模式還是異步模式。同步模式下,Pro/E根據注冊文件中的信息啟動應用程序,Pro/TOOLKIT應用程序和Pro/E產生各自的進程,程序的控制權在兩個進程之間切換。該應用程序不能夠獨立于Pro/E 而運行。異步模式下,Pro/TOOLKIT應用程序和Pro/E能夠進行各自的操作,在通信方面,異步模式使用遠程調用(Remote Procedure Calls, RPC)方式,程序(含有獨立主函數)能獨立于Pro/E啟動。由于異步模式采用遠程調用,程序運行速度相比同步模式慢很多,整合性也不好,所以,一般基于Pro/E的Pro/TOOLKIT開發采用同步模式。在同步模式下又有兩種開發方式:動態鏈接庫(DLL Mode)和多進程(Multi-process或Spawned Mode)。前者為動態連接庫文件,無自身主程序函數,直接連接于Pro/E進行程序調用。后者為.exe文件,有獨立的主程序和Pro/E進行相連接。一般為了調試方便,開發程序時可以采用多進程模式,在程序完成時,采用動態連接庫以提高程序運行效率[3]。由于本課題的應用程序并不是十分復雜,所以從始至終都采用動態鏈接庫的方式。

1.2 創建方法

創建Pro/TOOLKIT應用程序的方法有兩種,即利用Make文件創建和利用VC向導創建。默認安裝時,在protoolkiti486_ntobj文件火,文件名前綴為Make_的文件為Pro/TOOLKIT工具包提供的Make文件范例。將其擴展名改為.mak,可在VC++(Microsoft Visual C++ 6.0)環境打開該文件,并可直接創建應用程序。但采用Make文件的方法創建Pro/TOOLKIT應用程序必須用手工修改make文件,程序的設計和調試均不方便。另外,由于這種方式無法使用MFC類庫,因而不能充分利用VC++的資源。特別是在人機交互界面設計時不能直接進行對話框的可視化設計。因而直接利用VC++的應用程序設計向導(App Wizard)和類向導(Class Wizard)來進行Pro/TOOLKTT應用程序的設計、創建和調試,無疑是一種更佳選擇[4]。因此,本課題的應用程序利用VC++向導的方式創建。

2 應用程序設計步驟

使用Pro/TOOLKIT開發應用程序包含五個基本步驟:編寫源文件(源代碼文件和資源文件);編譯和連接,生成可執行文件(DLL或EXE文件);注冊Pro/TOOLKIT應用程序;運行應用程序;停止和重啟動應用程序。

2.1 編寫源文件

源文件包括資源文件和C++源代碼文件:資源文件包括菜單資源文件、對話框資源文件和信息文件等;程序源文件是指我們在VC++環境下編寫的C++程序。

2.2 編譯和連接,生成可執行文件

一般需要制作makefile工程文件,可以根據Pro/E自帶的makefile文件修改,由該文件指定庫文件、頭文件、源文件的位置及要生成的EXE文件和DLL文件的名稱等,也可以在VC++ 6.0環境中設定,指定必要庫文件和頭文件的包含目錄,添加必要的庫文件:protk_dll.lib、mpr.lib[5]。完成設置后就可以編譯Pro/TOOLKIT應用程序生成動態鏈接庫文件了。

2.3 注冊Pro/TOOLKIT應用程序

注冊Pro/TOOLKIT應用程序是指將Pro/TOOLKIT應用程序文件的信息提供給Pro/E,為了做到這一點,Pro/E會尋找并讀入Pro/TOOLKIT的注冊文件,該文件是一個文本文件[2]。注冊文件的編寫也要遵從一定的格式。

注冊文件以.dat為后綴,其格式如下:name<應用程序名>

startup<工作模式,exe或d11>exec_ file<可執行文件或動態鏈接庫的位置>text dir<(資源文件、對話框文件、窗口信息文件)的位置>

allow_stop<是否允許終止運行程序>delay_start<手工或自動啟動程序>revision<版本號>end<結束>

可以采用兩種注冊方式,即自動注冊和手動注冊。

自動注冊:自動注冊分為兩種情況:一是必須將注冊文件名取為Protk.dat,并保存于Pro/E的安裝目錄的 ext目錄,或者位于Pro/E的起始位置設定的目錄。二是在Pro/E的config.pro文件設定注冊文件。

手動注冊:選擇Pro/E界面上的Utilities/Auxiliary Applications菜單項,選擇“注冊”按鈕注冊應用程序。注冊成功后選擇“啟動”按鈕運行應用程序。

2.4 運行應用程序

注冊成功后,該程序的名稱出現在輔助應用程序對話框中,且處于未運行狀態,選中該應用程序,單擊“啟動”按鈕,即可運行該應用程序。

2.5 停止和重啟動應用程序

Pro/TOOLKIT支持在Pro/E的運行中停止和重啟動應用程序的功能,該功能在應用程序的開發階段是很有用的,可以允許開發者在不重新啟動Pro/E的情況下修改程序代碼并重新測試程序[6]。

3 應用程序模塊及其編寫

Pro/TOOLKIT應用程序,即Pro/TOOLKIT源文件,主要分為程序源代碼和菜單文件、對話框資源文件等多個模塊,圖1給出了本課題用到的各個模塊以及它們之間的層次關系,由十篇幅有限,本文只介紹其中幾個比較重要的模塊的編寫。

3.1 編寫程序源代碼文件

在同步模式下開發程序,Pro/TOOLKIT應用程序的核心是:user_ initialize()和user_terminate()兩個函數,這兩個函數是在Pro/E啟動或終止時調用的。在Pro/E完成初始化和圖形界面生成,而用于交互的菜單還沒有生成前,系統調用函數user initialize()。在該函數中應完成Pro/TOOLKTT應用程序所需的任何初始化工作,其中包括對Pro/E菜單的修改(例如添加新的菜單按鈕等)。當成功地完成初始化后,該函數返回零值,任何其他的返回值均被認為是初始化失敗。終止Pro/E任務時,將調用user_terminate()函數,該函數返回值是void。

3.1.1 編寫user initialize()函數完成初始化工作

該函數用來初始化一個同步模式的應用程序,在該函數里面,主要調用相關函數來做如下的工作:設置菜單信息文件名、添加菜單條、添加菜單按鈕、設置菜單按鈕的動作函數等。該函數必須返回0來表明程序已經被正確地初始化了。而動作函數一般在該函數外進行定義。

3.1.2 編寫user_terminate()函數終止程序

該函數的主要任務是終止應用程序,它的調用比較簡單,對于實現功能比較簡單的應用程序,該函數可以為空。但是,應該注意的是,如果要在DLL模式下調用對話框資源,就必須在該函數中 調 用“AFX_MANAGE_STATE(AfxGetStaticM oduleState());”語句。這是因為,最后生成的Pro/TOOLKIT應用程序為動態鏈接庫(DLL)文件,因此,在使用對話框資源時,應明確指定所使用的是DLL資源,否則,在Pro/E調用該應用程序時,DLL將使用EXE(可執行文件)的資源。

圖1 應用程序編寫模塊

3.2 編寫菜單文件

菜單文件的內容主要是程序添加到Pro/E系統里面的菜單名,如果是在Pro/E原有菜單里面加入一個新菜單,則其文件后綴為.AUX,如果加入的菜單里又含有下一級子菜單,則這個菜單文件后綴為.MNU。菜單文件的編寫也有一定的格式規范。菜單文件必須編寫正確,否則,也將導致程序無法正常運行。

菜單資源文件有其規范的格式,每三行為一組,具體如下:

菜單標識名 ……菜單標識文本

#

#

選項名[覆蓋選項名] ……菜單選項顯示文本

(提示信息) ……鼠標劃過或停留在菜單項時顯示的提示文本

[覆蓋提示信息]

選項名[覆蓋選項名]

本課題菜單資源文件為:

MyMenu

&MyMenu

我的菜單

#

BottleAndMoldDesign

BottleAndMoldDesign

瓶子和模具設計

#

Parameterized Programmi ng

Parameterized Programming

參數化設計

#

4 結束語

本文以目前國內市場上占主流的瓶子的改型設計為研究對象,充分滲透參數化設計的思想,利用VC++與Pro/E和Pro/TOOLKIT,實現了瓶子的參數化設計和模具設計的自動化。整個設計采用參數化設計的方法,用戶只需點擊按鈕和修改數據,即可實現模具的設計。另外,系統還通過改變按鈕的可選狀態的方式指導用戶進行操作,用戶只要按指定的順序進行操作,即可在短短一兩分鐘之內完成模具設計的整個過程。所有的計算和數據傳遞都在幕后進行,無須用戶干涉,使得復雜的模具設計過程變得簡單明了。

[1] 李世國.Pro/TOOLKIT程序設計[M].北京:機械工業出版社,2003:1-458.

[2] 張繼春.Pro/ENGINEER二次開發實用教程[M].北京大學出版社,2003.

[3] 二代龍震工作室.Fro/TOOLKIT Wildfire 2.0插件設計[M].北京電子工業出版社,2005:1-392.

[4] 田福祥.現代模具技術的特點及其發展趨勢[J].熱加工工藝,2004 (08).

[5] 李劍峰,等.Pro/TOOLKIT技術及其在Pro/ENGINEER二次開發中的應用[J].網絡與信息化,2003 (05).

[6] 金濤,陳敏,等.Pro/ENGINEER軟件的一次開發技術[J].計算機工程與應用,2001 (13).

猜你喜歡
按鈕程序
哪個是門鈴真正的按鈕
當你面前有個按鈕
門鈴按鈕
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
死循環
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
內心不能碰的按鈕
商業評論(2014年9期)2015-02-28 04:32:41
主站蜘蛛池模板: 亚洲天堂日韩av电影| 国产性生交xxxxx免费| 精品久久人人爽人人玩人人妻| 久久久久亚洲av成人网人人软件| 国产女人水多毛片18| 91日本在线观看亚洲精品| 亚洲天堂免费在线视频| 久久99精品国产麻豆宅宅| 亚洲天堂首页| 免费无码AV片在线观看中文| 国产第一页亚洲| 亚洲第一页在线观看| 亚洲国产精品无码久久一线| 色婷婷在线影院| 精品国产免费人成在线观看| 国产综合欧美| 久久午夜影院| 欧美日韩中文国产va另类| 亚洲成a人在线观看| 精品亚洲国产成人AV| 亚洲精品无码不卡在线播放| 欧美另类第一页| 亚洲成AV人手机在线观看网站| 国产精品福利社| 国产草草影院18成年视频| 国产理论一区| 日韩无码黄色| 国产三级韩国三级理| 国产成人免费视频精品一区二区| 欧美人与性动交a欧美精品| 一级香蕉视频在线观看| 久久精品人妻中文系列| 色综合天天视频在线观看| 国产成人91精品免费网址在线| 青青青国产视频手机| 国产成人91精品| 国产偷国产偷在线高清| 人妻无码中文字幕第一区| 波多野结衣视频网站| 亚洲精品动漫| 欧美国产日本高清不卡| 国产成人亚洲精品色欲AV| 日本午夜三级| 91成人在线观看视频| 亚洲综合经典在线一区二区| 99久久亚洲综合精品TS| 国产精品无码AⅤ在线观看播放| 国产丰满成熟女性性满足视频| 国产成人无码Av在线播放无广告| 97成人在线观看| 欧美成人精品在线| 久久99国产乱子伦精品免| 色屁屁一区二区三区视频国产| 四虎AV麻豆| 99草精品视频| 欧美福利在线观看| 天堂成人在线| 亚洲日本在线免费观看| 久久精品国产亚洲麻豆| 国产电话自拍伊人| 91亚洲精选| 亚洲欧美日韩另类在线一| 在线观看亚洲精品福利片| 国产午夜精品一区二区三| 国产激爽大片高清在线观看| 亚洲国产精品日韩欧美一区| 欧美日韩福利| 免费不卡视频| 欧美精品亚洲日韩a| 一区二区三区高清视频国产女人| 999国内精品视频免费| 国产美女无遮挡免费视频| 好吊日免费视频| 女同国产精品一区二区| 久久久久九九精品影院| 国产在线专区| 久青草网站| 欧美日韩国产在线观看一区二区三区| 亚洲国产一成久久精品国产成人综合| 国产成人免费高清AⅤ| 国产精品久久久久久久久| 国产亚洲精品97在线观看|