我想看一级黄色大片_久久亚洲国产精品一区二区_久久精品免视看国产明星_91久久青青青国产免费

您的位置:網站首頁 > Proe教程

對NGINEER二次開發中關鍵技術的探討

時間:2011-02-24 09:39:34 來源:

  本文探討了對NGINEER二次開發中關鍵技術的相關內容。

  NGINEER是CAD/CAM軟件,Pro/TOOLK99v是PTC提供用于對NGINEER進行二次開發的軟件包,這里有幾個問題值得注意。

  NGINEER是美國PTC公司研制的CAD/CAM軟件。Pro/TOOLK99v是PTC提供用于對NGINEER進行二次開發的軟件包,Pro/TOOLK99v提供了大量的C語言函數,幫助我們利用C語言編程來增加NGINEER的功能。在NGINEER的二次開發過程中,有以下幾個問題值得注意(筆者使用的是NGINEER 2000i)。

  1 編寫應用程序

  可在Visual C++環境下編寫Pro/TOOLK99v應用程序,此應用程序包含Pro/TOOLK99v提供的函數,必須和Pro/TOOLK99v提供的頭文件編譯(Compile)到一起,所以,必須在Visual C++的菜單“Tools→Options→Directories”中添加如下內容 :

  ~/PROTOOLK99v/INCLUDES

  ~/PROTOOLK99v/PROTK_APPLS/INCLUDES

  ~/PRODEVELOP/INCLUDES

  ~/PRODEVELOP/PRODEV_APPLS/INCLUDES

  其中,~表示NGINEER的安裝路徑。

  2 編譯應用程序

  編譯(Compile)通過的應用程序,還必須在命令提示符下編譯和連接(nmake),以生成可執行的.exe或.dll文件。

  nmake命令是由第三方軟件(Micosoft Visual C++)提供的。要在命令提示符下使用這個命令,必須在安裝Visual C++時注冊環境變量(安裝時會有對話框“設置環境變量”提示,將“注冊環境變量”選中),或者在Windows的“設置→控制面板→系統→高級→環境變量→用戶變量”中,選取變量名“path”,在值中添加“ ~:/Microsoft Visual Studio/VC98/bin”,“~”表示Visual C++ 的安裝路徑(適用于 Windows 2000)。而且,運行“nmake”命令所在的路徑為“~/protoolkit/i486_nt/obj”,此路徑下必須要有一個對應于C應用程序的make文件,命令全形為“nmake -f *”,“*”為對應的make文件名。make文件的樣板在“~/proe2000i/protoolkit/i486_nt/obj”下。

  3 運行應用程序

  要在NGINEER環境中運行自己的應用程序,必須在NGINEER中對該程序進行注冊。注冊分為手動注冊和自動注冊兩種。手動注冊就是在NGINEER界面上依次選取“Utilities→Auxiliary Application”對話框,加載該注冊文件,自動注冊有以下4個步驟。

  (1)將注冊文件命名為protk.dat,并放在NGINEER的啟動目錄下。

  (2)將注冊文件放在NGINEER的啟動目錄下,并在啟動目錄下創建一個config.pro文件,其中設置“TOOLK99v_REGISTRY_FILE * ”語句即可,“*” 就是要注冊的注冊文件名。

  (3)將注冊文件命名為“protk.dat”,并放在路徑“〈NGINEER〉/〈MACHINE〉/text/〈LANGUAGE〉”下,其中〈LANGUAGE〉是運行NGINEER時所選的語言類型。

  (4)將注冊文件命名為“protk.dat”,并放在路徑“〈NGINEER〉/text”下。

  這樣,只要運行NGINEER就能自動加載該注冊文件,并運行指定的應用程序。注冊文件protk.dat的樣板在“~/proe2000i/protoolkit”下。

  4 Config.pro文件的設置

  環境設置文件的內容是以文字形式將選項及參數值存在名為Config.pro的文件內,這些文件均可用一般的文本編輯軟件編輯。

  Config.pro文件可設置系統的操作環境,如工具按鈕設置、模型的顯示方式、視角等。Config.pro文件應放在NGINEER的啟動目錄下,當啟動NGINEER時,系統會自動加載環境設置文件Config.pro。若應用程序是一個大量組裝零、部件的二次開發程序,下面這個Config.pro將十分有用。

  BELL NO

  DISPLAY SHADE

  DATUM_DISPLAY NO

  DATUM_POINT_DISPLAY NO

  DISPLAY_COORDINATE_SYS NO

  AXIS_DISPLAY NO

  SPIN_CENTER_DISPLAY NO

  TOOLK99v_REGISTRY_FILE *

  5 添加自定義菜單

  在NGINEER的二次開發中,添加用戶自定義菜單是最基本、最常用的技術。

  可以在NGINEER界面上現有的菜單條和菜單中添加用戶自定義菜單,如在“文件”等菜單條菜單中添加,也可以在NGINEER界面上添加菜單條菜單,它和“文件”等菜單條菜單處于同等地位。或者也可以在模式菜單中添加自定義菜單。

  筆者建議在NGINEER界面上添加菜單條菜單,因為NGINEER是一個不斷發展、不斷更新的軟件,某個版本下有的菜單條菜單或模式菜單,在另一個版本下可能沒有,因此,如果用戶自定義菜單依賴于某個菜單,很可能在另一個NGINEER的版本中不能正常使用。這樣,只能修改應用程序來適應這種變化,軟件的通用性較差。下面這個程序詳細講述如何在NGINEER界面上添加用戶自定義菜單條菜單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設定動作Action

  ProMenubarmenuPushbuttonAdd("UserMenu", "A", "A","Non-mode-specific Pro/TOOLK99v test

  commands", NULL , PRO_B_TRUE , cmd_id ,

  message_file); //在菜單條菜單UserMenu添加按鈕A

  return(0);}