论文部分内容阅读
科学可视化技术目前已经得到了广泛的发展,但是主要的数据研究对象仍局限在规则网格数据的可视化。大部分算法只适用于规则网格数据,而对于非规则网格数据,目前主要的可视化方法是通过插值算法将其映射到规则网格上,然后再使用传统的可视化算法。然而,这种网格映射方法在数据预处理上需要消耗大量的时间成本,得到的结果也无法完全保留原始数据的特征。在物理模拟仿真实验中,数据的采样环境经常是在柱坐标系下,生成的电磁数据为柱形规则网格,是一种非规则网格。为此,本文对三维可视化展开了系统化研究。三维可视化方法中的面绘制描述了三维数据场中等值面的空间分布,体绘制描述了三维数据场的整体信息,包括内部和细节特征。对两者进行分析研究后,本文选取Marching Cubes(MC)算法和Ray Casting(RC)算法作为重点研究的对象,提出了侧重面信息的柱坐标系下等值面提取算法,以及侧重整体信息的柱坐标系下体绘制算法。首先,为了解决MC的二义性、无法应用在柱形规则网格上等问题,本文选择具有33种三角剖分情况的Marching Cubes 33(MC33),解决了二义性问题,使得生成的三角网格具有正确的拓扑结构。为了使其能够应用在柱形规则网格上,本文改变了MC33的最小处理单元的几何结构,并结合曲面细分技术,解决了稀疏数据生成粗糙等值面的问题,生成高质量的柱形等值面。同时,为了提升算法效率,本文对每个最小处理单元进行预判断,跳过了体数据中存在的大量无效体素,缩短了绘制时间。接着,针对RC算法效率低下、无法应用在柱形规则网格上等问题,本文对柱形规则网格数据进行一系列的坐标变换,使其适用于RC算法。其次,本文选取基于GPU的RC算法,根据电磁数据的结构特点,为柱形规则网格电磁数据设计了一种混合八叉树的构建方式,通过混合八叉树组织柱形数据,将紧致包围盒和空间跳跃算法相结合,同时排除了体数据外围和内部的无效体素,使得算法效率得到有效提升。并通过颜色显示表和标量值分布直方图设计了一种能够保留电磁数据细节特征的传递函数,使得电磁数据的展示具有多样性,同时突出了细节特征。最后,依据以上的基础理论,本文基于VTK实现了一个兼容不同网格数据格式的电磁数据后处理可视化系统。系统完成了在不同坐标系下进行仿真计算时获取的电磁数据的可视化工作,并提供了可视化模块与计算模块之间的交互功能,使得用户可以实时可视化计算结果,为更好的了解实验进展提供了可能。