标签:
杂谈 |
分类: STARCCM技巧 |
Assistant是STAR CCM+中除Macro外的另一种二次开发方式。利用Assistant可以很容易的封装仿真流程,从而以向导的形式将仿真流程提供给其他用户使用。
利用netbeans可以很容易的开发Simulation Assistant。这里以一个简单的例子来阐述整个开发流程。
其实Assistant与Macro很类似,其中也会利用到一些Macro。与macro所不同的是,Assistant需要XHTML文件的支持,对于XHTML文件的编写,小伙伴们可以查看相关资料。Assistant对于XHTML的要求非常低,用户只需要知道在模版文件上怎么修改就OK了。
1、创建java工程
我们先创建一个java工程文件,随便取个名字AssitantDemo。取消创建主类前的复选框,如下图所示。
2、添加库及创建包
与Macro类似,也要导入相应的库。具体导入方式这里就不累述。
Java包的目的在于代码的分类管理。我们这里创建两个包:Assistant及XHTML。完成操作后的项目树如下图所示。
3、在Assistant包中创建类AssistantDemo及Task_01。
先修改AssistantDemo类,如下图所示。该类继承自SimulationAssistant,在其中利用List泛型添加Task,我们这里只创建一个Task为Task_01,用户可以根据需要创建多个Task。(Task_01类必须派生自Task,否则这里会提示错误,我们在后面修改Task_01类代码的时候会看到)
@StarAssistant(display="Assistant Demo") 此行语句在Assistant上指定标签。
修改Task_01.java文件。如下图所示。
在Task_01类中创建了一个继承自FunctionTaskController的内部类TaskController,在该内部类中创建了一个SayHello方法,该方法的功能是在STAR CCM+的输出窗口中打印一个字符串。
4、创建XHTML文件
XHTML文件的目的在于显示Task面板上的文本内容,同时确定一些超链接调用的函数。
创建XHTML文件01_Task.xhtml。写入如下内容。
看似很复杂,其实只需要修改图中黄色高亮位置即可。第一个高亮位置是显示在Task面板中的信息,第二个高亮位置指定超链接的行为,这里是调用前面创建的函数SayHello。
XHTML文件创建完了之后,还得返回Task_01.java文件,添加XHTML的识别代码。
5、修改Task_01.java文件
添加黄色高亮部分代码,该部分代码确定了XHTML文件的位置及Controller类。
6、构建工程文件并测试
项目树如下图所示。鼠标右键点击树节点AssistantDemo,选择构建子菜单进行工程构建。
构建完毕后打开STAR CCM+,并创建一个simulation。利用菜单【File】>【load simulation Assistant…】,在文件选择对话框中选择前面构建生成的AssistantDemo.jar(在dist文件夹下)。此时Assistant自动启动。如下图所示。
可以看到Assistant上的文字,我们可以在程序中进行修改。
点击Task面板中的Say Hello超链接,可以看到STAR CCM+的输出窗口中出现了Hello,Star ccm+字样,这正是我们在程序中所实现的功能。
至此,本文结束。