![ADAMS二次开发-_第1页](http://file3.renrendoc.com/fileroot_temp3/2022-3/5/51f67192-6af2-4e38-b382-8a6fe0952c3a/51f67192-6af2-4e38-b382-8a6fe0952c3a1.gif)
![ADAMS二次开发-_第2页](http://file3.renrendoc.com/fileroot_temp3/2022-3/5/51f67192-6af2-4e38-b382-8a6fe0952c3a/51f67192-6af2-4e38-b382-8a6fe0952c3a2.gif)
![ADAMS二次开发-_第3页](http://file3.renrendoc.com/fileroot_temp3/2022-3/5/51f67192-6af2-4e38-b382-8a6fe0952c3a/51f67192-6af2-4e38-b382-8a6fe0952c3a3.gif)
![ADAMS二次开发-_第4页](http://file3.renrendoc.com/fileroot_temp3/2022-3/5/51f67192-6af2-4e38-b382-8a6fe0952c3a/51f67192-6af2-4e38-b382-8a6fe0952c3a4.gif)
![ADAMS二次开发-_第5页](http://file3.renrendoc.com/fileroot_temp3/2022-3/5/51f67192-6af2-4e38-b382-8a6fe0952c3a/51f67192-6af2-4e38-b382-8a6fe0952c3a5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、ADAMS二次开发的笔记一、定制用户界面1、首先要知道,再ADAMS/VIEW中,所有的界面对象都是以“层次结构”出现的,并且保存在特定的模型数据库中,在用户制定自己的用户界面的时候,最好将界面对象保存在一个你自己的数据库中,创建数据库的方法是:在command navigatorlibrarycreate. 如果不建立自己的数据库,则所有的界面对象都默认的保存在GUI数据库下。2、要正确理解“窗口”“对话框”的概念,他们是不同的一个概念。3、我们这里讲的制定用户界面,是指制作自己的菜单和对话框,通常使用菜单编辑器和对话框编辑器来完成。4、制定自己的菜单,你要明确的是:你在制定自己的菜单的时候
2、,菜单上出现的button的先后顺序以及menu的先后顺序是与你写菜单命令的先后顺序一致的。即:是以大纲形式来表示二、菜单语法的解释:1、菜单对象:菜单、按钮(图表按钮、toggle button分割线(separator分别用关键词: menu buttontoggleseparator.定义例子:MENU1 &my_menu2003NAME=my_menu2003HELP=A Menu TestBUTTON2 &My_button1NAME=my_button_1HELP=test of my_button_1CMD=Adams Command of my_button_1
3、Separator2BUTTON 2 &My_button2NAME=my_button_1HELP=test of my_button_1CMD=Adams Command of my_button_1Separator2MENU2 &son menu_1BUTTON3 &Son Button_1NAME=Son_Button_1CMD=Adams Command of Son Button_1BUTTON3 &Son Button_2NAME=Son_Button_2CMD=Adams Command of Son Button_2在编写这些命令的时候要注意
4、MENU BUTTON SEPARATOR TOGGLE这些关键字要大写,另外在MENUn其中的n与MENU中间不允许有空格。所制定的菜单按钮,都会执行某些命令,而这些命令是靠CMD=来确定的。如果没有命令,则这个按钮就不会执行命令。2、制定对话框1首先你要确定在adams对话框中可以创建的界面对象包括那些,一共16种,不含默认的话有12种。2创造对话框的方法:可以利用对话框编辑器(toolsdialog boxcreate3之后,可以在新创建的对话框添加各种不同的界面对象,进行设计布局,外观、对话框对象的大小调整以及需要执行的命令的录入。只有输入命令,才可以点击对话框中的相应的按钮来执行对应
5、的操作。(这是在先创建对话框的条件下需要这样操作,如果是先创建一个macro之后通过修改macro的对话框就不要这样了4下面对利用“dialog box”来创建的对话框中包含的界面对象进行一个简要地介绍: Label-在对话框中可以显示文字或试图像(但要注意图像的格式Field-作用是在创建完对话框之后,希望操作者在其中输入的文字或是数值。Button-激活操作;并且可以在按钮上面书写文字或是添加图像。Toggle button-开关按钮(也可以理解成是:勾选按钮Separator-画一个水平线Slider-滑动条Option menu-从多个选项中选择一个Button stack-包含多个按
6、钮,可以通过右键弹出所有按钮。Radio box-状态按钮Container-可添加信息。5在对话框中使用command当你创建完一个对话框的时候,大多数的界面对象都对应着一个adms/view命令,这些命令是为了完成用户所希望的一些功能(或改变模型、或改变用户输入数据、或作出选择为了使对话框中的某些界面对象与adams/view中的命令相对应,我们可以用两种方法来得到:可以用cmd给对象创建命令;可以通过命令导向来找到所需要的命令,一旦找到这个命令你就可以在log 或是命令窗口中将他们拷贝到命令编辑框。! Adams/view的对话框在执行命令前,是要进行一些“文本”的替代操作。此处的文本指
7、的是:我们在创建对话框的时候所添加的文本。而在执行命令的时候,adams/view用界面对象的自身属性值来替代“文本”,并形成一个含有对话框自身属性(不含有文本的命令。其实,可以简单的理解成,用我们输入的文本去替换那些相应的对象来执行命令。保存对话框:在用户制定好自己的对话框之后,必须要保存对话框。点击dialog boxexportcommand file.方便下次调用。打开一个自己定义的对话框:toolsdialog boxdispay. Or adams/viewfileimportcommand file.宏命令的使用:1、要理解macro命令本质也是一个命令(集。2、创建macro的
8、时候,首先要按“顺序”列出想要执行得adams/view命令的清单(这一点与创建菜单类似,然后按着这个顺序将命令写成macro的形式。3、创建macro的时候,macro中也可以带有参数的参数macro。所以,每次使用macrocommand的时候,都可以人为的输入参数进而将数据传递给macro。4、Macro command 和其他adams/view命令一样,可以在命令窗口中输入(F3也可以通过命令导航选择。(注:所有的命令都可以有命令窗口输入或是从命令导航中选择重点讲解利用macro edit来创建macro:在宏编辑器中的command编辑框中,输入的是一后执行该macro的一个命令标
9、识,如果使用macro的名字为命令标示,则需要选择User Macro Name这个选项。要注意的是,命令标示必须是唯一的,数据库中没有的表示。宏命令中的参数:1、是以$开头,后面这个参数的名字,可以定义多个参数,也可以将一个参数定义多次。2、在执行macro command的时候,首先在macro 参数出现的地方用,参数值去替代,然后执行命令。3、例子:用macro来改变力的大小的图标,而要改变力的大小的数值,需要定义变量。Constraint attributes constraint_name=_ .*size_of_icon=$sizeForce attributes force_na
10、me=_ .*size_of_icon=$size以上是改变力的图标的大小的macro command下面介绍一个改变力的大小的macro command。首先:你要用一个设计变量来表示力的大小DV_1!$size:t=realVariable modify variable_name=_ real_value=$size扩展参数值:1、何为扩展参数值?2、参数限定词及其格式:1限定词只能出现在“macro参数第一次出现的地方”。是对参数的属性进行控制的。2参数的限定词包括:type range count default。其中type是用户必须输入的type包含:basic type dat
11、abase object typedatabase object class type其中:basic type中realintegerlocationorientationstringfunctionlist(str1,str2,file(path wildacardDatabase object type:用户所输入的必须是数据库已经存在的该类型对象的名字,而数据库中该类型对象的名字如果没有存在,则必须用new_ 来表示。注:一个宏参数如果他没有限定词qualifier,也没有出现在命令行=后,则她的缺省值默认为“字符”,当没有限定词但是出现在=后,则该参数的类型与前面命令参数的类型相同。
12、循环命令和条件循环:当for-end循环语句,使表示对象的时候,要注意:此时的循环变量值的是boject中所有的type 类型的对象,也就是说object中类型位type的对象作为循环语句的变量。他和for-end表示数值循环是不同的。二次开发实例1、二次开发通常需要三种程序文件:菜单文件、对话框文件、adams命令文件,并且除了这三个文件以外还需要一个模块的启动文件和一个adams环境的初始化文件。(如何将菜单与用macro命令对话框有机的联系起来MENU1 &locationBUTTON2 &LOCATIONCMD=interface dialog_box display
13、dialog_box=MACRO_1因为你一建立一个macro后,就会自动生成一个对话框,所以,你只要做的事情只有一个:就是用菜单来显示这个对话框就可以了。设定二次开发模块的运行路径,启动adams/view,并调用文件对adams环境进行二次开发相关的初始化。Set MDI_VCJ=d:cvj-!设定二次开发模块的运行路径(在d盘的cvj文件夹下Set MDI_CMD=mdi-!启动adams/viewcd %MDI_CVJ%copy cvmain.cmd aview.cmd-!调用cvmain.cmd文件del aview.cmd通过以上代码写成的命令cv_strat.bat的作用是:通过
14、运行该文件来启动本二次开发的模块。对adams/view进行初始化的命令cvmain.cmd的代码:If cond=(!db_exists(“.MDI.cvj_dir”Variable create variable_name=.MDI.cvj_dir string_name=(eval(“d:”/”/”cvj”Defaults units length=mm angle=deg force=newton mass=kg time=secDefault units coordinate_type=cartesian orientation_type=body313Macro read file
15、_name=(eval(.MDI.cvj_dir/”/”macros”/”mygibell”&Macro=mygibellMacro read file_name=(eval(.MDI.cvj_dir/”/”macros”/”tripodemac”&Macro=tripodemacMacro read file_name=(eval(.MDI.cvj_dir/”/”macros”/”ballloopmac”&Macro=ballloopmacMacro read file_name=(eval(.MDI.cvj_dir/”/”macros”/”/”gelash”&
16、;Macro=gilashMacro read file_name=(eval(.MDI.cvj_dir/”/”macros”/”/”didyn”&Macro=gidynMacro read file_name=(eval(.MDI.cvj_dir/”/”macros”/”/”gireqlash”&Macro=gireqlashMacro read file_name=(eval(.MDI.cvj_dir/”/”macros”/”/”gireqcust”&Macro=gireqcust读入菜单命令:interface menbar读入对话框的命令:file (comma
17、nd read file_name思考:读入的命令如何与读入的对话框联系起来。要注意default里面有哪些常用的命令可以用,并且还要与一些其他相似的命令进行对比分析,分析出有哪些差异以及各自用在什么环境下。还有一点需要注意的是:在第11章的事例中,前面已经定义了缺省单位和缺省坐标系为什么还要在第29页建立模型的时候还要设置单位和坐标系?这里需要指出的是,前面的缺省单位和坐标系相当于我们在打开adams/view时,如果不进行任何操作系统默认的单位和坐标系,而后面的是相当于我们在进行建模的时候,建模的基准参考坐标系,而在这里只需要定义建模的缺省坐标系而不需要定义单位。制定菜单的时候:要注意顺序
18、先建立菜单(主菜单、下拉菜单然后再建立与这个下拉菜单对应的按钮,之后再建立在主菜单下的另一个下拉菜单,并建立与该下拉菜单对应的按钮,要注意这个顺序,不要一开始把所有下拉菜单建立完之后然后再建立按钮。换句话说,对应的按钮应该在对应的下拉菜单下建立,而不能把顺序搞错。另外一个需要注意的是:你在建立下拉菜单和对应的按钮的时候,出现在界面上的顺序是与你写的命令的顺序是一致的。在制定菜单或是按钮的时候,当需要输入该按钮所要执行的命令的时候,要CMD大写,如果命令十多行的,在每一行前面都得又CMD。下面具体介绍用对话框和adams command来进行建模的方法:等速万向节动力学模型的建立,是该系统的技术
19、关键之一。在进行建模的时候,为了保证仿真分析的真实性,万向节的动力学模型的各构建之间的相互约束没有被定义成理想的几何约束关系,而是被定义为基于接触碰撞的力约束关系,即构件之间通过接触碰撞力和摩擦力相互约束,而不存在其它的相互关系。问题:在对话框中出现了,下拉按钮或是多选、单选按钮的时候,如何与宏命令的参数相联系起来?当一个对话框建立完成之后,如何将对话框的可编辑的控件与程序变量联系起来。我们可以在对话框的execution中,编辑命令来使选项按钮所对应的值来与变量对应起来,option button他有一个默认的变量名位$option_i(i是按钮的序号在编辑macro命令的时候,我们可以在c
20、ommand区域中,右击-references可以选择一些可以替换对象的文本$xxx.所谓替换对象的文本可以理解称:用$xxx所可以取的值去替换$xxx。在adams/view中,所有的界面对象多是默认存储在.gui库中。建议:当用户进行一个二次开发或者是制定自己的界面的时候,我们最好是建立一个属于自己的数据库来存放新的界面对象。注意;在macro编辑对话框中书写的command当在修改宏的对话框的时候,可以看到此时在宏对话框修改得command区域命令的书写会有些不同。最明显的就是宏参数的书写。替换文本的理解:1替换文本的作用是:在执行命令的时候,以$为标示的替换文本只是起到指明位置的作用。 在真正执行命令的时候,替换文本竟会被替换,也就是说用于替换文本相对应的具体 的“值”来替代替换文本。 2)替换文本的类型: $object_name-表示的是界面对象的当前值,也可以理解成是用于当前界面对象所对应的 替换文本的属性值来替换该文本。 Field-当前的数据区内的内容 Optionmenu -当前选定的数据或数值 Radiobox-当前选定的数值或数据 Toggle buuton-当签订一个开关
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 制梁劳务合同范例
- 信贷资产信托合同范本
- 乙醇燃料的成本管理和降本增效
- 不带司机租车合同范本
- 全款买车销售合同范本
- 兼职模特合同范例
- 冷库设备购销合同范本
- 农村承包鱼塘经营合同范例
- 电影制片人聘用合同范本
- 徐州白云区门面出租经营合同范本
- 人教版小学数学(2024)一年级下册第五单元100以内的笔算加、减法综合素养测评 B卷(含答案)
- 2025江苏常州溧阳市部分机关事业单位招聘编外人员78人历年高频重点提升(共500题)附带答案详解
- 2024年度体育赛事赞助合同:运动员代言与赞助权益2篇
- 智研咨询发布:2024年中国新疫苗行业市场现状、发展概况、未来前景分析报告
- 2025届西藏林芝一中高三第二次诊断性检测英语试卷含解析
- 中国传统文化非遗文化中国剪纸介绍2
- 药企销售总经理竞聘
- 开封市第一届职业技能大赛健康照护项目技术文件(国赛)
- 公路电子收费系统安装合同范本
- 医院培训课件:《伤口评估与测量》
- 期末试卷(试题)-2024-2025学年四年级上册数学沪教版
评论
0/150
提交评论