![ADAMS二次開發(fā)及實(shí)例_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/14/2a8cabac-7e36-4978-9bda-cc72d05aa869/2a8cabac-7e36-4978-9bda-cc72d05aa8691.gif)
![ADAMS二次開發(fā)及實(shí)例_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/14/2a8cabac-7e36-4978-9bda-cc72d05aa869/2a8cabac-7e36-4978-9bda-cc72d05aa8692.gif)
![ADAMS二次開發(fā)及實(shí)例_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/14/2a8cabac-7e36-4978-9bda-cc72d05aa869/2a8cabac-7e36-4978-9bda-cc72d05aa8693.gif)
![ADAMS二次開發(fā)及實(shí)例_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/14/2a8cabac-7e36-4978-9bda-cc72d05aa869/2a8cabac-7e36-4978-9bda-cc72d05aa8694.gif)
![ADAMS二次開發(fā)及實(shí)例_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/14/2a8cabac-7e36-4978-9bda-cc72d05aa869/2a8cabac-7e36-4978-9bda-cc72d05aa8695.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第 11 章 ADAMS次開發(fā)及實(shí)例ADAMS 具有很強(qiáng)的二次開發(fā)功能, 包括 ADAMS/View 界面的用戶化 設(shè)計(jì),利用 cmd 語言實(shí)現(xiàn)自動(dòng)建模和仿真控制,通過編制用戶子程序滿足 用戶的某些特定需求,甚至可以拓展 ADAMS 的功能。本章主要介紹如何定制用戶化界面、 宏命令的用法和條件循環(huán)命令的用法,以及綜合以上功能的應(yīng)用實(shí)例。由于用戶子程序的主要內(nèi)容已在第章進(jìn)行了詳細(xì)介紹,因此本章只對(duì)所涉及到的用戶子程序編譯聯(lián)接操作過程進(jìn)行簡(jiǎn)單介紹。11.1 定制用戶界面ADAMS/View的界面對(duì)象都是以層次結(jié)構(gòu)存儲(chǔ)在模型數(shù)據(jù)庫(kù)中,類GUI 的數(shù)據(jù)似于零件模型的層次結(jié)構(gòu)。所有定制的界面對(duì)象都存儲(chǔ)在
2、名為11-1 所示。庫(kù)中,該數(shù)據(jù)庫(kù)可以很方便地管理所有的標(biāo)準(zhǔn)界面對(duì)象。如圖圖11-1界面對(duì)象的層次結(jié)構(gòu)最上層的界面對(duì)象是窗口和對(duì)話框。如果主要建模窗口起名為main的話,其數(shù)據(jù)庫(kù)全名應(yīng)為.gui.main。盡管窗口和對(duì)話框看起來很相似,但它們卻是很不相同的。 窗口通常是在用戶工作的時(shí)候在屏幕上停留一段時(shí)間,而對(duì)話框通常是在用戶輸入數(shù)據(jù)或是進(jìn)行訪問控制時(shí)才會(huì)出現(xiàn)。窗口有工具條和菜單欄, 窗口和對(duì)話框也包 含其他的界面對(duì)象如按鈕,標(biāo)簽等等。但若不用創(chuàng)大多數(shù)用戶化操作涉及到創(chuàng)建對(duì)話框或者修改標(biāo)準(zhǔn)對(duì)話框。建一個(gè)完整的用戶化界面時(shí),則通常只用修改菜單條和工具欄。ADAMS所包含界面對(duì)象屬性如表 11-1
3、所示。表11-1 ADAMS所包含界面對(duì)象屬性界面對(duì)象:對(duì)象屬性:Window(窗口 )可包含用戶自定義的菜單條和工具條可有一個(gè)以上的菜單條,但一次只能顯示一個(gè)包含所有低層次的界面對(duì)象Toolbar(工具條)出現(xiàn)在窗口上端或下端的子區(qū)域能包含其它的對(duì)象Menu Bar(菜單條)出現(xiàn)在窗口上端可有子菜單僅用于控制菜單Menu(菜單)包含三種類型:下拉式、彈出式或子菜單 可包含按鈕、開關(guān)按鈕、分割條和子菜單Dialog box( 對(duì)話框)除菜單條和工具條之外還可包含其他對(duì)象Container(界面對(duì)象區(qū))包含在對(duì)話框,窗口和工具條內(nèi)的子區(qū)域 可包含其他對(duì)象Button stack(按鈕串)可包含多
4、個(gè)按鈕,而只顯示一個(gè)按鈕僅一個(gè)按鈕被激活可通過右鍵操作顯示所有按鈕.Lable(標(biāo)簽)用在對(duì)話框中顯示文本和圖象Field(數(shù)據(jù)區(qū))用于用戶輸入信息Button(按鈕)激活操作在按鈕上顯示文本和圖象對(duì)相應(yīng)操作進(jìn)行提示Toggle butto n( 開關(guān)按鈕)顯示激活狀態(tài)的按鈕Seperator(分割線)畫出水平線分割線Slide(滑動(dòng)條)通過滑動(dòng)條設(shè)置當(dāng)前范圍內(nèi)的整數(shù)值,而不用鍵入數(shù)值Option menu(可選菜單在多個(gè)菜單項(xiàng)中作一選擇項(xiàng))包含一個(gè)彈出菜單的圖框只顯示一行選定菜單項(xiàng)Radio boa(狀態(tài)設(shè)置框)設(shè)置狀態(tài)和模式Tab contained 標(biāo)簽界面對(duì)象)給界面和對(duì)話框設(shè)置標(biāo)簽D
5、ata table(數(shù)據(jù)表)用來顯示數(shù)據(jù)的表格,你可增加欄或列在大多數(shù)情況下,用戶定制界面是指制作用戶自己的菜單和對(duì)話框。通常可使用菜單編輯器和對(duì)話框編輯器來定制界面,通過它們可以很快地訪問并改變大多數(shù)界面對(duì)象和功能。下面就這兩方面的內(nèi)容作簡(jiǎn)單介紹。11.1.1定制菜單1。菜單編輯器通過以下菜單路徑可以調(diào)出菜單編輯器窗口:Main menu =Tools =Menu =Modify 菜單編輯器窗口如圖11-2所示:1 Menu BuilderMenu Bar EditnsHui &riieHAJIE=fileHE:LP = Pflad andfilasmodal vievs,BUTT0
6、112: Ct r 1+NJKAHE=newH£LP"K4set Database by rfi&ding defaultCHD"! Check changed db now, sq 匕h&t ttqorADAcanCHD= < Do not dobe for s D0_CHAHGHDCHD=it-CHD=CHD =CHD =CHD =cnD=CHD=i"irrsC!ond=C DE_CHJlMCfiD () i盂 db_d-& f aiilc (.var set var=i E.adl. f i i P_ni pm 3_r
7、, wip_n S=tm p con詛=(1>B_HXZSTS C- .mdi . LAE T_DArA if cciiid = ( ! str xs_spa.ce C - adi . LAST var set var=.iiidl, £iia_iisiiu_tin end已iiQvar set vav = .udi . £ i Ie_iaenu._sVatus i 匚.J 1 "士 7 lir.T. . - p. IIII TA . J21圖11-2菜單編輯窗口在菜單編輯器窗口中顯示的是ADAMS菜單文件,菜單文件是按照一定的語法書寫的解釋性程序文件,在默
8、認(rèn)情況下,菜單編輯器窗口里顯示的是描述ADAMS標(biāo)準(zhǔn)菜單的菜單文件,通過按照一定的語法規(guī)則修改該菜單文件,就可以得到用戶化的菜單。F面的程序段是對(duì)標(biāo)準(zhǔn) ADAMS/View 菜單文件的節(jié)選,粗略顯示了標(biāo)準(zhǔn)ADAMS/View 菜單文件的各個(gè)菜單項(xiàng)和File菜單項(xiàng)所包含的按鈕和分割條界面對(duì)象,以便讀者能把握菜單文件的全貌,如圖11-3所示為相應(yīng)的圖形界面。FiIh Edit 如U BliUMew謂匸心 atia VCiDdtatose fts.emulate Review Sirttinq Icote tJeJpCh l+NCh 1+0ftlTL.CEr 1+PScicizt Dm cctory
9、.Egctf l+qIrT圖 11-3 ADAMS/View 菜單MENU1& FileFile菜單項(xiàng)NAME=fileHEL P=Read and write files, print model views, or exit ADAMSBUTTON2 & New Database:Ctrl+NNew Database按鈕NAME=newBUTTON2 &Open Database:Ctrl+OOpen Database按鈕NAME=o penHEL P=Open a Database File (ADAMS/View Binary File)BUTTON2Save
10、Database & As.Save Database按鈕SEPARATOR2分割線BUTTON2&lmport! Imp Ort 按鈕BUTTON2&Export! Ex port按鈕SEPARATOR2分割線BUTTON2&P rint.:Ctrl+P! Print按鈕SEPARATOR2分割線BUTTON2& Select Directory.! Select Directory.按鈕SEPARATOR2分割線Exit按鈕在菜單編輯器窗口中對(duì)菜單文件進(jìn)行用戶化修改后,點(diǎn)擊編輯器窗口上BUTTON2E& xit:Ctrl+QMENU1&
11、; Edit! Edit菜單項(xiàng)MENU1&View! View菜單項(xiàng)MENU1& Build! Build菜單項(xiàng)MENU1& Simulate! Simulate 菜單項(xiàng)MENU1& Review! Review 菜單項(xiàng)MENU1Settin&gs! Settings菜單項(xiàng)MENU1&Tools! Tools菜單項(xiàng)MENU1& Hel p! Help菜單項(xiàng)的Menu bar菜單項(xiàng)下的Export Text按鈕可將用戶化的菜單文件到用戶二Import Text按鈕調(diào)入相應(yīng)的菜單文件,然后點(diǎn)擊Apply按鈕;或者直接通過以下菜單次開發(fā)文件目錄
12、中。如果要重新調(diào)入菜單,使用菜單編輯器的路徑來實(shí)現(xiàn):Main menu =Tools = Menu = Read 2。菜單語法如前所述,菜單文件實(shí)際上是用解釋性語言編制的程序段, 解釋性語言的編程語法。菜單對(duì)象有四種類型:菜單、按鈕或圖標(biāo)按鈕、開關(guān)按鈕和分割線,分 另 用關(guān)鍵詞 MEN Un、BUTTO Nn、TOGGLE n 和 SEP ARATOR n 定義。女口 表11-2所示列出的是菜單對(duì)象類型及其參數(shù)含義。表11-2菜單對(duì)象類型及其參數(shù)含義菜單對(duì)象參數(shù)含義:MEN UnLabelBUTTO NnLabel or n ame of icon fileTOGGLE nLableSEPAR
13、ATORn(none)表中菜單對(duì)象的參數(shù)含義如下:如,MENU1菜單后面的nADAMS/View將默認(rèn)該對(duì)象屬于最后一個(gè)MENU。(1) n是從1至U 10之間的整數(shù),它表示對(duì)象在菜單中出現(xiàn)的級(jí)別。例 出現(xiàn)在菜單欄,BUTTON2 出現(xiàn)在MENU1 的之中。MENU 是必須要的,而對(duì)于其他的對(duì)象則為可選項(xiàng)。如果忽略級(jí)別,(2) lable是出現(xiàn)在菜單中的文本。對(duì)于圖標(biāo)按鈕,可以指定圖標(biāo)的名字,或者其他圖形格式文件。在Win dows 中圖標(biāo)名字為bitma p(.bm p) 格 式的文件名字。創(chuàng)建每種菜單對(duì)象的語法結(jié)構(gòu)如下:創(chuàng)J建MENU可以創(chuàng)建多級(jí)的菜單,第一級(jí)菜單為 MENU1 ,出現(xiàn)在菜
14、單條上,低一 級(jí)的菜單如MENU2和MENU3出現(xiàn)在層疊的下拉菜單中。語法:MEN UnTITLENAME=n ameHEL P=Help參數(shù):n=整數(shù)值,表明該菜單在菜單條中出現(xiàn)的層數(shù)。n=1時(shí)菜單出現(xiàn)在菜單欄上,n >2時(shí)菜單出現(xiàn)在下拉菜單中。&字符用作記TITLE=字符串,出現(xiàn)在菜單欄上,可以在表提前加一個(gè)憶法(如“ & File ”在菜單上顯示為 File)。NAME=模型數(shù)據(jù)庫(kù)中對(duì)象的名字。HELP=出現(xiàn)在狀態(tài)欄中的文字。倉(cāng)U建 BUTTON每個(gè)按鈕對(duì)應(yīng)一個(gè)菜單命令,可以在下拉菜單或是子菜單上放置按鈕。語法:BUTTO Nn LABLE ACCELERATORN
15、AME=n ameHELP=helpCMD=comma nd參數(shù):n=整數(shù)值,表明按鈕出現(xiàn)的層數(shù)。N=2時(shí)按鈕出現(xiàn)在下拉菜單上,n>3時(shí)按鈕出現(xiàn)在子菜單上。LABLE=按鈕名,出現(xiàn)在下拉菜單或子菜單上。ACCELERATOR=鍵或鍵組用來執(zhí)行菜單命令。NAME=模型數(shù)據(jù)庫(kù)中菜單對(duì)象的名字。HELP=出現(xiàn)在狀態(tài)條上的文字。CMD=點(diǎn)擊按鈕時(shí)所執(zhí)行的命令,當(dāng)有:多行命令時(shí),每一行前面都要 加 CMD。倉(cāng)U建分隔符(SEPERATOR)在下拉菜單和子菜單中的各項(xiàng)目之間添加分割線。語法:SEPERATOR n參數(shù):n=整數(shù)值,表明分隔符出現(xiàn)的層數(shù),n=2時(shí)分隔符出現(xiàn)在下拉菜單中, n=3時(shí)分隔符
16、出現(xiàn)在子菜單中。創(chuàng)建開關(guān)按鈕TOGGLE用于在兩種狀態(tài)之間設(shè)置切換開關(guān),開關(guān)按鈕可以在下拉菜單或是在子菜單上。語法:TOGGLE n TITLENAME=n ameHEL P=helpSTATE=stateCMD=comma nd其參數(shù)含義同上其他對(duì)象。ADAMS/View標(biāo)準(zhǔn)菜單的下面是一個(gè)利用菜單編輯器定制用戶化菜單的例子,該例在Tools菜單項(xiàng)和He Ip菜單項(xiàng)之間定制了用戶自己的菜單項(xiàng)MyMe nu2003,通過展開該菜單項(xiàng)顯示了用戶菜單各層次之間的關(guān)系,如圖11-4所示。M- y 5 d 一 ;嚴(yán)? L* t*砂 呼外*i" t呼*'Ll IE'圖11-4用
17、戶菜單MyMenu2003 的層次結(jié)構(gòu)F面是本例的程序清單:MENU1& ToolsMENU1&MyMenu2003NAME=mymenu2003HEL P=A Menu TestBUTTON2 My Button &1NAME=My_Button_1HELP=Test of My Button 1CMD=Adams Command of My Button 1BUTTON2My Button &2NAME=My_Button_2HELP=Test of My Button 2CMD=Adams Command of My Button 2BUTT0N2NAME
18、=Some ButtonsHELP=Test of Some ButtonCMD=Adams Commands of Some ButtonsBUTTON2 My Button &nNAME=My_Button_nHELP=Test of My Button nCMD=Adams Command of My Button nSEPARATOR2MENU2& Son Menu 1BUTTON3 Son Button 1NAME=Son Button 1CMD=Adams Command of Son Button 1BUTTON3 Son Button 2NAME=Son But
19、ton 2CMD=Adams Command of Son Button 2BUTTON3NAME=Some Son ButtonCMD=Adams Command of Some Son ButtonBUTTON3 Son Button nNAME=Son Button nCMD=Adams Command of Son Button nSEPARATOR3MENU3 Son's Son MenuBUTTON4 Son's Son ButtonBUTTON4MENU3MENU2& Son Menu 2MENU2MENU2& Son Menu nMENU1 &a
20、mp; Help11.1.2定制對(duì)話框ADAMS/View 中使用的對(duì)話框包括各種界面對(duì)象,如標(biāo)簽、數(shù)據(jù)區(qū)、 按鈕等等??梢允褂?ADAMS對(duì)話框編輯器來創(chuàng)建和修改對(duì)話框以更好地或添滿足用戶的需要。例如為標(biāo)準(zhǔn)對(duì)話框添加一個(gè)按鈕來包含要作的選項(xiàng),加一個(gè)對(duì)話框以執(zhí)行經(jīng)常運(yùn)行的步驟等等。利用對(duì)話框編輯器創(chuàng)建用戶自定 義對(duì)話框的操作方法如下:1。創(chuàng)建對(duì)話框?qū)υ捒蚓庉嬈靼擞脕韯?chuàng)建對(duì)話框的所有工具,創(chuàng)建對(duì)話框的步驟如下: 通過如下菜單路徑:在Tools =Dialog Box =Create,于是出現(xiàn)對(duì)話框編輯器如圖11-5所示:Di dla 岳 Sox Eix-t : -L(Tptnoni Fr七圖
21、11-5對(duì)話框編輯器11-6所示。Li'hrur. 1®L QEi 廠 Cuic-lII Kil>OK圖11-6創(chuàng)建新對(duì)話框窗口(3)在 Name欄中輸入你的對(duì)話框的標(biāo)題,然后選擇想在對(duì)話框上添(2)在 DialogBox菜單中,選擇 New按鈕,出現(xiàn)新的對(duì)話框,如圖加的默認(rèn)按鈕。11-7所示。2。修改對(duì)話框(4)選擇OK按鈕完成設(shè)置,.于是出現(xiàn)一個(gè)新對(duì)話框如圖可以利用對(duì)話框編輯器對(duì)創(chuàng)建好的對(duì)話框進(jìn)行修改,可以添加各種不同的界面對(duì)象到對(duì)話框中,設(shè)計(jì)布局、外觀、命令和對(duì)話框?qū)ο蟮拇笮〉?。?4) Toggle butt on顯示激活狀態(tài)。(5) Sep erator劃一條
22、水平線。體做法為:(1)選擇在Tools =Dialog Box =Modify,出現(xiàn)數(shù)據(jù)庫(kù)向?qū)А?2) 選擇想修改的對(duì)話框,在從Tools菜單選擇對(duì)話框編輯器之后,通 過雙擊出現(xiàn)的對(duì)話框的背景,這樣就顯示對(duì)話框編輯器并可以修改對(duì)話框 了。3。增加界面對(duì)象到用戶定制對(duì)話框可以利用對(duì)話框編輯器為用戶定制對(duì)話框添加界面對(duì)象,ADAMS/View 對(duì)話框的界面對(duì)象有以下幾種類型。(1) Label 顯示對(duì)話框中的文字和圖象。(2) Field 提供輸入文字和數(shù)值的空間。(3) Button激活操作;在按鈕上有顯示該操作的圖象,標(biāo)題或文字。(10) Con tai ner可添加信息。Slider設(shè)置對(duì)
23、象的數(shù)值而不用鍵入數(shù)據(jù)。(7) Op tio n menu從多個(gè)選擇中挑選一個(gè),有彈出式圖框以顯示整個(gè)菜單。(8) Button stack設(shè)置狀態(tài)。(9) Button stack包含多個(gè)按鈕,可通過右鍵彈出所有按鈕。利用對(duì)話框編輯器為用戶定制對(duì)話框添加界面對(duì)象的步驟為:(1)在Create菜單中,選擇想添加的對(duì)象。(2) 將鼠標(biāo)放在想添加對(duì)象的對(duì)話框中。(3) 放下鼠標(biāo)左鍵,并拖動(dòng)來創(chuàng)建對(duì)象。所有界面對(duì)象的屬性都可以通過對(duì)話框編輯器進(jìn)行修改。4。在對(duì)話框中使用命令在用戶定制對(duì)話框中,大多數(shù)界面對(duì)象都對(duì)應(yīng)著一個(gè)ADAMS/View 可執(zhí)行命令,這些命令是為了完成用戶希望的某項(xiàng)功能,或改變模型
24、,或改變 用戶輸入數(shù)據(jù),或作出選擇??梢杂肁DAMS/View 命令語言(cmd)來為對(duì)象創(chuàng)建命令。 也可以通過命令向?qū)碚业剿枰拿?。一旦你找到命令,就可將它從命令窗口?log文件中拷貝,并粘貼或鍵入到命令編輯框。(1)察看對(duì)象的命令可以通過如下操作查看界面對(duì)象所對(duì)應(yīng)的命令:雙擊你想察看命令的對(duì)象。從菜單的Attribute 選項(xiàng)中,選擇Comma nds 。(2)將命令替換成文本在執(zhí)行命令之前,ADAMS/View 會(huì)執(zhí)行一些文本替代操作。這些替代操作就是用界面對(duì)象的屬性值來取代替換文本,并將其用在命令中。替代文本表字符為"$”,表明替代文本的位置。有四種形式的替代文本:$
25、object_ name其名字與界面對(duì)象的名字相同。當(dāng)ADAMS/View執(zhí)行命令時(shí),它會(huì)將當(dāng)前objectname的值替換為$object_name的值。如表11-3所示列出了不同界面對(duì)象的值。表11-3不同界面對(duì)象的值對(duì)象數(shù)值含義Field(數(shù)據(jù)區(qū))當(dāng)前數(shù)據(jù)區(qū)內(nèi)容Op ti on-menu(可選菜單當(dāng)前選定的數(shù)據(jù)項(xiàng))Radio-box(狀態(tài)設(shè)置框)當(dāng)前選定的數(shù)據(jù)Toggle-butt on(開關(guān)按當(dāng)前定義的開關(guān)值鈕)Slide(滑動(dòng)條)當(dāng)前的滑動(dòng)整數(shù)值例如,為將命令中的 my_value值賦給參數(shù),可用以下語句:my_comma nd my_p arameter=$my_valuemy_c
26、omma nd my_p arameter=123缺省情況下,選擇菜單或狀態(tài)設(shè)置框的值為顯示或選擇按鈕的文字,可以為ADAMS/View的替換指定別的值。在toggle butt on 開關(guān)按鈕值的屬性中,由數(shù)據(jù)區(qū)來設(shè)置開關(guān)數(shù)值。在Op tio nMenu 選項(xiàng)菜單和RadioBox狀態(tài)控制欄,你可以用“ I”符來分割多個(gè)選擇。$_value替換包含該對(duì)象命令的值。例如,如果是名字為"my_toggle ”的按鈕上的命令,則$_value的含義與$_toggle是相同的。在可能的情況下,應(yīng)該使用$_value的值來替代實(shí)際對(duì)象的值,因?yàn)檫@樣更容易理解和維護(hù)。如果在命令中看見了$_va
27、lue,應(yīng)該知道它代表界面對(duì)象的值,另外,如果要改變對(duì)象的名字,也不必改變命令。這一點(diǎn)對(duì)于toggle buttons, radio box 禾R option menu特另U有用,因?yàn)檫@樣可以在 相關(guān)聯(lián)的命令中改變這些對(duì)象的值。$_self,$_parent ,$_topgui它們可使對(duì)話框更容易理解和維護(hù)。例如,對(duì)話框能用以下命令調(diào)入它的子類的數(shù)據(jù):in terface field set field=$_self.myfield stri ngs=般應(yīng)盡可能使用$_self 或$_parent命令來指代對(duì)象名字,而不用真實(shí)的名字。$_1,$_2,$_3 用來指代窗口或?qū)υ捒蝻@示命令相關(guān)的
28、參數(shù),窗口或?qū)υ捒蛞约八鼈兊淖宇惗伎梢栽诿钪惺褂?_1,$_2,$_3。當(dāng)ADAMS/View 執(zhí)行命令時(shí),它可替代參數(shù)的當(dāng)前值。(3)條件命令替換替換文本被包含在單引號(hào)內(nèi),如果在引號(hào)內(nèi)的$name或$value為空,則ADAMS/View 除去單引號(hào)之間的文本。如果返回文字為空(),該對(duì)象無效或不顯示,則 $name為空。條件替代更容易處理選擇或命令中的手工排除參數(shù)。例如,如果使用下列命令,而用戶不提供參數(shù),則該命令就失效了:my_comma ndmy_p arameter=$my_value相反,如果你使用下列命令,則該命令有效:my_comma nd my_p arameter=$my
29、_value在手工排除參數(shù)時(shí)可以使用相同的技巧,只要參數(shù)包含在單引號(hào)'內(nèi),并一次只顯示一個(gè)選項(xiàng)或只有一個(gè)選項(xiàng)有效。 Win dows , Dialog Boxes 和 Con tai ner 的特殊命令Windows(窗口),Dialog Boxes (對(duì)話框)和 Container (界面對(duì)象區(qū))都有特殊命令:start (開始),executi on (執(zhí)行)和finish comma nd(完成)。當(dāng)顯示對(duì)象時(shí) ADAMS/View 會(huì)自動(dòng)執(zhí)行開始命令,而且當(dāng)對(duì)象被關(guān)閉時(shí) ADAMS/View會(huì)自動(dòng)執(zhí)行完成命令,執(zhí)行命令通過in terfacedialog_box/w in do
30、w/c ontainer execute命令來執(zhí)行。開始和完成命令有助于對(duì)話框的初始化設(shè)置,當(dāng)界面對(duì)象被顯示時(shí)將 缺省值放入數(shù)據(jù)區(qū)。而完成命令使當(dāng)對(duì)象不顯示時(shí),幫助清除參數(shù)設(shè)置。執(zhí)行命令是指在點(diǎn)擊缺省的按鈕“OK”和“Apply ”是所執(zhí)行的命令。11-4(5)編輯命令在對(duì)話框編輯器的命令區(qū)按下鼠標(biāo)右鍵就會(huì)彈出選擇菜單,如表 所示。通過菜單可以對(duì)命令進(jìn)行編輯。表11-4編輯器選擇菜單命令功能Refere nces顯示和插入$xxx的對(duì)象文本P ick選擇對(duì)象并在命令中插入名字Browse顯示數(shù)據(jù)庫(kù)向?qū)Р⒃诿钪胁迦胨x的名字Cut出去選擇的文本并將它放在剪切版上Copy拷貝選擇的文字到文字緩沖
31、區(qū)P aste從剪切版上粘貼到光標(biāo)位置Edit顯示文本編輯器(缺省的,限于UNIX)5。測(cè)試對(duì)話框用戶在將定制好的對(duì)話框保存到數(shù)據(jù)庫(kù)以前進(jìn)行測(cè)試,具體方法為:(1 )在Option 菜單中,選擇 Test Box按鈕,ADAMS/View 會(huì)顯示該對(duì)話框。(2 )測(cè)試想要執(zhí)行的對(duì)話框命令。6。保存對(duì)話框在用戶定制好自己的對(duì)話框之后,必須要對(duì)對(duì)話框進(jìn)行保存。點(diǎn)擊在Dialog Box 菜單中的Export 按鈕,然后選擇 Comma nd File按鈕,可以 將用戶對(duì)話框保存到適當(dāng)?shù)奈恢靡员阆麓握{(diào)用。7。加載和顯示對(duì)話框用戶可以通過以下命令加載已經(jīng)保存好的對(duì)話框:在File菜單中,選擇impor
32、t按鈕,然后讀入所需的對(duì)話框命令文件,用戶定制的對(duì)話框就被加載到數(shù)據(jù)庫(kù)中。使用數(shù)據(jù)庫(kù)向?qū)Э梢燥@示對(duì)話框:標(biāo)準(zhǔn)的ADAMS/View 對(duì)話框列在前面,以字母順序,接著是用戶定制的對(duì)話框,顯示對(duì)話框的步驟為: 在Tool菜單中點(diǎn)擊 Dialog Box 按鈕,然后選擇Dis play按鈕,則會(huì)出現(xiàn)數(shù)據(jù)庫(kù)向?qū)?,其中列出了所有?duì)話框。(2)選擇所需對(duì)話框,并選擇OK按鈕。11.2宏命令的使用宏命令實(shí)際上是一組命令集,它可以執(zhí)行一連串的ADAMS/View 命令。創(chuàng)建宏命令時(shí),首先按順序列出想執(zhí)行的ADAMS/View 命令的清單,然后就可以將這些命令寫成宏命令的形式。在宏命令中,也可以使用參數(shù)。每次使
33、用宏命令時(shí),都將通過參數(shù)將數(shù)據(jù)傳給宏。當(dāng)執(zhí)行帶有參數(shù)的宏命令時(shí),ADAMS/View 將所提供的值替代到宏命令中。ADAMS/View 對(duì)宏命令與其他的 ADAMS/View 的命令一樣,可以在 命令窗口中輸入宏命令, 從命令向?qū)е羞x擇它。 也可將它包含在其他的宏命 令中,或者從自己的定制菜單、對(duì)話框或按鈕中執(zhí)行它。使用宏命令可以實(shí)現(xiàn)以下功能:自動(dòng)完成重復(fù)性的工作。為ADAMS/View 建立模型數(shù)據(jù)交換功能。自動(dòng)創(chuàng)建整個(gè)模型??焖俳C(jī)械系統(tǒng)的多個(gè)變量。11.2.1創(chuàng)建宏命令通??梢酝ㄟ^三種方式創(chuàng)建宏命令:記錄方式、使用宏編輯器來編輯和 創(chuàng)建宏命令、通過導(dǎo)入文件來創(chuàng)建宏命令。1。以記錄方式創(chuàng)
34、建宏命令(1)記錄宏a.通過如下菜單路徑: Tools =Macro =Record/Replay =Record Start ,開始記錄宏命令。b.執(zhí)行想在宏命令中進(jìn)行的操作。c.通過如下菜單路徑:Tools =Macro =Record/Replay =Record Stop ,可以停止記錄宏。(2)回放記錄的宏通過如下菜單路徑可以回放記錄好的宏命令:Tools =Macro =Record/Re play =Execute Record Maro 。.選擇Use Macro Name選項(xiàng)。必須注意:所輸入的命令串的名字必須是唯(3) 保存記錄的宏通過如下菜單路徑,Write Record
35、 MacroTools = Macro =Record/Replay =,將ADAMS/View 宏命令保存為macro.cmd 的命 令格式。2。使用宏編輯器來編輯和創(chuàng)建宏命令使用宏編輯器是創(chuàng)建宏命令的另一種方式,具體創(chuàng)建步驟為:(1)選擇如下菜單命令: Tools =Macro =Edit =New 或者M(jìn)odify,然后出現(xiàn)宏命令編輯器窗口,如圖11-8所示。.(2)如果你選擇Modify,則會(huì)出現(xiàn)數(shù)據(jù)庫(kù)向?qū)А?3)如果在創(chuàng)建新的宏,則在Macro Name 編輯框輸入宏的名字。(4) 在Comma nd 編輯框,輸入執(zhí)行宏命令的命令串,使用宏的名字,一的,不能重新定義一個(gè)已存在的命令,
36、但可以在已存在的命令中添加新的 關(guān)鍵詞。例如,輸入“ MARKER CREATE”就是無效的,因?yàn)椤?MARKERCREATE”是早已存在的命令,但輸入“MARKER GENERATE ”就是有效 的。(5) 指明整個(gè)宏命令是否能用單個(gè)的“Un do ”命令撤銷。對(duì)于非常大 的宏命令,單個(gè)的"Un do ”會(huì)消耗大量的內(nèi)存,甚至沒有使用撤銷操作都 會(huì)顯著地減慢宏命令的執(zhí)行速度。一般情況下是在初始化創(chuàng)建和調(diào)試階段采用“ Undo=yes ”,當(dāng)確定宏命令可以正常工作之后,切換到“Undo=no ” 來提高運(yùn)行速度。叫 Create /¥ie> lacco .Comman
37、dsRIicro NwntHACEOJUse Macro n.ani«Wrap Ln uivdoVts 環(huán)(6)在命令文字區(qū)域,輸入要執(zhí)行的命令,然后選擇OK按鈕。OKApr>iyi:Cftn.ctl i B 3。通過導(dǎo)入文件來創(chuàng)建宏命令通過導(dǎo)入文件來創(chuàng)建宏命令是創(chuàng)建宏命令的第三種方式。具體步驟如下:(1)選擇如下菜單路徑顯示導(dǎo)入宏對(duì)話框:Tools =Macro =Read,導(dǎo)入宏對(duì)話框如圖11-9所示。在Macro Name編輯框中輸入ADAMS/View 將在當(dāng)前數(shù)據(jù)庫(kù)中保存宏的名字。(3)在File Name編輯框中輸入包含要執(zhí)行命令的文件。 在User En tere
38、d Comma nd編輯框中指明將要執(zhí)行宏命令的命令 串,如果不輸入命令串的名字,則缺省為宏命令的名字。(5)指明整個(gè)宏命令能否被單個(gè)的“Undo ”命令撤銷,對(duì)于大的宏命 令,單個(gè)的"Un do ”命令會(huì)消耗大量的內(nèi)存或者顯著地減慢宏命令執(zhí)行的 速度。指明包含宏命令幫助文件或者輸入字符串來描敘宏。確信你沒有創(chuàng)建過期的對(duì)話框,從Create Panel選擇菜單中選擇a ”no(8)選擇“ 0K”。.q Kacro Readfile ITajrieUser Entered CommandK«lp FileCreate F血OKCuicftI1122在宏命令中使用參數(shù)參數(shù)通宏命
39、令的參數(shù)是在實(shí)際執(zhí)行宏命令時(shí)提供給系統(tǒng)信息的占位符, 常以” $”開頭,后面跟著參數(shù)的名字。可以定義多個(gè)參數(shù),也可以將一個(gè) 參數(shù)定義多次。ADAMS/View 將當(dāng)創(chuàng)建宏命令時(shí),ADAMS/View 掃描命令文本以確定所有的參數(shù)。當(dāng) 執(zhí)行宏命令時(shí),必須為參數(shù)提供值,或者它們有缺省值,數(shù)值替代命令中參數(shù)的位置,然后執(zhí)行命令。如果在命令中多次使用相同的 參數(shù),ADAMS/View 將用同一個(gè)值替代每一個(gè)參數(shù)出現(xiàn)的地方。1。帶參數(shù)宏命令的例子F面是一個(gè)宏命令的例子, 用它可以解釋如何用宏命令改變力的大小和 模型中約束圖標(biāo),宏中的命令名為"icon_size ”,約束名為"size
40、 ”。con stra int attributes con stra int_n ame=.*size_of_ic on=$sizeforce attributes force_n ame=.*size_of_ic on=$size當(dāng)輸入命令:icon size=25ADAMS/View 執(zhí)行命令為:con stra int attributes con stra int_n ame=.*size_of_ic on=25force attributes force_n ame=.*size_of_ic on=252。擴(kuò)展參數(shù)值在某些情況下,ADAMS/View在將參數(shù)替代到命令中之前,可以重
41、新定義和擴(kuò)展參數(shù)值,但ADAMS/View 不會(huì)改變數(shù)值。在宏命令中替換時(shí),ADAMS/View不會(huì)轉(zhuǎn)換單位,它會(huì)直接將數(shù)值輸入到命令中,命令本身會(huì)轉(zhuǎn)換單位。ADAMS/View 在將參數(shù)替換到宏命令中時(shí),會(huì)將數(shù)據(jù)庫(kù)名擴(kuò)展為全名,擴(kuò)展名使用“來分割名字。使用“ ”可以讓程序直接訪問數(shù)據(jù)庫(kù)值。例如:下面例子是包含參數(shù)“n ame ”的宏命令“ Ip art ”list_ info part part_n ame=$ name當(dāng)輸入下列命令時(shí):Ipart n ame=left_wheelADAMS/View 將全名left_wheel替換$name,并執(zhí)行命令:List info part par
42、t_n ame=.mod1.1 ef_wheel3。通用參數(shù)格式通用參數(shù)格式為$ name:q1 : q2 : q3 :其中:name為參數(shù)的名字,q1 , q2 , q3是說明參數(shù)特征的一個(gè)或多個(gè)限定詞。單引號(hào)和限定詞是可選擇性的,下面是可能的四種格式:$name ;$ name '$name: : q1 : q2 : q3 :;$ name:q1 : q2 : q3 :'4。參數(shù)命名規(guī)則參數(shù)名必須以字母開頭,余下的名字可為字母(a Z,A Z),數(shù)值或者下劃線,結(jié)尾字母可為字母,數(shù)字,不能是下劃線。因而,$P、 $P1 和$PART_1是合法的,而$PART#1和$1P是不
43、合法的。5。參數(shù)限定詞及其格式限定詞出現(xiàn)在參數(shù)第一次出現(xiàn)的時(shí)候,以對(duì)其屬性進(jìn)行控制。限定詞是可選的也只能在參數(shù)第一次出現(xiàn)時(shí)使用。參數(shù)的限定詞為:Type(類型)Range(范圍)Count(值) Default(缺?。?Type QualifierType qualifier是用戶必須輸入的類型,其格式為:T=typeT=typ e(additi onal data)或者 database object其中:type 是 basic type 、database object typeclasstype ,Additional data是可選的或者需要由數(shù)據(jù)類型決定。BasicType 包括:
44、 real、 integer 、 location 、 orientation、 string 、 function 、list(str1 , str2 , str3,)和 file(path wildcard) 。指明Database Object Type意味著用戶必須輸入已存在該類型對(duì)象的名字,其前綴必須為new_來指明該類型的新對(duì)象的名字。例如,t=marker 為已存在的 marker 點(diǎn)的名字,新 marker 點(diǎn)的名字寫為 t=new_marker 。F面是另外一些例子:$stiffness : t=real$counter : t=integer$end_point : t=l
45、ocation$attitude : t=orientation$mat : t=marker可以通過下列步驟在 ADAMS/View 中察看database object types 類型:在 Tools 菜單中,選擇 Function Builder 。從選擇菜單中,選擇 Misc.fu nction 。從選擇菜單的列表中,選擇SELECT TYPE。選擇 Assist。在Assist對(duì)話框中,輸入 all,然后選擇0K。選擇 Evaluate 。然后出現(xiàn)所有對(duì)象類型的列表。Database Object-Class Ty pe包括下面一些:ADA7S_CuLput_Fi 於BodyMea
46、sure VectorElementtquat OrtExp ression _p rimiiiveFeatureMode linephiG_Lsftr_ln'fertaceOpfimizaiioiiiiFunctuo nP tollingPoint to Point ForcePos lienForceReference FrameFrame_DispMyFuiictkin CentainerGtornelry6伺p hic_Ll3crJntcrfaccHighcr_P?ir_Gor1acrM咅a Min eHuntime_Me0stirsSDlid_Ge0rnetryIl aUVa
47、riable ClassW re_GeoTierry Range Qualifiers一個(gè)range qualifier指明參數(shù)的取值范圍,它僅僅適用于數(shù)值類型,其格式如表11-5所示:表 11-5 range qualifier參數(shù)格式格式含義GT=r大于rGE=r大于等于rLT=r小于rLE=r小于等于r Cou nt QualifiersCount Qualifiers指明數(shù)據(jù)的個(gè)數(shù),其格式如表 11-6所示:表 11-6 Count Qualifiers 參數(shù)格式格式含義C=0大于或等于1C=n等于nC=n ,0大于或等于 nC=n ,m從n至U m Default Qualifier
48、sDefault Qualifiers 為可選限定詞,如果參數(shù)沒有缺省的話,用戶必須輸入一個(gè)值來執(zhí)行宏命令。有三種類型的缺省限定詞:Con sta nt為可選的,如果用戶沒有提供參數(shù)值時(shí),ADAMS/View使用的缺省值。格式為:D=valueUp date為可選的,如果用戶沒有提供參數(shù)值時(shí),ADAMS/View 將使用最后一次使用的值。格式為:U=valueDatabase object自動(dòng)產(chǎn)生并應(yīng)用缺省的database objects 。格式為:A6。缺省參數(shù)特性在命令文本的第一次出現(xiàn)的參數(shù)定義了參數(shù)的特性。如果首次出現(xiàn)時(shí)有而參數(shù)出現(xiàn)在“=”限定詞,則該限定詞將決定參數(shù)的特性, 如果沒有
49、限定詞,default ,如果參數(shù)后,則該參數(shù)從前面的命令參數(shù)繼承了type , count和 既沒有限定詞,也沒有出現(xiàn)在“ =”后,則缺省為字符串。在下面的例子中,參數(shù)“ $text ”缺省為字符串,因?yàn)樗鼪]有限定詞,也沒有出現(xiàn)在命令中。參數(shù)“$nu mbers ”有限定詞,指明了它一個(gè)或多個(gè) 是大于零的整數(shù)。參數(shù)“ $part_1 ”是一個(gè)“ par ”,因?yàn)樗霈F(xiàn)在“=”后, 繼承了前面參數(shù)“ part_name ”的類型。參數(shù)“ $part_2 ”缺省為字符串, 因?yàn)樗鼪]有出現(xiàn)在“=”后,參數(shù)“ $part_3 ”和“ $part_4 ”有都是part 。! Parameter $te
50、xt is a string! $numbers : t = integer : c= 0 : gt = 0listinfo part part_n ame=$part_1 , $part2listinfo part part_n ame=$part_3 : t=part , $part_4 : t=part11.3循環(huán)命令和條件命令A(yù)DAMS/View 命令語言包含有條件與循環(huán)結(jié)構(gòu)語句,可以用它實(shí)現(xiàn)邏輯判斷和循環(huán)功能。 它們可以用在菜單命令、 對(duì)話框命令和用戶自己編寫的宏命令程序文件中。11.3.1循環(huán)命令循環(huán)命令的主要形式有以下兩種:FOR/ENDWHILE/END1。FOR/END 循環(huán)
51、結(jié)構(gòu)FOR/END循環(huán)結(jié)構(gòu)的一般格式有兩種,分別如下:(1)對(duì)參數(shù)數(shù)值的循環(huán)操作:FOR VARIABLE NAME=var START VALUE=REAL &INCREMENT VALUE=REAL &END VALUE=REALEND格式中:START_VALUE , INCREMENT_VALUE 和 END_VALUE 可以是值為實(shí)數(shù)的表達(dá)式。INCREMENT_VALUE可以是正數(shù),也可以是負(fù)數(shù),缺省值為1。在循環(huán)體內(nèi)的命令可以調(diào)用循環(huán)變量作為其可用的任何實(shí)數(shù)變量。格式應(yīng)用實(shí)例如下:variable set vanable_name=$_self.num integ
52、er=1for variable name=i start=1 end=6part create ngid_body name_and_ position p art_name &=(eval("ball_"$_self.num) & location=(LOC_RELATIVE_TO(0,0,100*i,.my_model.ground) & orientation=0,0,0 & relative_to=.my_model.groundvariable set variable_name=$_self.num integer=(eval($_self.num+1)endvariable delete variable_name=$_self.num在上例中,變量i從1循環(huán)到6,一次建立了 ball_1到ball_6共6個(gè)part,其分別相對(duì)于 ground 的位置為(0, 0, 100 )到(0, 0, 600),在循環(huán)體中,變量$_self.num 進(jìn)行了自加。(2)對(duì)一組模型對(duì)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 產(chǎn)品保修合同
- 大型美食城招商合同范本
- 商住樓物業(yè)管理合同
- 汽車維修合同書范本
- 鍋爐工合同書
- 我要出租房屋租賃合同范本
- 室內(nèi)場(chǎng)景識(shí)別定位約束條件下的手機(jī)實(shí)例化AR方法研究
- 2025年外研版三年級(jí)起點(diǎn)七年級(jí)歷史下冊(cè)階段測(cè)試試卷含答案
- 2025年浙教新版九年級(jí)歷史下冊(cè)階段測(cè)試試卷含答案
- 2025年粵人版選修二地理上冊(cè)階段測(cè)試試卷
- 籃球俱樂部合伙協(xié)議
- 電力基建復(fù)工安全教育培訓(xùn)
- 2018注冊(cè)環(huán)保工程師考試公共基礎(chǔ)真題及答案
- 勞務(wù)經(jīng)紀(jì)人培訓(xùn)
- 如何提高售后服務(wù)的快速響應(yīng)能力
- 成人氧氣吸入療法-中華護(hù)理學(xué)會(huì)團(tuán)體標(biāo)準(zhǔn)
- Unit-3-Reading-and-thinking課文詳解課件-高中英語人教版必修第二冊(cè)
- 高數(shù)(大一上)期末試題及答案
- 婚介公司紅娘管理制度
- 煤礦電氣試驗(yàn)規(guī)程
- 物業(yè)客服培訓(xùn)課件PPT模板
評(píng)論
0/150
提交評(píng)論