1 前言
美國UGS公司的Unigraphics(UG)軟件是一套優(yōu)秀的以機(jī)械產(chǎn)品為主的CAD/CAE/CAM一體化軟件,應(yīng)用范圍非常廣泛,在引入國內(nèi)不到十年的時間內(nèi),就擁有了幾百家用戶,其發(fā)展勢頭非常強(qiáng)勁。Unigraphics在提供了強(qiáng)大功能的同時,還具有Grade和User Function二種二次開發(fā)工具,Grade是一種類似于FORTRAN語言的開發(fā)工具,User Function是一種C或FORTRAN語言開發(fā)工具。用戶在購買了Unigraphics軟件后,針對自身產(chǎn)品的特點(diǎn)進(jìn)行一些二次開發(fā)是必不可少的,對提高產(chǎn)品的設(shè)計效率,縮短產(chǎn)品設(shè)計周期,使設(shè)計符合國家標(biāo)準(zhǔn)等,具有重大意義。通常,用戶需要針對自身產(chǎn)品建立必需的標(biāo)準(zhǔn)件參數(shù)化圖庫,建立行業(yè)標(biāo)準(zhǔn)件和通用件圖庫,針對產(chǎn)品特點(diǎn)做專門開發(fā)等,以提高設(shè)計效率和設(shè)計質(zhì)量。
用戶二次開發(fā)的結(jié)果,最終要供他人使用,因此良好的交互界面是非常重要的。UG提供的User Tool工具可使用戶的開發(fā)結(jié)果與UG的集成交互界面有機(jī)地結(jié)合起來,形成一個風(fēng)格一致的統(tǒng)一界面,方便了用戶的使用和操作。
根據(jù)我們在UG上進(jìn)行二次開發(fā)的經(jīng)驗,本文將系統(tǒng)介紹User Tool的使用過程和方法,詳細(xì)介紹User Tool各種用戶界面的定義格式,使擁有UG的用戶在較短的時間內(nèi)就能設(shè)計出比較好的用戶界面。我所用的硬件平臺為SGI Indigo2和SGI Indy,其操作系統(tǒng)為IRIX 5.3。
2 在UG中調(diào)用二次開發(fā)程序
用戶二次開發(fā)的結(jié)果,在UG中統(tǒng)稱為User Tool。Grade程序(.grx文件)可通過主菜單項File的菜單項Execute→Grip來直接執(zhí)行,User Function程序可通過主菜單項File的菜單項Execute→User Function來直接執(zhí)行。這種方法功能比較簡單,一次只能執(zhí)行一個GRIP或User Function程序,不能將由多個GRIP或User Function程序完成的一組功能集中到一塊,而且用戶必須確切知道要執(zhí)行的GRIP或User Function程序所在的目錄路徑。實(shí)際上,UG提供了一個專門調(diào)用User Tool的交互接口,即在UG的主菜單中有一菜單項User Tools,用來調(diào)用二次開發(fā)的User Tool對話框。缺省的User Tools菜單有如下三個菜單項: Show CurrentHide Current Reload Default Show Current菜單項用于調(diào)用由環(huán)境變量UG_USER_TOOLS_FILE或菜單定義文件中的 DEFAULT選項指定的User Tool(對話框或工具條,.utd文件)。 Hide Current菜單項用于隱藏當(dāng)前已經(jīng)顯示的User Tool。 Reload Default菜單項用于重新調(diào)用由環(huán)境變量UGII_USER_TOOLS_FILE或菜單定義文件中的DEFAULT選項指定的User Tool。 有了這一工具,用戶可將由多個Grip或User Function程序構(gòu)成的內(nèi)容集成到一個U ser Tool對話框或工具條中,每一個程序由對話框或工具條中的一個圖標(biāo)(或一個按鈕或一個任選項)來調(diào)用,使用起來就非常方便。 若用戶開發(fā)的User Tool只是一個方面的內(nèi)容(如"標(biāo)準(zhǔn)件"),用一個User Tool對話框或工具條即可實(shí)現(xiàn),這時利用User Tools菜單的Show Current或Reload Default菜單項來調(diào)用就非常方便。 若用戶開發(fā)的User Tool內(nèi)容比較多,需要多個User Tool對話框或工具條來實(shí)現(xiàn)(如開發(fā)了"標(biāo)準(zhǔn)件"、"通用傳動件"、"專用結(jié)構(gòu)設(shè)計工具"三部分內(nèi)容,用三個User Tool對話框或工具條來實(shí)現(xiàn)),這時可以重新定義User Tools菜單的內(nèi)容。
3 User Tools下拉菜單的定義
User Tools菜單定義文件為.utd的文本文件,該文件的定義格式為: ! usrmenu.utd1997.7 DEFAULT/usr/people/zxy/usrtools/sta_part.utd LABEL Standard Parts USRT sta_part.utd LABEL Drive Parts USRT drv_part.utd 以符號"!"開頭的是注解行,在菜單定義文件中不起作用。 DEFAULT關(guān)鍵詞后面指定的參數(shù)是缺省的菜單定義文件名,也可通過環(huán)境參數(shù)UG_USE R_TOOLS_FILE來指定。進(jìn)入UG后,用戶可通過User Tools菜單中的Show Current或Relo ad Default菜單項來調(diào)用缺省的菜單定義文件。 后面以每兩行定義一項菜單。LABEL關(guān)鍵詞后面指定的參數(shù)是菜單項標(biāo)題,該標(biāo)題內(nèi)容就顯示在User Tools菜單中。 USRT關(guān)鍵詞后面指定的參數(shù)是對應(yīng)菜單項定義的文件標(biāo)識符,該文件即是所謂的Us er Tool定義文件,用來對該項菜單要執(zhí)行的動作進(jìn)行定義。可以使用完整的文件名標(biāo)識符,沒指定路徑時將使用環(huán)境變量UG_DEFAULT_USRT_DIR指定的目錄路徑。
4 User Tool對話框的定義
User Tool對話框定義文件是一個.utd的文本文件,由對話框標(biāo)題(Title)、按鈕(B utton)、圖標(biāo)(Icon)、列表框(List Box)等內(nèi)容組成。標(biāo)題部分由關(guān)鍵詞TITLE開頭,按鈕部分由關(guān)鍵詞BUTTONS開頭,圖標(biāo)部分由關(guān)鍵詞ICONS開頭,列表框部分由關(guān)鍵詞LIST 開頭。標(biāo)題部分是唯一的;按鈕、圖標(biāo)、列表框部分可以有多段定義,每一段定義若干個按鈕(或圖標(biāo)、或列表框),各段的排列順序可任意,取決于設(shè)計者對各按鈕、圖標(biāo)和對話框的排列外觀。對話框的最后部分將自動出現(xiàn)OK、Apply、Cancel三個按鈕和Auto Dismiss開關(guān)鈕,以便對選定的內(nèi)容(按鈕、圖標(biāo)或列表框條目)進(jìn)行確認(rèn)或取消當(dāng)前的操作。
4.1 標(biāo)題部分的定義
標(biāo)題部分定義的格式如下: TITLE name定義將顯示在User Tool對話框標(biāo)題行的文字,name可有可無VERSION 1 定義版本號 OPTION DISMISS ON|OFF定義Auto Dismiss狀態(tài),缺省為OFF。若為ON,則選擇一項 (按鈕、圖標(biāo)或列表框條目)后,就取消User Tool 其中大寫部分為關(guān)鍵詞,不能改變;其余部分可自行定義。以下類同。
4.2 按鈕部分的定義
按鈕部分定義的格式如下: BUTTONS 按鈕部分定義開始 LABEL name按 鈕部分標(biāo)題行。name為字符串,最多127個字符。可省略 COLUMNS number 指定每一行排列按鈕的個數(shù)以下每三行定義一個按鈕 NAME name 按鈕上顯示的內(nèi)容,name為字符串 TYPE fileType 指定激活按鈕時所完成動作的類型 ACTION pathname 指定激活按鈕時所調(diào)用的程序的路徑和文件名激活按鈕時所完成動作的類型有如下幾種,分別由fileType定義: MACRO 調(diào)用一宏定義文件(.micro文件) UFUN調(diào)用一User Function程序 GRIP調(diào)用一GRIP程序(.grx文件) USRT調(diào)用一User Tool定義文件(.utd文件) 按鈕的大小將由各按鈕定義中name字符串的最大長度、每行排列按鈕的個數(shù)以及對話框的總體寬度來決定。
4.3 圖標(biāo)部分的定義
圖標(biāo)部分定義的格式如下: ICONS圖標(biāo)部分定義開始 LABEL name圖標(biāo)部分標(biāo)題行。name為字符串,最多127個字符。可省略 COLUMNS number指定每一行排列圖標(biāo)的個數(shù)以下每四行定義一個圖標(biāo) NAME name當(dāng)光標(biāo)位于圖標(biāo)上時顯示的文字,用于對圖標(biāo)的功能進(jìn)行注解 BITMAP pathname指定圖標(biāo)所使用的圖象文件的路徑和文件名 TYPE fileType指定激活圖標(biāo)時所完成動作的類型,與按鈕部分所用的類型一致 ACTION pathname指定激活圖標(biāo)時所執(zhí)行的程序的路徑和文件名 圖標(biāo)顯示時所用的圖象文件,可使用標(biāo)準(zhǔn)的X位圖格式圖象編輯程序來定義,如IRI X操作系統(tǒng)中即使用bitmap程序。定義圖標(biāo)位圖時,應(yīng)使用白色背景和黑色前景,不支持彩色。一般情況下,推薦使用36(36象素的位圖塊來定義圖標(biāo),更小或更大尺寸的圖標(biāo)將影響整個UG操作界面的一致性。
4.4 列表框部分的定義
列表框部分定義的格式如下: LIST列表框部分定義開始 LABEL name列表框部分標(biāo)題行。name為字符串,最多127個字符。可省略 SIZE number 指定列表框窗口的高度(行數(shù)或條目項數(shù)),數(shù)字非法時缺省為7以下每三行 定義一個列表框條目 NAME name指定顯示在列表框中的條目文字 TYPE fileType指定選中該條目時所完成動作的類型,與按鈕部分所用的類型一致 ACTION pathname指定選中該條目時所執(zhí)行的程序的路徑和文件名
4.5 User Tool對話框定義實(shí)例
以下是一個User Tool對話框定義實(shí)例,用于定義一組標(biāo)準(zhǔn)件圖庫。 TITLE Hexagonal Head Bolts標(biāo)題部分定義開始 VERSION 1 OPTION TOOLBAR這是一個User Tool工具條 OPTION DISMISS OFF ICONS圖標(biāo)部分的第一段定義 COLUMNS 4每行排列四個圖標(biāo) NAME Hex Head Locking (GB838-88)第一段第一個圖標(biāo)的功能定義,圖標(biāo)名BITMAP gb8 38.ubm該圖標(biāo)對應(yīng)的位圖文件名,其缺省路徑由環(huán)境變量來設(shè)置 TYPE GRIP激活該圖標(biāo)時,將調(diào)用一GRIP程序 ACTION sta_part/screw/gb838.grx 激活該圖標(biāo)時要調(diào)用的GRIP程序的路徑和文件名NAME Knurled Locking (GB839-88) 第一段第二個圖標(biāo)的功能定義 BITMAP gb839.ubm TYPE GRIP ACTION sta_part/screw/gb839.grx …… ICONS圖標(biāo)部分的第二段定義 COLUMNS 4 NAME Round-head Cross Tapping (GB845-85) 第二段第一個圖標(biāo)的功能定義 BITMAP gb845.ubm TYPE GRIP ACTION sta_part/screw/gb845.grx NAME Countersunk-head Cross Tapping (GB846-85) BITMAP gb846.ubm TYPE GRIP ACTION sta_part/screw/gb846.grx …… BUTTONS按鈕部分定義開始 LABEL Basic Options按鈕部分標(biāo)題 COLUMNS 4每行排列四個按鈕 NAME Back第一個按鈕功能定義,按鈕顯示文字內(nèi)容 TYPE USRT激活按鈕,將調(diào)用一User Tool定義文件 ACTION sta_part.utd 激活按鈕時要調(diào)用的User Tool文件的路徑和文件名 …… 該實(shí)例文件實(shí)現(xiàn)的User Tool工具條
5 User Tool工具條的定義 ,
User Tool工具條是一種特殊的User Tool,其格式與User Tool對話框基本一致。U ser Tool工具條中可出現(xiàn)按鈕和圖標(biāo),但一般不包含對話框,因此其尺寸通常比較小,占有較小的屏幕空間。User Tool工具條的標(biāo)題部分與對話框的標(biāo)題部分有所區(qū)別,其格式如下: TITLE name VERSION 1 OPTION TOOLBAR該行表示這是一個User Tool工具條,以便與User Tool對話框相區(qū)別 OPTION DISSMIS ON|OFF 其它部分定義的格式與User Tool對話框的定義一致。
6 工作環(huán)境參數(shù)設(shè)置
二次開發(fā)的內(nèi)容主要是做一些共用性的工作,開發(fā)的結(jié)果將以相應(yīng)的可執(zhí)行文件、數(shù)據(jù)文件等存放于硬盤的某個目錄或多個目錄下。這些結(jié)果必須為具有指定訪問權(quán)限的各個用戶所共用,即在調(diào)用相應(yīng)的程序模塊時,系統(tǒng)應(yīng)能查找到相應(yīng)的文件。利用User Tool開發(fā)UG應(yīng)用模塊時,必須設(shè)置幾個有關(guān)的環(huán)境變量,用來指定程序執(zhí)行時的有關(guān)路徑。這些環(huán)境變量是: UG_USER_TOOLS_FILE指定缺省的User Tool定義文件(.utd文件) UG_USER_TOOLS_MENU指定User Tools下拉菜單的菜單定義文件(.utd文件) UG_USER_TOOLS_BITMAP_PATH指定圖標(biāo)位圖文件的路徑(.ubm文件) UG_DEFAULT_USRT_DIR指定User Tool文件(.utd文件)的缺省目錄 UG_INITIAL_GRIP_DIR指定User Tool所用GRIP可執(zhí)行程序(.grx文件)的缺省目錄 UG_INITIAL_UFUN_DIR指定User Tool所用User Function可執(zhí)行程序的缺省目錄 UG_INITIAL_MACRO_DIR 指定User Tool所用宏文件(.micro文件)的缺省目錄 工作環(huán)境參數(shù)的設(shè)置,可用兩種方法來實(shí)現(xiàn)。一種方法是利用操作系統(tǒng)的setenv命令,對各個環(huán)境參數(shù)進(jìn)行設(shè)置。另一種方法是將以上環(huán)境參數(shù)增加在操作系統(tǒng)的用戶注冊文件.login 的后面,其格式為: setenv UG_USER_TOOLS_MENU /usr/people/zxy/usrtools/usermenu.utd setenv UG_USER_TOOLS_FILE /usr/people/zxy/usrtools/stadpart.utd setenv UG_USER_TOOLS_BITMAP_PATH /usr/people/zxy/usrtools/bitmap/ setenv UG_DEFAULT_USRT_DIR /usr/people/zxy/usrtools/ setenv UG_INITIAL_GRIP_DIR /usr/people/zxy/usrtools/ 工作環(huán)境參數(shù)的設(shè)置,應(yīng)由系統(tǒng)管理員完成。一旦設(shè)置好后,具有指定訪問權(quán)限的用戶就可以調(diào)用這些二次開發(fā)的User Tool模塊了。
相關(guān)文章
- 2021-09-08BIM技術(shù)叢書Revit軟件應(yīng)用系列Autodesk Revit族詳解 [
- 2021-09-08全國專業(yè)技術(shù)人員計算機(jī)應(yīng)用能力考試用書 AutoCAD2004
- 2021-09-08EXCEL在工作中的應(yīng)用 制表、數(shù)據(jù)處理及宏應(yīng)用PDF下載
- 2021-08-30從零開始AutoCAD 2014中文版機(jī)械制圖基礎(chǔ)培訓(xùn)教程 [李
- 2021-08-30從零開始AutoCAD 2014中文版建筑制圖基礎(chǔ)培訓(xùn)教程 [朱
- 2021-08-30電氣CAD實(shí)例教程AutoCAD 2010中文版 [左昉 等編著] 20
- 2021-08-30電影風(fēng)暴2:Maya影像實(shí)拍與三維合成攻略PDF下載
- 2021-08-30高等院校藝術(shù)設(shè)計案例教程中文版AutoCAD 建筑設(shè)計案例
- 2021-08-29環(huán)境藝術(shù)制圖AutoCAD [徐幼光 編著] 2013年P(guān)DF下載
- 2021-08-29機(jī)械A(chǔ)utoCAD 項目教程 第3版 [繆希偉 主編] 2012年P(guān)DF