ParaView 是一款开源、跨平台的科学数据分析和可视化工具,ParaView兼容多种格式、提供丰富的可视化分析功能,并且支持灵活导出,在各领域广泛应用。本小节基于ParaView软件支持用户编写的自定义脚本和宏以及批处理操作基础上,打开该软件并在相应部分介绍其功能,最后尝试实现批量处理文件。
1. 录制工具
ParaView 的录制工具(Trace)是将用户的交互操作自动转换为 Python 脚本的功能,主要用于将手动可视化流程转化为可重复执行的自动化脚本,方便批量处理、流程复用或分享。在功能区 Tools > Start Trace 即为录制功能,点击该功能后再进行录制设置,默认即可,点击 OK,即可录制用户之后的每一步操作。
2. Python 脚本
在打开录制功能过后,即可执行想要复现或重复执行的操作,ParaView软件会自动录制所做操作并在录制结束后自动生成Python脚本。在功能区 Tools > StopTrace 即为结束录制功能,点击结束后自动弹起ParaView Python脚本编辑器菜单,并且将刚才的操作录制为Python脚本存于Python脚本编辑器中,如知晓ParaView中各操作对应Python命令,也可打开Python脚本编辑器自行编辑Python代码,Python脚本编辑器所在位置为 Tools > Python Script Editor.
3. Python 脚本执行
在成功转换为python脚本后,执行运行脚本只需在确定脚本命令无误的情况下,在Python脚本编辑器中点击File>Run即可。
4. 案例说明
为更好的解释利用前述中ParaView软件通过录制功能生成Python脚本并依赖脚本进行批处理功能,实现批量完成导入其他CAE文件并将其导出为EnSight格式文件,本小节利用采用一个实例(.vtu格式文件)去实现该功能。
4.1 录制前准备
在录制开始前,将所需批量转换的文件统一改名为“xx1.xx”、“xx2.xx”、……“xxn.xx”这种形式并放入同一文件夹中方便后续处理。然后建立导出结果文件夹,并在其中建立名称为“data1”、“data2”、……“datan”子文件夹方便存入转换后数据。
待处理文件和结果保存文件夹建立好之后,即可按照第1节所述操作开启录制功能。
4.2 文件导入
导入自己所要转换的其他格式的CAE文件,比如本次的为(.vtu)文件,点击File>Open , 找到所需文件,选中一个即可。
4.3 文件导出
待文件导入后即可导出,点击File>Save Data,在弹出的保存文件窗口选择保存路径为4.1中所建立的导出文件保存文件夹、命名导出文件并选择导出格式为Ensight File(*.case),如下图a中“1”、“2”、“3”所示。在路径、文件名以及导出格式设置完成后点击OK自动跳转变量选择窗口,选择所需导出的变量再点击OK完成数据导出|(见下图b)。
在文件成功导出之后就把刚才导入的文件从工作目录中删除,如下图.
4.4 Python 脚本生成
待前述工作均完成后按照4.2中所述关闭录制功能,此时自动弹出Python脚本编辑框并且编辑框存在刚才所操作的代码,如下图。
但是该脚本框内的内容仅为单词仿真代码,需对该代码做相应修改,增添循环代码,修改如下。
具体修改为:
- 添加第十行代码 “for i in range(1,6):”表示1~5的循环(俩边都包含),同理若要表示1~100的循环则更改代码为 “for i in range(1,101):”
- 第十一行到第二十一行均需做缩进处理(在这些行面前按Tab即可)。
- 修改第十二行中导入文件路径,修改文件名后为“ ' + str(i) + ' ”,如上图。
- 修改第十五行中导出文件夹路径,修改文件夹名后为“ ' + str(i) + ' ”,如上图。
至此,完成对脚本的更改。
4.5 脚本执行
在更改完成并检查无误的情况下,点击File>Run(可执行文件)。
执行结果如下图,每个文件夹中都生成了EnSight文件格式的导出文件,成功完成批量处理其他格式CAE文件并将其导出为EnSight格式文件。
5. 总结
在通过上述操作,成功实现了批量处理其他格式CAE文件并将其导出为EnSight格式文件,完成了批量处理,证明了该方案的可实现性,将不易读、封闭性高的文件利用ParaView软件转换一遍生成易读、开放的EnSight文件格式。
批量处理中最容易出现的问题是python脚本命令是否存在错误,在循环时是否保证每次循环读取文件和导出文件的地址是否改变,确定无误后批量运行可节省工作量并提高效率。