




已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
ADAMS二次開發(fā)基礎(chǔ)研究摘要:本文對ADAMS二次開發(fā)中的用戶子程序與用戶界面定制進行了簡單探討。關(guān)鍵詞:ADAMS,二次開發(fā),Subroutine,用戶界面定制1概述ADAMS具有很強的二次開發(fā)功能,包括ADAMS/View界面的用戶化設(shè)計,利用cmd語言實現(xiàn)自動建模和仿真控制,通過編制用戶子程序滿足用戶的某些特定需求,甚至可以拓展ADAMS的功能,還有就是使用ADAMS/SDK來把運動仿真功能完全集成到自己的軟件包中,脫離ADAMS軟件環(huán)境來進行自己的運動仿真。由于ADAMS/SDK能在脫離ADAMS其它前處理環(huán)境使用,因此使用它的都是一些脫離ADAMS環(huán)境自己開發(fā)運動仿真工具的高級用戶使用,普通用戶在不脫離ADAMS環(huán)境的條件下,使用Subroutines、自定義用戶界面等二次開發(fā)功能就能滿足用戶所需的需求。因此本文只對不脫離ADAMS環(huán)境的二次開發(fā)技術(shù)做一定的探討,對ADAMS/SDK只作簡單的介紹。2 ADAMS/SDK介紹ADAMS/SDK是ADAMS軟件開發(fā)工具包。利用ADAMS/SDK,用戶可以把運動仿真功能完全集成到自己的軟件包中,也可以為已有的產(chǎn)品增加更強的運動仿真能力。集成后的工具包與ADAMS具有同樣的仿真分析功能。ADAMS/SDK使用流行的C或C語言作為編程接口環(huán)境。可以快速、簡單、有效地在用戶的軟件包中增加運動仿真功能。用戶通過集成ADAMS在各行業(yè)中已驗證的經(jīng)驗,可以大大地節(jié)省在運動仿真開發(fā)方面的投資。ADAMS/SDK可以廣泛地應用于CAD軟件中的運動學和動力學工具,CAD軟件中裝配位置的確定,制造業(yè)中的動態(tài)仿真,數(shù)字化裝配運動回放及工業(yè)特殊用途的運動仿真。3 ADAMS用戶子程序3.1用戶子程序簡介一般情況下,ADAMS的大部分功能可以通過函數(shù)表達式完成,函數(shù)表達式很容易操作,因為不必編譯或連接程序,而且ADAMS/Solver還會實時地提供函數(shù)表達式。但函數(shù)表達式提供的只是有限的編程結(jié)構(gòu),因此有些復雜的情況,特別是涉及到一些邏輯表達,用函數(shù)表達式則很難表達出來。因此在需要采用一些ADAMS沒有提供的特殊函數(shù)時,可以采用用戶子程序。用戶子程序更具有通用性,可以利用編程語言來定義模型元素或者特定的輸出。用戶可以將函數(shù)表達式寫成子程序的形式并將其與ADAMS/View連接,它具有函數(shù)表達式所沒有的通用性和靈活性。子程序利用通用程序設(shè)計語言(FORTRAN或C)的功能來定義ADAMS/View不能提供的函數(shù),并使之按照需要而量身設(shè)計。通過連接用戶子程序,不會失去ADAMS/View的任何功效,也不會降低仿真速度。當出現(xiàn)下列情況時,通常會使用到用戶子程序:(1)數(shù)學函數(shù)很難表達。(2)需要定義多用戶使用的函數(shù)。(3)GSE和UCON聲明時,需要用戶子程序。(4)需要控制復雜仿真運行時,以及需要作決策邏輯時。使用用戶子程序時要小心,因為不正確的用戶子程序會很難調(diào)試。3.2用戶子程序的種類根據(jù)用戶子程序的功能,可以將它們分為三類:(1)Driver Subroutine驅(qū)動子程序(2)Evaluation Subroutines計算子程序(3)Restart subroutines重啟子程序1. 驅(qū)動子程序(Driver Subroutine)驅(qū)動子程序(Driver Subroutine)CONSUB用來驅(qū)動ADAMS/Solver。這樣ADAMS/Solver在仿真時可更進一步地完成對模型的分析和修改的自動化工作。CONSUB發(fā)出request(請求),regulate(調(diào)整),和vary simulations(改變仿真)的命令,并通過作出的交互式命令來修改數(shù)據(jù),或者進行不同的分析。大多數(shù)運行ADAMS/Solver的情況都是交互式,或者是以批處理的形式,一次只涉及到單個的分析。使用CONSUB,可以完成對數(shù)據(jù)的動態(tài)分析,改變前提條件,并重復動態(tài)分析。2. 計算子程序(Evaluation Subroutines)計算子程序(Evaluation Subroutines)為用戶自定義。ADAMS/Solver可寫子程序來對某些非標準的或復雜的計算式計算其數(shù)值。3. 重啟子程序(Restart Subroutines)重啟子程序(Restart subroutines)由一對子程序組成,SAVESUB和RELSUB。它們可以保存和重新加載子程序運行過程中的某些狀態(tài)變量,這些狀態(tài)變量是那些相關(guān)的用戶子程序在重新啟動或進行某些變量初始化時所必須的數(shù)據(jù)。如果在用戶子程序之間相互調(diào)用時,需要使用它們在子程序內(nèi)部保存數(shù)據(jù)。如果沒有使用RELSUB和SAVSUB,在保存仿真文件時,內(nèi)部數(shù)據(jù)就會丟失。雖然SAVE命令可將模型和仿真數(shù)據(jù)保存到文件中去,而且可以通過使用RELOAD命令重新調(diào)入保存文件,并可以從該保存點重新啟動仿真。但SAVE和RELOAD不可能對用戶子程序的內(nèi)部數(shù)據(jù)進行特殊操作,在RELOAD命令之后,ADAMS/Solver會從仿真流程中斷點繼續(xù)調(diào)用用戶子程序,但用戶子程序中某些感興趣的內(nèi)部變量卻沒有得到保存。3.3子程序的使用相對于ADAMS/View來講,用戶定義子程序有兩個任務(wù):輸入和輸出。輸入就是在相應的命令或狀態(tài),或在表明當前系統(tǒng)狀態(tài)的計算結(jié)果中,提供給ADAMS/View的相關(guān)信息。輸出就是從ADAMS/View中獲得的相關(guān)信息。1. 聲明浮點變量為了保證數(shù)值在子程序之間或者ADAMS/Solver和子程序之間能夠正確地傳遞,需要聲明浮點變量,就像在ADAMS/Solver中作的聲明一樣。在UNIX和Windows機器上,ADAMS/Solver使用雙精度浮點變量。因為未聲明的浮點變量通常都是單精度的(如REAL),所以應當明確聲明所有的浮點變量都是雙精度的。2. 參數(shù)的使用ADAMS/View會從FUNCTION=USER()的表達式中提供給用戶子程序參數(shù)值。例如,如果你使用FUNTION=(4.0,5.0,6.0),ADAMS/View通過一個包含4.0,5.0,6.0的PAR數(shù)組參數(shù),以及通過一個值為3的NPAR參數(shù)傳遞這些數(shù)值。通過使用這些功能使得用戶子程序更加靈活。例如,如果計算需要marker101和marker102的距離,可以將這些標志符直接寫進用戶子程序。3. 避免不連續(xù)在運行表達式中,當使用子程序來定義運動,傳感器,力,或者模型中的狀態(tài)平衡方程時,應當保證這些函數(shù)是連續(xù)的。不連續(xù)的函數(shù)很難處理,因為大多數(shù)數(shù)學理論都是假定系統(tǒng)方程是連續(xù)的。如果違反了該規(guī)則,ADAMS/Solver就會得出出人意料的結(jié)果。當使用IF聲明,將分段函數(shù)連接起來時,常常會產(chǎn)生不連續(xù)函數(shù)。為了保證函數(shù)是連續(xù)的,在使用該類型的函數(shù)時,一定要小心。4. 創(chuàng)建用戶子程序為了創(chuàng)建自己的用戶子程序,ADAMS提供了子程序模板并將它們放在安裝目錄install_dir/adams/solver/usersubs中。子程序不能以C語言為模板。如果需要一個C語言的子程序,必須通過修改FORTRAN文件來創(chuàng)建它,或者使用FORTRAN模板作為向?qū)В瑒?chuàng)建自己的C語言格式子程序。創(chuàng)建用戶子程序的步驟:(1) 決定需要創(chuàng)建什么樣的用戶子程序。例如,如果有GFORCE的聲明,可以創(chuàng)建GFOSUB的用戶子程序。(2) 決定要計算什么,需要什么輸入?yún)?shù)。(3) 將合適的用戶子程序模板從安裝目錄拷貝到當前目錄。模板目錄中包含了要使用的所有子程序模板。(4) 使用文字編輯器來察看用戶子程序模板。(5) 按需要修改用戶子程序。從用戶子程序中調(diào)用功能子程序,或者其他FORTRAN或C語言子程序。(6) 保存用戶子程序。因為可能對不同的模型會使用相同的子程序,所以最好給文件起一個容易區(qū)分的名字。5. 調(diào)用用戶子程序可以通過使用聲明或者命令來調(diào)用用戶子程序。通過使用前面定義的用戶子程序的名字來讓ADAMS/Solver知道調(diào)用哪一個子程序。也可以使用子程序來定義一些模型元素。能調(diào)用用戶子程序的聲明或命令如表1所示。表1 調(diào)用用戶子程序的聲明或命令要調(diào)用的子程序使用的聲明/命令CONSUBCONTROLCOUSUB,COUXX,COUXX2COUPLERCURSUBCURVEDIFSUBDIFFFIESUBFIELDGFOSUBGFORCEGSE_DERIV,GSE_UPDATE,GSE_OUTPUT,GSE_SAMPGSEMOTSUBMOTIONRELSUBRELOADREQSUBREQUESTSAVSUBSAVESENSUBSENSORSFOSUBSFORCETIRSUBTIREUCOSUBUCONVARSUBVARIABLEVFOSUBVFORCEVTOSUBVTORQUE可以從用戶子程序中調(diào)用功能子程序。這些子程序的功能就像是在用戶的數(shù)據(jù)和用戶使用的用戶子程序的接口一樣。例如,在driver userwritten subroutine(驅(qū)動用戶子程序)中,可以使用control,access功能子程序。從evaluation userwritten subroutines(計算用戶子程序)中,也可以調(diào)用access,function,以及某些情況下setup 函數(shù)。換句話說,可以從上面任何一個用戶子程序中調(diào)用access和function函數(shù),但用戶只能從driver subroutine中調(diào)用control函數(shù),從某個evaluation subroutines中調(diào)用setup函數(shù)。6. 編譯,連接和運行庫在寫完定制的子程序后,必須要將它們編譯并連接到ADAMS以創(chuàng)建到ADAMS/Solver的用戶庫文件中去。然后,可以連同該庫與ADAMS/Solver一同運行。必須有一個FORTRAN(Fortran語言)或C(用C語言)編譯器,因為ADAMS本身不提供編譯器。下面給出編譯和連接的過程。(1) 軟件平臺在ADAMS中可以用FORTRAN或C進行User-subroutine的編寫,文中實例使用的相應版本和編譯命令如下: MSC.ADAMS的版本是2005.0.0 C語言的編譯器是Microsoft Virtual C+ v6.0 +SP5,編譯命令為:Cl/c/G6/Ox/MD xxx.c我們在使用的時候不需要計上面的命令,在ADAMS2005中可以直接把源代碼編譯成動態(tài)鏈接庫(dll)。(2)編譯和連接在命令行Command窗口下輸入ADAMS05-CR-USER-xxx.c,之后會在你的工作目錄下自動生成xxx.dll文件。圖1 編譯和連接命令行窗口圖2編譯和連接命令行窗口(3)運行加載dll鏈接庫運行和加載dll的方法有兩種:第一種是在命令行下面運行加載,其命令為:adams05 aview ru-u i n xxx.dll另外一種方法是在ADAMS/View用戶界面中通過設(shè)置來加載dll,如圖3所示。圖3 加載用戶子程序加載后就可以在函數(shù)編輯器中使用自己定義的用戶子程序了。4用戶界面的定制ADAMS/View的界面對象都是以層次結(jié)構(gòu)存儲在模型數(shù)據(jù)庫中,類似于零件模型的層次結(jié)構(gòu)。所有定制的界面對象都存儲在名為GUI的數(shù)據(jù)庫中,該數(shù)據(jù)庫可以很方便地管理所有的標準界面對象。界面對象的層次結(jié)構(gòu)如圖4所示。圖4 界面對象的層次結(jié)構(gòu)最上層的界面對象是窗口和對話框。如果主要建模窗口起名為main的話,其數(shù)據(jù)庫全名應為.gui.main。盡管窗口和對話框看起來很相似,但它們卻是很不相同的。窗口通常是在用戶工作的時候在屏幕上停留一段時間,而對話框通常是在用戶輸入數(shù)據(jù)或是進行訪問控制時才會出現(xiàn)。窗口有工具條和菜單欄,窗口和對話框也包含其他的界面對象如按鈕,標簽等等。大多數(shù)用戶化操作涉及到創(chuàng)建對話框或者修改標準對話框。但若不用創(chuàng)建一個完整的用戶化界面時,則通常只用修改菜單條和工具欄。在大多數(shù)情況下,用戶定制界面是指制作用戶自己的菜單和對話框。通??墒褂貌藛尉庉嬈骱蛯υ捒蚓庉嬈鱽矶ㄖ平缑妫ㄟ^它們可以很快地訪問并改變大多數(shù)界面對象和功能。下面就這兩方面的內(nèi)容作簡單介紹。4.1定制菜單4.1.1菜單編輯器通過以下菜單路徑可以調(diào)出菜單編輯器窗口:Main menuToolsMenuModify菜單編輯器窗口如圖5所示:圖5 菜單編輯器窗口在菜單編輯器窗口中顯示的是ADAMS菜單文件,菜單文件是按照一定的語法書寫的解釋性程序文件,在默認情況下,菜單編輯器窗口里顯示的是描述ADAMS標準菜單的菜單文件,通過按照一定的語法規(guī)則修改該菜單文件,就可以得到用戶化的菜單。下面的程序段是對標準ADAMS/View菜單文件的節(jié)選,粗略顯示了標準ADAMS/View菜單文件的各個菜單項和File菜單項所包含的按鈕和分割條界面對象,以便讀者能把握菜單文件的全貌,如圖6所示為相應的圖形界面。圖6 File菜單的圖形界面MENU1 &File !File菜單項 NAME=file HELP=Read and write files, print model views, or exit ADAMS BUTTON2 &New Database:Ctrl+N !New Database按鈕 NAME=new BUTTON2 &Open Database:Ctrl+O !Open Database按鈕 NAME=open HELP=Open a Database File (ADAMS/View Binary File) BUTTON2 Save Database &As. !Save Database按鈕SEPARATOR2 !分割線BUTTON2 &Import !Import按鈕.BUTTON2 &Export !Export按鈕.SEPARATOR2 !分割線BUTTON2 &Print.:Ctrl+P !Print按鈕SEPARATOR2 !分割線BUTTON2 &Select Directory. !Select Directory.按鈕.SEPARATOR2 !分割線BUTTON2 E&xit:Ctrl+Q !Exit按鈕MENU1 &Edit !Edit菜單項MENU1 &View !View菜單項MENU1 &Build !Build菜單項MENU1 &Simulate !Simulate菜單項MENU1 &Review !Review菜單項MENU1 Settin&gs !Settings菜單項MENU1 &Tools !Tools菜單項MENU1 &Help ! Help菜單項在菜單編輯器窗口中對菜單文件進行用戶化修改后,點擊編輯器窗口上的Menu bar菜單項下的Export Text按鈕可將用戶化的菜單文件到用戶二次開發(fā)文件目錄中。如果要重新調(diào)入菜單,使用菜單編輯器的Import Text按鈕調(diào)入相應的菜單文件,然后點擊Apply按鈕;或者直接通過以下菜單路徑來實現(xiàn):Main menuToolsMenuRead.4.1.2菜單語法如前所述,菜單文件實際上是用解釋性語言編制的程序段,下面介紹該解釋性語言的編程語法。菜單對象有四種類型:菜單、按鈕或圖標按鈕、開關(guān)按鈕和分割線,分別用關(guān)鍵詞MENUn、BUTTONn、TOGGLEn和SEPARATORn定義。如表2所示列出的是菜單對象類型及其參數(shù)含義。表2 菜單對象類型及其參數(shù)含義菜單對象參數(shù)含義:MENUnLabelBUTTONnLabel or name of icon fileTOGGLEnLableSEPARATORn(none)表中菜單對象的參數(shù)含義如下:(1) n是從1到10之間的整數(shù),它表示對象在菜單中出現(xiàn)的級別。例如,MENU1出現(xiàn)在菜單欄,BUTTON2出現(xiàn)在MENU1的之中。MENU菜單后面的n是必須要的,而對于其他的對象則為可選項。如果忽略級別,ADAMS/View將默認該對象屬于最后一個MENU。(2) lable是出現(xiàn)在菜單中的文本。對于圖標按鈕,可以指定圖標的名字,或者其他圖形格式文件。在Windows中圖標名字為bitmap(.bmp)格式的文件名字。創(chuàng)建每種菜單對象的語法結(jié)構(gòu)如下:創(chuàng)建MENU 可以創(chuàng)建多級的菜單,第一級菜單為MENU1,出現(xiàn)在菜單條上,低一級的菜單如MENU2和MENU3出現(xiàn)在層疊的下拉菜單中。語法: MENUn TITLE NAME=name HELP=Help參數(shù):n=整數(shù)值,表明該菜單在菜單條中出現(xiàn)的層數(shù)。n=1時菜單出現(xiàn)在菜單欄上,n2時菜單出現(xiàn)在下拉菜單中。TITLE=字符串,出現(xiàn)在菜單欄上,可以在表提前加一個&字符用作記憶法(如“&File”在菜單上顯示為File)。NAME=模型數(shù)據(jù)庫中對象的名字。HELP=出現(xiàn)在狀態(tài)欄中的文字。創(chuàng)建BUTTON每個按鈕對應一個菜單命令,可以在下拉菜單或是子菜單上放置按鈕。語法:BUTTONn LABLE ACCELERATOR NAME=name HELP=help CMD=command參數(shù):n=整數(shù)值,表明按鈕出現(xiàn)的層數(shù)。N=2時按鈕出現(xiàn)在下拉菜單上,n3時按鈕出現(xiàn)在子菜單上。LABLE=按鈕名,出現(xiàn)在下拉菜單或子菜單上。ACCELERATOR=鍵或鍵組用來執(zhí)行菜單命令。NAME=模型數(shù)據(jù)庫中菜單對象的名字。HELP=出現(xiàn)在狀態(tài)條上的文字。CMD=點擊按鈕時所執(zhí)行的命令,當有:多行命令時,每一行前面都要加CMD。創(chuàng)建分隔符(SEPERATOR)在下拉菜單和子菜單中的各項目之間添加分割線。語法:SEPERATORn參數(shù):n=整數(shù)值,表明分隔符出現(xiàn)的層數(shù),n=2時分隔符出現(xiàn)在下拉菜單中,n=3時分隔符出現(xiàn)在子菜單中。創(chuàng)建開關(guān)按鈕TOGGLE用于在兩種狀態(tài)之間設(shè)置切換開關(guān),開關(guān)按鈕可以在下拉菜單或是在子菜單上。語法:TOGGLEn TITLE NAME=name HELP=help STATE=state CMD=command其參數(shù)含義同上其他對象。下面是一個利用菜單編輯器定制用戶化菜單的例子,該例在ADAMS/View標準菜單的Controls之后定制了用戶自己的菜單項MyMenu2005,通過展開該菜單項顯示了用戶菜單各層次之間的關(guān)系,如圖7所示。圖7 自定義菜單實例界面下面是本例的程序清單:MENU1 &ControlsMENU1 &MyMenu2003 NAME=mymenu2003 HELP=A Menu Test BUTTON2 My Button &1 NAME=My_Button_1 HELP=Test of My Button 1 CMD=Adams Command of My Button 1 BUTTON2 My Button &2 NAME=My_Button_2 HELP=Test of My Button 2 CMD=Adams Command of My Button 2 BUTTON2 NAME=Some_Buttons HELP=Test of Some Button CMD=Adams Commands of Some Buttons BUTTON2 My Button &n NAME=My_Button_n HELP=Test of My Button n CMD=Adams Command of My Button n SEPARATOR2 MENU2 &Son Menu 1 BUTTON3 Son Button 1 NAME=Son_Button_1 CMD=Adams Command of Son Button 1 BUTTON3 Son Button 2 NAME=Son_Button_2 CMD=Adams Command of Son Button 2 BUTTON3 NAME=Some_Son_Button CMD=Adams Command of Some Son Button BUTTON3 Son Button n NAME=Son_Button_n CMD=Adams Command of Son Button n SEPARATOR3 MENU3 Sons Son Menu BUTTON4 Sons Son Button BUTTON4 MENU3 . MENU2 &Son Menu 2 MENU2 MENU2 &Son Menu n4.2定制對話框ADAMS/View中使用的對話框包括各種界面對象,如標簽、數(shù)據(jù)區(qū)、按鈕等等??梢允褂肁DAMS對話框編輯器來創(chuàng)建和修改對話框以更好地滿足用戶的需要。例如為標準對話框添加一個按鈕來包含要作的選項,或添加一個對話框以執(zhí)行經(jīng)常運行的步驟等等。利用對話框編輯器創(chuàng)建用戶自定義對話框的操作方法如下:4.2.1創(chuàng)建對話框?qū)υ捒蚓庉嬈靼擞脕韯?chuàng)建對話框的所有工具,創(chuàng)建對話框的步驟如下:(1)通過如下菜單路徑:在ToolsDialog BoxCreate,于是出現(xiàn)對話框編輯器如圖8所示:圖8 對話框編輯器界面(2) 在Dialog Box菜單中,選擇New按鈕,出現(xiàn)新的對話框,如圖9所示。圖9 創(chuàng)建一個新的對話框(3) 在Name欄中輸入你的對話框的標題,然后選擇想在對話框上添加的默認按鈕。(4) 選擇OK按鈕完成設(shè)置,于是出現(xiàn)一個新對話框如圖10所示。我們可以在該對話框界面上添加和修改按鈕等相關(guān)操作。圖10 創(chuàng)建的新對話框4.2.2修改對話框可以利用對話框編輯器對創(chuàng)建好的對話框進行修改,可以添加各種不同的界面對象到對話框中,設(shè)計布局、外觀、命令和對話框?qū)ο蟮拇笮〉?。具體做法為:(1) 選擇在ToolsDialog BoxModify,出現(xiàn)數(shù)據(jù)庫向?qū)А?2) 選擇想修改的對話框,在從Tools菜單選擇對話框編輯器之后,通過雙擊出現(xiàn)的對話框的背景,這樣就顯示對話框編輯器并可以修改對話框了。4.2.3增加界面對象到用戶定制對話框可以利用對話框編輯器為用戶定制對話框添加界面對象,ADAMS/View對話框的界面對象有以下幾種類型。(1) Label顯示對話框中的文字和圖象。(2) Field提供輸入文字和數(shù)值的空間。(3) Button激活操作;在按鈕上有顯示該操作的圖象,標題或文字。(4) Toggle button顯示激活狀態(tài)。(5) Seperator劃一條水平線。(6) Slider設(shè)置對象的數(shù)值而不用鍵入數(shù)據(jù)。(7) Option menu從多個選擇中挑選一個,有彈出式圖框以顯示整個菜單。(8) Button stack設(shè)置狀態(tài)。(9) Button stack包含多個按鈕,可通過右鍵彈出所有按鈕。(10) Container可添加信息。利用對話框編輯器為用戶定制對話框添加界面對象的步驟為:(1) 在Create菜單中,選擇想添加的對象。(2) 將鼠標放在想添加對象的對話框中。(3) 放下鼠標左鍵,并拖動來創(chuàng)建對象。所有界面對象的屬性都可以通過對話框編輯器進行修改。4.2.4在對話框中使用命令在用戶定制對話框中,大多數(shù)界面對象都對應著一個ADAMS/View可執(zhí)行命令,這些命令是為了完成用戶希望的某項功能,或改變模型,或改變用戶輸入數(shù)據(jù),或作出選擇。.可以用ADAMS/View命令語言(cmd)來為對象創(chuàng)建命令。也可以通過命令向?qū)碚业剿枰拿?。一旦你找到命令,就可將它從命令窗口和log文件中拷貝,并粘貼或鍵入到命令編輯框。(1) 察看對象的命令可以通過如下操作查看界面對象所對應的命令: 雙擊你想察看命令的對象。 從菜單的Attribute選項中,選擇Commands。(2) 將命令替換成文本在執(zhí)行命令之前,ADAMS/View會執(zhí)行一些文本替代操作。這些替代操作就是用界面對象的屬性值來取代替換文本,并將其用在命令中。替代文本表字符為“$”,表明替代文本的位置。有四種形式的替代文本: $object_name其名字與界面對象的名字相同。當ADAMS/View執(zhí)行命令時,它會將當前object_name的值替換為$object_name的值。如表3所示列出了不同界面對象的值。表3 不同界面對象的值對象數(shù)值含義Field(數(shù)據(jù)區(qū))當前數(shù)據(jù)區(qū)內(nèi)容Option-menu(可選菜單項)當前選定的數(shù)據(jù)Radio-box(狀態(tài)設(shè)置框)當前選定的數(shù)據(jù)Toggle-button(開關(guān)按鈕)當前定義的開關(guān)值Slide(滑動條)當前的滑動整數(shù)值例如,為將命令中的my_value值賦給參數(shù),可用以下語句:my_command my_parameter=$my_value如果數(shù)據(jù)區(qū)內(nèi)容為123,那么在ADAMS/View中執(zhí)行命令時:my_command my_parameter=123缺省情況下,選擇菜單或狀態(tài)設(shè)置框的值為顯示或選擇按鈕的文字,也可以為ADAMS/View的替換指定別的值。在toggle button開關(guān)按鈕值的屬性中,由數(shù)據(jù)區(qū)來設(shè)置開關(guān)數(shù)值。在OptionMenu選項菜單和Radio Box狀態(tài)控制欄,你可以用“|”符來分割多個選擇。 $_value替換包含該對象命令的值。例如,如果是名字為“my_toggle”的按鈕上的命令,則$_value的含義與$_toggle是相同的。在可能的情況下,應該使用$_value的值來替代實際對象的值,因為這樣更容易理解和維護。如果在命令中看見了$_value,應該知道它代表界面對象的值,另外,如果要改變對象的名字,也不必改變命令。這一點對于toggle buttons,radio box和option menu特別有用,因為這樣可以在相關(guān)聯(lián)的命令中改變這些對象的值。 $_self,$_parent,$_topgui它們可使對話框更容易理解和維護。例如,對話框能用以下命令調(diào)入它的子類的數(shù)據(jù):interface field set field=$_self.myfield strings=一般應盡可能使用$_self或$_parent命令來指代對象名字,而不用真實的名字。 $_1,$_2,$_3用來指代窗口或?qū)υ捒蝻@示命令相關(guān)的參數(shù),窗口或?qū)υ捒蛞约八鼈兊淖宇惗伎梢栽诿钪惺褂?_1,$_2,$_3。當ADAMS/View執(zhí)行命令時,它可替代參數(shù)的當前值。(3) 條件命令替換替換文本被包含在單引號內(nèi),如果在引號內(nèi)的$name或$value為空,則ADAMS/View除去單引號之間的文本。如果返回文字為空(),該對象無效或不顯示,則$name為空。條件替代更容易處理選擇或命
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年電氣工程師職業(yè)資格考試試題及答案匯編
- 2025年高級護理執(zhí)業(yè)考試試題及答案解析
- 2025年財務(wù)管理師考試試卷及答案回顧
- 2025年產(chǎn)品設(shè)計與開發(fā)考試試卷及答案
- 2025年營養(yǎng)治療師資格考試試題及答案
- 線上外語口語培訓平臺合作協(xié)議
- 人工智能工業(yè)機器人編程項目培訓協(xié)議
- 數(shù)字短視頻版權(quán)保護及糾紛解決服務(wù)協(xié)議
- 外籍翻譯在跨國金融業(yè)務(wù)中的應用協(xié)議
- 《歷史人物傳記系列》課件
- 劍橋KET詞匯表(中英對照)
- 2024年山西省太原市中考二模地理試卷
- AQ∕T 7009-2013 機械制造企業(yè)安全生產(chǎn)標準化規(guī)范
- 公墓經(jīng)營管理方案
- 基于原文與課文比較的語文學習情境創(chuàng)設(shè)研究-以《火燒云》為例
- 2024年高考語文復習:散文化小說閱讀 專項練習題(含答案解析)
- 間質(zhì)性肺病治療方案
- 2型糖尿病科普講座課件
- 民法典解讀–總則編1
- 建設(shè)工程前期手續(xù)辦理程序
- 干部履歷表(中共中央組織部2015年制)
評論
0/150
提交評論