直播推薦
企業(yè)動態(tài)
- Qt Group發(fā)布技術(shù)中立型Qt生態(tài)系統(tǒng)擴(kuò)展計(jì)劃
- 藍(lán)凌OA+低代碼,10大業(yè)務(wù)應(yīng)用提效專精特新“小巨人”
- Quintus科技Flexform™工藝亮相CIMT 2025引業(yè)內(nèi)關(guān)注
- 以技術(shù)硬實(shí)力贏得國際信賴—皓天鑫大型高低溫測試箱點(diǎn)亮德企業(yè)品質(zhì)
- 紛享銷客發(fā)布首個企業(yè)級智能CRM平臺ShareAI
- 揭秘西企業(yè)數(shù)字化+低碳化轉(zhuǎn)型“工具箱”:西門子Xcelerator
- 企業(yè)AI賦能數(shù)智制造,用友U9 cloud世界級云ERP煥新升級
- 《“智“領(lǐng)石化,“質(zhì)“造未來——威圖石化行業(yè)數(shù)智化實(shí)踐白皮書》隆重發(fā)布
推薦展會
【關(guān)鍵詞】二次開發(fā) 關(guān)鍵技術(shù) 程序 函數(shù)
Pro/ENGINEER是美國PTC公司研制的CAD/CAM軟件。Pro/TOOLKIT是PTC提供用于對Pro/ENGINEER進(jìn)行二次開發(fā)的軟件包,Pro/TOOLKIT提供了大量的C語言函數(shù),幫助我們利用C語言編程來增加Pro/ENGINEER的功能。在Pro/ENGINEER的二次開發(fā)過程中,有以下幾個問題值得注意(筆者使用的是Pro/ENGINEER 2000i)。
1 編寫應(yīng)用程序
可在Visual C++環(huán)境下編寫Pro/TOOLKIT應(yīng)用程序,此應(yīng)用程序包含Pro/TOOLKIT提供的函數(shù),必須和Pro/TOOLKIT提供的頭文件編譯(Compile)到一起,所以,必須在Visual C++的菜單“Tools→Options→Directories”中添加如下內(nèi)容 :
~\PROTOOLKIT\INCLUDES
~\PROTOOLKIT\PROTK_APPLS\INCLUDES
~\PRODEVELOP\INCLUDES
~\PRODEVELOP\PRODEV_APPLS\INCLUDES
其中,~表示Pro/ENGINEER的安裝路徑。
2 編譯應(yīng)用程序
編譯(Compile)通過的應(yīng)用程序,還必須在命令提示符下編譯和連接(nmake),以生成可執(zhí)行的.exe或.dll文件。
nmake命令是由第三方軟件(Micosoft Visual C++)提供的。要在命令提示符下使用這個命令,必須在安裝Visual C++時注冊環(huán)境變量(安裝時會有對話框“設(shè)置環(huán)境變量”提示,將“注冊環(huán)境變量”選中),或者在Windows的“設(shè)置→控制面板→系統(tǒng)→→環(huán)境變量→用戶變量”中,選取變量名“path”,在值中添加“ ~:\Microsoft Visual Studio\VC98\bin”,“~”表示Visual C++ 的安裝路徑(適用于 Windows 2000)。而且,運(yùn)行“nmake”命令所在的路徑為“~/protoolkit/i486_nt/obj”,此路徑下必須要有一個對應(yīng)于C應(yīng)用程序的make文件,命令全形為“nmake -f *”,“*”為對應(yīng)的make文件名。make文件的樣板在“~\proe2000i\protoolkit\i486_nt\obj”下。
3 運(yùn)行應(yīng)用程序
要在Pro/ENGINEER環(huán)境中運(yùn)行自己的應(yīng)用程序,必須在Pro/ENGINEER中對該程序進(jìn)行注冊。注冊分為手動注冊和自動注冊兩種。手動注冊就是在Pro/ENGINEER界面上依次選取“Utilities→Auxiliary Application”對話框,加載該注冊文件,自動注冊有以下4個步驟。
(1)將注冊文件命名為protk.dat,并放在Pro/ENGINEER的啟動目錄下。
(2)將注冊文件放在Pro/ENGINEER的啟動目錄下,并在啟動目錄下創(chuàng)建一個config.pro文件,其中設(shè)置“TOOLKIT_REGISTRY_FILE * ”語句即可,“*” 就是要注冊的注冊文件名。
(3)將注冊文件命名為“protk.dat”,并放在路徑“〈Pro/ENGINEER〉/〈MACHINE〉/text/〈LANGUAGE〉”下,其中〈LANGUAGE〉是運(yùn)行Pro/ENGINEER時所選的語言類型。
(4)將注冊文件命名為“protk.dat”,并放在路徑“〈Pro/ENGINEER〉/text”下。
這樣,只要運(yùn)行Pro/ENGINEER就能自動加載該注冊文件,并運(yùn)行的應(yīng)用程序。注冊文件protk.dat的樣板在“~\proe2000i\protoolkit”下。
4 Config.pro文件的設(shè)置
環(huán)境設(shè)置文件的內(nèi)容是以文字形式將選項(xiàng)及參數(shù)值存在名為Config.pro的文件內(nèi),這些文件均可用一般的文本編輯軟件編輯。
Config.pro文件可設(shè)置系統(tǒng)的操作環(huán)境,如工具按鈕設(shè)置、模型的顯示方式、視角等。Config.pro文件應(yīng)放在Pro/ENGINEER的啟動目錄下,當(dāng)啟動Pro/ENGINEER時,系統(tǒng)會自動加載環(huán)境設(shè)置文件Config.pro。若應(yīng)用程序是一個大量組裝零、部件的二次開發(fā)程序,下面這個Config.pro將十分有用。
BELL NO
DISPLAY SHADE
DATUM_DISPLAY NO
DATUM_POINT_DISPLAY NO
DISPLAY_COORDINATE_SYS NO
AXIS_DISPLAY NO
SPIN_CENTER_DISPLAY NO
TOOLKIT_REGISTRY_FILE *
5 添加自定義菜單
在Pro/ENGINEER的二次開發(fā)中,添加用戶自定義菜單是zui基本、zui常用的技術(shù)。
可以在Pro/ENGINEER界面上現(xiàn)有的菜單條和菜單中添加用戶自定義菜單,如在“文件”等菜單條菜單中添加,也可以在Pro/ENGINEER界面上添加菜單條菜單,它和“文件”等菜單條菜單處于同等地位?;蛘咭部梢栽谀J讲藛沃刑砑幼远x菜單。
筆者建議在Pro/ENGINEER界面上添加菜單條菜單,因?yàn)镻ro/ENGINEER是一個不斷發(fā)展、不斷更新的軟件,某個版本下有的菜單條菜單或模式菜單,在另一個版本下可能沒有,因此,如果用戶自定義菜單依賴于某個菜單,很可能在另一個Pro/ENGINEER的版本中不能正常使用。這樣,只能修改應(yīng)用程序來適應(yīng)這種變化,軟件的通用性較差。下面這個程序詳細(xì)講述如何在Pro/ENGINEER界面上添加用戶自定義菜單條菜單UserMenu以及在菜單條菜單UserMenu中添加按鈕“A”。
int user_initialize()
{ ProFileName message_file;
uiCmdCmdId cmd_id;
ProStringToWstring(message_file, "user_msg.txt") ;
ProMenubarMenuAdd("UserMenu","UserMenu", "Help", PRO_B_TRUE , message_file); //添加用戶自定義菜單條菜單UserMenu并放在菜單條菜單“幫助”之后
ProCmdActionAdd("A", (uiCmdCmdActFn) Action,uiProe2ndImmediate,NULL,PRO_B_TRUE,
PRO_B_TRUE, &cmd_id); //給按鈕A設(shè)定動作Action
ProMenubarmenuPushbuttonAdd("UserMenu", "A", "A","Non-mode-specific Pro/TOOLKIT test
commands", NULL , PRO_B_TRUE , cmd_id ,
message_file); //在菜單條菜單UserMenu添加按鈕A
return(0);}
其中user_msg.txt文件的內(nèi)容為 :
UserMenu(換行)UserMenu(換行)#(換行)#(換行)A(換行)A(換行)#(換行)#
user_msg.txt文件通常放在“~\text\usascii”下,它的路徑對應(yīng)于protk.dat注冊文件的TEXT_DIR項(xiàng)。
Pro/ENGINEER的二次開發(fā)功能十分強(qiáng)大,本文主要描述了Pro/ENGINEER二次開發(fā)的整體過程(編寫C程序→VC++下編譯→命令提示符下編連→Pro/ENGINEER中注冊)以及所遇到的關(guān)鍵性問題,用戶可在此基礎(chǔ)上在Pro/TOOLKIT二次開發(fā)程序中通過編寫各種功能函數(shù)來實(shí)現(xiàn)他的具體要求。
免責(zé)聲明
- 凡本網(wǎng)注明"來源:智能制造網(wǎng)"的所有作品,版權(quán)均屬于智能制造網(wǎng),轉(zhuǎn)載請必須注明智能制造網(wǎng),http://towegas.com。違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
- 企業(yè)發(fā)布的公司新聞、技術(shù)文章、資料下載等內(nèi)容,如涉及侵權(quán)、違規(guī)遭投訴的,一律由發(fā)布企業(yè)自行承擔(dān)責(zé)任,本網(wǎng)有權(quán)刪除內(nèi)容并追溯責(zé)任。
- 本網(wǎng)轉(zhuǎn)載并注明自其它來源的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品來源,并自負(fù)版權(quán)等法律責(zé)任。
- 如涉及作品內(nèi)容、版權(quán)等問題,請?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
2025第十一屆中國國際機(jī)電產(chǎn)品交易會 暨先進(jìn)制造業(yè)博覽會
展會城市:合肥市展會時間:2025-09-20