团子良 发表于 2022-8-22 10:18:12

在HyperMesh的Utility菜单中注册函数

       HyperMesh的二次开发我做的比较少, 对于tcl语言也算不上精通, 不过制作的插件在前处理以及求解设定过程中也起到了很大的作用. 不过每一次调用都要去找这个脚本, 实在是让我头疼.
    经过查阅资料, 我了解到这些插件都可以注册在Utility---User中, 而要在其中注册插件, 则要修改userpage.mac, 这个文件是在HyperMesh安装完成后自动生成的, 对于2021版本, 它的位置位于...\Altair\2021\hwdesktop\hm\bin\win64.
    这个文件如果不使用文件搜索,还是挺难找的, 而要使用搜索就要知道文件名, 但是它实在是太不常用了, 以至于每次更新HM版本都要重新研究到底怎么注册脚本.
01 userpage.mac      尽管这个文件不是空文件, 但是完全可以忽视它里面的所有内容(但是也别给删了), 我们要做的就是将我们的注册插件代码写到文件最后面就好了.02创建按钮*createbutton      语法:*createbutton (page name row column width color helpstring macroname arg1 …)

[*]page: 该按钮被创建在utility的第几页, user是utility的第五页, 所以注册在这里的按钮page=5;
[*]name: 显示在按钮上的文字;
[*]row: 按钮的行位置;
[*]column: 按钮的列位置;
[*]width: 按钮的宽度;
[*]color: 按钮的颜色;
[*]helpstring: 点击按钮使的提示文字;
[*]macroname: 被调用的脚本名称;
[*]arg1: 被调用的脚本名称;

03注册脚本*beginmacro
可以使用这个命令将按钮注册到utility中
    语法: *beginmacro(name)04例每一个脚本的名称需要是独一无二的(EvalTclScript3不能重复), 由于对tcl了解有限, 不足之处欢迎留言探讨.

页: [1]
查看完整版本: 在HyperMesh的Utility菜单中注册函数