资源预览内容
第1页 / 共9页
第2页 / 共9页
第3页 / 共9页
第4页 / 共9页
第5页 / 共9页
第6页 / 共9页
第7页 / 共9页
第8页 / 共9页
第9页 / 共9页
亲,该文档总共9页全部预览完了,如果喜欢就下载吧!
资源描述
ADAMS/View 的宏( Macro)简介您可以使用宏(Macro )自动完成一些重复性的过程,您可以记录、编辑、存储或执行宏。本节将解释如何生成并管理宏,包括: ADAMS/View宏介绍 在宏中如何使用参数 如何生成宏 如何删除宏 如何存储宏 如何调试宏 如何执行宏 宏的几个练习 编辑宏的要点 ADAMS/View宏介绍宏,简单说来, 是您生成的一个命令,它可以完成ADAMS/View一系列的命令。 您按照 ADAMS/View的命令格式来编写宏,ADAMS/View像处理其它命令一样处理宏,您可在命令窗口中执行宏,也可以在宏中使用其它的宏或在您自己的用户化菜单、对话窗和按钮下调用宏。在宏中您可以使用参数。这有助于您在每次调用宏时加上数据,宏在执行时自动进行替换。使用宏您可以:自动完成重复性的过程;开发并扩展ADAMS/View的基本功能;自动生成整个模型;迅速的建立一个机构的多种变形。为方便您使用宏,ADAMS/View提供一套工具,可以帮助您记录、执行和测试宏和命令文件。 在宏中如何使用参数宏在执行时将您提供的信息进行参数替换。您可在宏执行的命令文字中加入参数。参数用$加上参数的名字定义(具体格式将在后面详细介绍)。一个宏中您包含很多参数,也可以一个参数多次使用。当您生成宏时,ADAMS/View扫描全部命令行,标识出所有的参数。执行宏时,您需要提供所有的参数的值,否则将用缺省值替换。下面先看一个宏的例子。在这个例子中,生成了一个名为icon_size 的宏,宏中包含一个参数size,其相应命令如下:constraint attributes constraint_name=.* size_of_icons = $size force attributes force_name=.* size_of_icons = $size 这样当您输入命令:icon_size size=1.5 ADAMS/View则执行如下命令:constraint attributes constraint_name=.* size_of_icons = 1.5 force attributes force_name=.* size_of_icons = 1.5 参数值的扩展在某种情况下, ADAMS/V iew 执行命令行进行参数替换时首先进行其格式的修改或扩展。特别的是,ADAMS/View执行宏时不进行单位的转换。它将您输入的值直接传给命令行,通常在命令行中进行单位的转换。ADAMS/View在执行宏时,将数据库对象的名字扩展为全名,使用“。”分割开来,使用“。 ”也可以使您直接访问表达式中数据对象的值。例如:下面为包含参数name 的宏 lpart.。List_info part part_name=$name 当您输入如下命令:lpart name=left_wheel ADAMS/View用 part 的全名 .model_1.left_wheel 而不是 left_wheel 替换参数 $name,并执行:List_info part part_name=.model_1.left_wheel 参数的一般格式参数的一般格式为:$ name:q1:q2:q3 ,其中:name:参数的名称;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(缺省值)您可以任意定义参数的特性,进行任意组合,也可以按任何顺序,您不必定义所有的特性,如果您重复定义的话,ADAMS/View会按最后一次定义的为准。定义特性没有大小写区分。下表为定义特性的几个例子。表 6 定义特性的示例特性 (qualifiers) 特性的含义$parts:t=part:c=2 两个已存在可动部件的名字$NSpokes:T=INTEGER:GE=3:LE=8:D=3 界于 3 和 8 之间缺省值为3 的整数$infile:t=file(*.dat) (输入)文件的名字,搜索时只列出以.dat 为 后缀的相关文件下面分别介绍四种特性:Type Type 指定参数的类型,用户在调用宏时必须按相应的类型输入其数值。定义Type 的格式如下:T = type T = type (additional data) 其中:type 可以是基本类型(Basic type),也可以是数据库对象(database object type)或数据库对象分类(database object class type);Additional data 是可选的,对某些类型而言,则是必须的,如List。基本类型 (Basic type) 包括:real、 integer、 location、orientation、string、function 、list(str1 , str2,str3)、file(path wildcard) 其中: list 类型必须包括允许值的列表;而file 类型后面可以加通配符,也可以加路径,如果您不指定的话,文件搜索则列出所有文件供选择。数据库对象 (database object type)包括:指定参数为某个数据库对象类型意味着用户必须输入已存在的对象的名字,但您可以在对象类型前加上前缀“ new_“,表示用户必须输入该类型一个新的名字。与 file 参数类型相似, 在数据库对象类型后面也可以加上缺省的通配符,如 marker(left_*) 。数据库导航器会将此通配符做为该参数的搜索模式,若不指定则列出所有适合的对象。您可以使用ADAMS/V iew 函数发生器观察一下ADAMS/View中所支持的数据库对象的种类。其过程如下:1、 在 Tools 菜单下选择Function Builder ;2、 从可选的菜单中选择Misc. Functions ;3、 从可选的菜单列表中选择SELECT_TYPE ;4、 选择 Assist;5、 在 Assist dialog box 中输入 all 并选择 OK;6、 选择 Evaluate,即出现所有数据库对象的列表了。数据库对象分类(database object class type)包括:ADAMS_Output_Files Body Constraint Data_Element Equation Expression_primitive Feature Force Frame_Display Function_Container Geometry l Graphic_User_Interface Higher_Pair_Contact Measure Measure_Vector Modeling Old_Graphic_User_Interface Optimization_Function Plotting Point_to_Point_Force Position Reference_Frame Runtime_Measure Solid_Geometry Triad Variable_Class Wire_GeometryRange 特性 Range指定参数允许的最大或最小值。Range只适合于数值型参数,其格式如表7 所示。表 7 参数范围特性的格式格式格式的含义GT=r 大于 r GE=r 大于等于r LT=r 小于 r LE=r 小于等于r Count Count 特性指定参数所需数据的个数,其格式如表8 所示。表 8 参数个数特性的格式格式格式的含义C=0 一个或多个C=n N 个C=n,0 N 个或多个C=n,m N 到 M 之间的数Default 参数的缺省值是可选的。如果参数没有指定缺省值,用户在执行宏时则必须输入一个值。定义参数的缺省值有三种方式:Constant:参数可选,调用宏时,用户如不提供数据,则用其缺省值;Updated:参数可选,调用宏时,用户如不提供数据,则用最近一次使用的值;如没有,则用其缺省值;Database object:对于数据库对象而言,其缺省值是自动匹配的。如其类型是已存在数据库对象,则其缺省值为当前缺省对象,如是新的数据库对象,则会自动生成那种类型的数据库对象。其格式如表9 所示。表 9 缺省特性的格式格式含义D=value 缺省值恒定U=value 缺省值更新A 新的或已存在数据库对象参数的缺省设置在命令行中参数的第一次出现即定义该参数,即使它出现在注释行中;如果第一次出现时,参数后有特性的设置,即直接确定该参数的特性;如没有,参数的特性则由其是否在合法的命令行中” =” 号的后面决定,若是,则直接继承等号后面参数所需要的参数的特性,包括类型、范围、个数及缺省值,否则的话,ADAMS/View则假定其为字符串型参数。注:虽然ADAMS/View可以自动确定参数的特性,但推荐您在建立宏时,先在宏的起始部分的注释行中明确定义每个参数。下面是定义宏的一个例子,注意其中参数的特性。! Parameter $text is a string. ! $numbers:t=integer:c=0:gt=0 list_info part part_name=$part_1, $part_2 list_info part part_name=$part_3:t=part, $part_4:t=part 如何生成宏有四种方式生成宏:1、 交互式记录方式;2、 在宏编辑器直接输入宏要执行的命令。使用宏编辑器也可以修改已存在的宏;3、 读入一个包含宏要执行的命令的ADAMS/View命令文件;4、 使用命令导航器或命令窗口直接输入要生成宏的命令。对于简单的宏而言,交互式记录方式最好;而对于复杂的宏而言,读入一个包含宏要执行的命令的ADAMS/View命令文件的方式最好,因为这样的话还可以指定与该宏相关的帮助文件或帮助性的字符串;对于已有的宏,则使用宏编辑器较好,若使用宏编辑器生成宏,则必须输入要执行宏所用的命令。您如果通过命令导航器执行宏时,ADAMS/View自动生成一个对话窗,方便您输入参数等。 交互式记录宏1、 在 Tools 菜单下选择Macro 然后选择Record/Replay,然后选择Record Start ;2、 执行您想加在该宏中的操作;3、 要停止记录宏,从Tools 菜单下选择Macro,然后选择Record/Replay,在选择 Record Stop;4、 要回放您刚才所记录的宏,在Tools 菜单下选择Macro,然后选择Record/Replay,再选择Execute Recorded Macro ;5、 要存储所记录的宏,在 Tools 菜单下选择Macro 然后选择Record/Replay, 再选择 Write Recorded Macro即可。 ADAMS/View将该宏存储为macro.cmd,如果该文件存在,ADAMS/View则询问是否覆盖等。 使用宏编辑器编辑或生成宏您可使用宏编辑器编辑您记录的或通过文件读进来的宏,您也可以使用宏编辑器生成一个宏。1、 在 Tools 菜单下,选择Macro ,然后选择Edit
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号