资源预览内容
第1页 / 共38页
第2页 / 共38页
第3页 / 共38页
第4页 / 共38页
第5页 / 共38页
第6页 / 共38页
第7页 / 共38页
第8页 / 共38页
第9页 / 共38页
第10页 / 共38页
亲,该文档总共38页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
二次开发-自定义界面主要内容关于ADAMS/View的菜单和对话窗使用Menu Builder 修改菜单;使用 Dialog-Box Builder 自定义对话窗使用ADAMS/View的宏ADAMS/View的菜单和对话窗 在ADAMS/View中所见到的大部分的窗口、菜单或对话窗都是ADAMS/View模型数据库的界面对象。使用ADAMS/View命令、Menu Builder、Dialog-Box Builder,就可以修改、删除或加到标准的窗口、菜单或对话窗。ADAMS/View的菜单和对话窗 可做如下改变:去掉菜单中很少使用的部分;加上新的快捷键以显示经常使用的标准对话窗加上一系列的菜单和对话窗以执行自己的宏(MACRO)或命令文件;生成应用程序的用户化界面。界面的概念ADAMS/View中界面对象ADAMS/View中的界面是如何起作用如何改变界面改变后的界面如何存储 ADAMS/View中界面对象 模型中大部分的窗口、菜单或对话窗等界面对象都是存储在模型的数据文件库的子系统中。界面对象存储在名为GUI的库中窗口和对话窗为最顶层的两个界面对象,例如,模型的主窗口命名为main,其数据库的全称为.gui.main。窗口和对话窗都可以包含其它的界面对象,如按钮、标签等等,窗口中还可以包含工具栏和菜单栏。ADAMS/View中界面对象模型中大部分的菜单和对话窗都可在数据库中查到,也可修改,某些对话窗不能修改它们。如Database Navigator(数据库导航器)Dialog-Box Builder(对话窗发生器)Command Navigator(命令导航器)Data Browser in the Plotting WindowFile Selection Dialog Box(文件选择对话窗)Coordinate Window(坐标窗口)ADAMS/View的界面如何起作用使用ADAMS/View界面建立或修改模型时,界面执行一系列ADAMS/View命令通过控制建立或修改的对话窗所提交的命令来管理该对话窗的功能。如何改变界面 工具:菜单修改器(Menu Builder)对话窗发生器(Dialog-Box Builder)是交互式的工具,可以用来自定义界面,快速打开并修改大部分的界面对象及其功能。在命令导航器(Command Navigator)中的命令interface包含了所有的界面对象的生成、删除及修改的过程。改变后的界面如何存储 存储为BIN文件方式:存储为标准的模型数据文件aview.bin,可与其它人共享,既启动ADAMS/View都可使用存储为自己的模型数据文件,打开时才能使用存储为CMD文件或菜单文本文件:可以在需要的时候直接调用对话窗发生器可以export菜单修改器中可以用export 了 使用Menu Builder 修改菜单菜单输入的语法生成或修改一个菜单菜单输入的语法菜单修改器(Menu Builder)采用行编格式显示菜单,通过直接修改文本文件中的每一行修改菜单。文本中每一行定义一个对象及其名字或指定其父对象的有关信息。为明显起见,ADAMS采用交错显示的方式。菜单输入的语法在菜单文本中四种对象:菜单(Menu)按钮(Push button)切换按钮(Toggle button)分割线(separator) 如:MENUn,BUTTONn,TOGGLEn,SEPARATORn n:为1到10之间的整形数,定义对象显示的菜单的层数 语法结构:MENUn TITLE NAME=name HELP=helpBUTTONn LABEL:ACCELERATOR NAME=name HELP=help CMD=commandTOGGLEn TITLE NAME=name HELP=help STATE=state CMD=command例子 MENU1 &Help NAME=help HELP=Get Help on ADAMS BUTTON2 &About. HELP=Display product info CMD=int dia disp dia=.gui.about_adamsMENU1 &Build NAME=build HELP=Create the model entities that make up your design MENU2 &Model NAME=model BUTTON3 &New. NAME=model_new HELP=Create a new model CMD=int dia dis dia=.gui.model_cremod par= 生成或修改菜单生成或修改菜单方法:菜单修改器(Menu Builder)修改菜单的文本文件,然后再输入到ADAMS/View中即可。使用菜单修改器生成或修改菜单,如下:在菜单栏中选择Tools,然后选择Menu,然后选择Modify;菜单修改器出现,显示主菜单。移动到您要修改的部分;修改菜单从菜单修改器的Menu Bar中,选择Apply。Dialog-Box 自定义对话框ADAMS/View使用的对话窗中包含很多类型的界面对象,如 Labels、Fields、buttons等,利用它们生成或修改对话窗生成、修改对话窗在对话窗中增加、修改、删除界面对象对话窗的测试存储、加载、显示、退出用户化的对话窗生成对话窗修改对话窗对话窗的测试存储或加载用户对话窗退出对话窗发生器显示对话窗在对话窗中添加修改界面对象在对话窗中添加修改界面对象对对象象(Object)功能功能标 签(Label)在对话窗中显示文字或图片,起标识作用数据区(Field)提供一块区域,您可以在其中输入文字或数字按 钮(Button)激活某项操作;可以有图标、标签或文字以表明该按钮的功能切换按钮(Toggle Button)表明某个激活状态分割线(Separator)划一水平线划 条(Slider)设置某对象的数值,而不用输进其值可选菜单(Option menu)允许多项中选择一项;可选按钮(Radio box)设置状态或模式工具包(Button stack)允许多个按钮放在同一容 器(Container)由于在对话窗中无法修改图片的大小,因此必须预先定义好 例子 如何使用ADAMS/View的宏可以使用宏自动完成一些重复性的过程,可以记录、编辑、存储或执行宏。ADAMS/View宏介绍在宏中如何使用参数生成、删除、存储、调试、执行宏的练习ADAMS/View宏介绍 宏是生成的一个命令,它可以完成一系列的命令。按照View的命令格式来编写宏,View像处理其它命令一样处理宏,可在命令窗口中执行宏,也可以在宏中使用其它的宏或在用户化菜单、对话窗和按钮下调用宏。在宏中可以使用参数。ADAMS/View提供一套工具,可帮助记录、执行和测试宏和命令文件 在宏中如何使用参数 在宏执行的命令文字中加入参数。参数用$加上参数的名字定义。生成宏时,ADAMS/View扫描全部命令行,标识出所有的参数。执行宏时,需要提供所有参数的值,进行参数替换,否则将用缺省值替换。 在宏中如何使用参数 在这个例子中,生成了一个名为icon_size的宏,宏中包含参数size,其相应命令如下:constraint attributes constraint_name=.* size_of_icons = $size输入命令:icon_size size=1.5ADAMS/View则执行如下命令:constraint attributes constraint_name=.* size_of_icons = 1.5参数值的扩展在执行宏时,将数据库对象的名字扩展为全名,使用“.”分割开来。 举例 如:包含参数name的宏lpart:List_info part part_name=$name输入如下命令:lpart name=left_wheel View用part 的全名.model_1.left_wheel替换参数$name,执行: List_info part part_name=.model_1.left_wheel特别的是,ADAMS/View执行宏时不进行单位的转换。它将输入值直接传给命令行,在命令行中进行单位的转换。参数的一般格式参数的一般格式为:$name:q1:q2:q3name:参数的名称;q1、q2、q3:该参数的一个或几个特性;单引号和特性是可选的,参数的格式可能有如下几种形式:$name$name$name:q1:q2:q3$name:q1:q2:q3 参数的命名规则参数的名字必须以字母开头,其后可以是字母、数字或下划线( _ ),参数的名称与大小写无关。在参数的定义中,单引号的作用是将参数与ADAMS/View的命令行明确分开。正常情况下,您用空格、逗号、冒号或其他的字符表示参数结束,但有时您可能想加字符串在参数的后面,如您想加”_1”在参数$part的后面,那么您应写作$part_1,而不是$part_1,$part_1为定义另外新的参数参数的特性及格式参数第一次出现时定义其特性,四种特性:Type(类型)Range(范围)Count(数量)Defaults(缺省值)定义特性没有大小写区分。参数的特性及格式Type:指定参数的类型格式如下:T = type,分如下两种类型:基本类型: real、integer、location、orientation、string、function 数据库对象:Constraint、Force、Equation、Measure、BodyRange:指定允许的最大、小值。适合数值型参数GT=r:大于r GE=r:大于等于rLT=r:小于r LE=r:小于等于rCount:指定参数所需数据的个数, C=0:一个或多个 C=n:N个 C=n,0:N个或多个 C=n,m:N到M之间的数Default: Constant, Updated,Database object如何生成宏 交互式记录方式;在宏编辑器直接输入宏要执行的命令。使用宏编辑器也可以修改已存在的宏;读入一个包含宏要执行的命令的ADAMS/View命令文件;如何生成宏几种方式的比较对于简单的宏而言,交互式记录方式最好;对于复杂的宏而言,读入一个包含宏要执行的命令的ADAMS/View命令文件的方式最好,因为这样还可指定与该宏相关的帮助文件或帮助性的字符串;对于已有的宏,则使用宏编辑器较好,若使用宏编辑器生成宏,则必须输入要执行宏所用的命令。您如果通过命令导航器执行宏时,ADAMS/View自动生成一个对话窗,方便您输入参数交互式记录方式Tools-Macro,Record/Replay,选择Record Start执行想加在该宏中的操作;停止记录宏,选择Record Stop;回放刚才所记录的宏,选择Execute Recorded Macro存储所记录的宏,选择Write Recorded Macro。使用宏编辑器编辑或生成宏在Tools菜单下,选择Macro,然后选择Edit,然后选择New或Modify;选择Modify,则数据库导航器出现,选择一个您要编辑修改的宏,则宏编辑器出现。要生成宏,在宏编辑器中输入要生成的宏的名字;在命令项输入要执行该宏所使用的命令,如要用该宏的名字,则选择Use Macro Name注:输入的命令在ADAMS/View中必须是唯一的指定该宏是否可以包含在一个Undo命令中,如果使用很方便Undo,但要消耗部分内存,还要减慢宏执行的速度;在命令行窗口输入宏要执行的命令,然后选择OK即可。读入一个命令文件生成宏 Tools-Macro,选择Read,在Macro Name-宏的名字;在File Name项输入您要读入的文件的名字在User Entered Command -执行宏的命令指定是否用一个Undo命令undo全部宏的命令;指定帮助文件的名字或帮助字符串的内容;确定是否生成相应的对话窗;选择OK。如何删除宏Edit - Delete;数据库导航器,选择删除宏。如何调试宏Tools - Macro - Debug如何执行宏在命令窗口中输入通过宏DEBUG执行宏通过用户化的对话窗执行宏如何存储宏Tools - Macro - Write -宏与文件的名字例子自动建立一个MARKER,其位置在已经存在的两个MARKER连线的中间位置上,其方向与绝对坐标系的方向一致。! $FIRST_MARKER: T=marker! $SECOND_MARKER: T=marker! $NEW_MARKER_NAME: T=new_marker!.marker create marker_name=$NEW_MARKER_NAME &location = ( ($FIRST_MARKER.loc_x)+($SECOND_MARKER.loc_x) )/2 ), &( ($FIRST_MARKER.loc_y)+($SECOND_MARKER.loc_y) )/2 ), &( ($FIRST_MARKER.loc_z)+($SECOND_MARKER.loc_z) )/2 ) &orientation = 0,0,0 &relative_to = ground从指定的已存在的曲线上生成一拉伸体,执行宏时,须给定一个实数值作为拉伸体的长度,还要指定一个已存在的MARKER,其Z轴方向为拉伸的方向。! $curve_to_extrude: T=geometry! $extrusion_length: T=real! $along_Z_axis_of_marker: T=markerdefaults model part_name=($curve_to_extrude.parent)!geometry create shape extrusion &extrusion_name=(UNIQUE_NAME(EXT) &profile_curve=$curve_to_extrude &length_along_z_axis=$extrusion_length &reference_marker=$along_Z_axis_of_marker &relative_to=ground
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号