Hyperworks/Hypermesh自定义快捷键及快捷键语法详解
1、自定义快捷键
在Hypermesh界面中,可通过下拉菜单Preferences->Keyboard settings打开自定义快捷键面板,如下图所示。在上方的软键盘中单击要定义的快捷键,在下方其对应的Command栏中输入相应的命令,或在File栏中指定要定义的脚本文件,即可进行快捷键的自定义。在快捷键定义时,可以使用Ctrl,Shift,Ctrl+Shift组合键。
任何HyperMesh command文件中的命令都可以映射为一个快捷键,某些键在安装时已经被映射为默认快捷键,而且某些utilize功能只能通过快捷键访问,如果删除或替换掉这些快捷键,将造成软件原有功能的丢失。若不熟悉软件结构,应慎重删除或替换默认快捷键。
2、自定义快捷键语法
(1)进入某个特定的面板
语法:hm_pushpanel {面板名称}
例:进入edit element面板,在相应快捷键的Command栏中输入hm_pushpanel {edit element}即可。
注意:面板名称需保持和Hypermesh中的名称完全一致。
(2)进入某个面板的子面板
语法:hm_pushpanelitem {面板名称} {子面板名称}
例:进入edit element面板的combine子面板,在相应快捷键的Command栏中输入hm_pushpanelitem {edit element} {combine}即可。
注意:面板名称和子面板名称需保持和Hypermesh中的名称完全一致。
(3)执行某个系统命令
语法:直接在相应快捷键的Command栏中输入相应的系统命令即可。
例:创建一个快捷键用于删除模型中的所有单元,在Command中输入*createmark elements 1 "all" ;*deletemark elements 1即可。
注意:所输入的命令可以是一个单独的命令,也可以是相互关联的一系列的命令,用于连续执行,以实现某个功能。
(4)执行系统中预定义的宏命令
语法:*evaltclstring "宏命令及参数列表"
例:定义一个快捷键用于找到所有雅可比值小于0.7的单元,在Command中输入*evaltclstring "macroElementJacobian 0.7" 0即可。(软件已在utility/QA里定义了这个宏命令)
(5)运行一个tcl脚本
语法:在File栏中选择相应的脚本文件。若在Command栏中输入脚本中某个函数的执行命令:*evaltclstring 函数名,则使用快捷键时执行脚本里相应的函数;若在Command栏中输入Eval {},使用快捷键时则运行整个tcl脚本。
例:定义一个脚本快捷键,用于检查模型中是否存在beam/bar单元,若存在则单独显示它们。脚本如下:
Proc displayonlybeams {} {
*createmark elements 2 "by config" 60 63
set beams [hm_getmark elements 2]
*clearmark elements 2
if {![Null beams]}
*displaycollectorwithfilter comps "none" "" 1 1;
eval *createmark elements 1 $beams;
*findmark elements 1 0 1 elements 0 2;
} else {
hm_usermessage "No beam elements in this model"
}
}
在右侧单击文件选择按钮选择相应的脚本文件,在Command栏中输入*evaltclstring displayonlybeams即可。如果本tcl脚本中仅包含这一个函数则在Command栏中输入Eval {}也可,这样整个tcl脚本将被执行。
1 条留言 访客:1 条 博主:0 条