前阵子不是说要给OpenFOAM整个壳儿么,然后利用空余时间规划了一波。
套壳的目的是为了提高案例准备的工作效率,所以一个设计良好的GUI界面是必不可少的。经过一番规划,我越来越觉得这工作量似乎有点大。不过既然是套壳,那么显然也可以参照商用CFD软件的布局和设计样式。这里将比较典型的CFD软件(Fluent、STAR CCM+、CFX)拿出来简单分析一下。
Fluent的界面在近几个版本改动比较大,最新版本界面如下图所示,其包括几个主要部分:
Fluent的界面比较传统,没有什么激进的设计。在使用的过程中,用户可以通过单击或双击模型树节点,在打开的任务页面板或对话框中设置相应的参数。这种设计谈不上有多好,但似乎也很难找到有什么不好的地方。
个人觉得不好的地方是Ribbon功能区设计。目前Fluent功能区的按钮功能绝大部分是和模型树重叠的,导致按钮过多,找起来不太方便。个人觉得完全没必要把所有的功能都放到Ribbon中,只需要将模型树无法达到的功能放在功能区就好,这样按钮数量少了,界面也会清爽不少。
话说,Fluent的界面是否能统一字体?难道就只有我发现了Fluent在同一个界面上用了很多中字体么?功能区和任务页是一种字体,模型树一种字体,控制台又是另一种字体。图形窗口在显示文本时有是另一种字体,真心是乱七八糟。
STAR CCM+的界面近几个版本也改动了不少,不过总体上还是延续的。其主要界面包括以下几个部分:
STAR CCM+的界面是采用JAVA编写的,总体上来看现代化程度要比Fluent好太多了,起码字体基本上是统一的(信息输出窗口的字体和其他界面字体不一致)。而且STAR CCM+采用的字体是自己设计的,总体上来看比较美观。
STAR CCM+的参数设置完全依赖于模型树结构,不过用户可以通过双击模型树节点,然后在弹出的对话框中集中设置参数。但总体上来说,模型树深度太大,鼠标点击频率会增加,从而降低操作效率。
CFX的操作界面几十年没变过了。这里之所以将CFX的界面拉过来,是因为其界面比较典型。其界面结构包括:
CFX的界面结合了Fluent与STAR CCM+各自界面的优势,其不同于Fluent将模型树与参数面板分离的界面形式,也不同于STAR CCM+那种纯粹模型树打天下的形式,CFX利用模型树组织仿真案例结构,而参数设置面板则通过标签页控件与Outline放在了一起,这样最大的好处是可以最大化图形窗口。
我个人更喜欢CFX的操作界面,如果能将菜单和工具栏合并成ribbon功能区就更完美了。
各位道友,如果让你来选心目中的CFD软件界面,更倾向于借鉴哪款软件的界面?