很多有限元仿真工程师对软件的使用比较精通,但是对软件的二次开发确不是很清楚,总认为二次开发是比较高级,较难掌握的部分。其实不然,二次开发不像编程需要考虑那么多,只需要将工程师的想法即工程师平时的操作通过软件自带的api函数传递给软件,辅助一些逻辑判断结构,就可以自动实现工程师的想法,对于重复性的劳动,可以起到一劳永逸的效果,工程师对软件越熟悉,二次开发上手越快。
Hypermesh作为目前市面上最常用的前处理软件,而前处理是整个仿真过程中最费时费力的部分,如果我们能把这个最耗时耗力的部分通过二次开发实现全部或部分自动化,必将大大提升仿真效率,减少工程师的劳动量。下面将以三个小例子由浅入深的为大家讲解hypermesh二次开发给大家工作带来的便利性。
1.hypermesh宏命令
在utility的user面板中自定义一个按钮来实现常用的命令,能够减少用户在做一个重复繁琐的工作,创建用户自定义的工作环境。主要通过userpage.mac中*createbutton命令来实现。
以导入用户自定义的template模板文件为例,常规操作是File ->import -> model然后打开File selection对话框选择template模板文件。Hypermesh软件本身除了提供api接口函数外,还提供实时记录用户操作的command.tcl脚本文件。
首先我们进行一次常规操作,完成模板导入。打开command.tcl文件找到如下命令:
拷贝并将其保存为一个后缀为tcl的文件,在userpage中输入如下语句完成button按钮的定义工作
*createbutton(5,"Import Template",0,0,10,BUTTON,"Import drop template to your model", "EvalTcl","ImportTemplate.tcl"
其中*createbutton命令的各参数含义如下:
重新启动软件,在user界面就可以看到新生成的Import Template按钮,同样道理,可以完成其他的用户工作环境的定义、更换、删除等操作
用户自定义的宏命令
需要注意的是,宏命令方式的缺点主要是不能取消或者撤销命令的执行,而且无法调用自身,不能迭代操作。
2.Tcl/tk脚本批量自动化
点击完整阅读全文