基于VTK的有限元网格可视化研究及软件设计 - 图文

更新时间:2023-11-26 10:59:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

毕 业 论 文

基于VTK的有限元网格可视化研究

及软件设计

The Visualization Study for Finite Element Mesh and Program Design Based on the VTK

学 院 土木建筑学院 专 业 工 程 力 学 学 生 薛 健 学 号 08980130 指导教师 王家林 教授

重庆交通大学 2012 年

前 言

科学计算可视化[1][12](Visualization in Scientific Computing)的概念自1987年提出到现在,短短25年的时间里,已经对自然科学的几乎所有领域产生了深刻而意义深远的影响。在有限元分析(FEA)领域,可视化技术更是凭借其直观、高效、交互性好的优点成为了诠释网格数据和计算结果的强有力手段——甚至是无可替代的方法。本课题的目的即在对于有限元网格可视化技术的研究。

有限元网格可视化是有限元分析中一个重要的技术环节,具有重要的工程意义和理论价值。在实际工程中,网格划分的质量直接影响着求解精度以及解的收敛性,而网格的可视化则为庞大的网格系统的人机交互提供了一个方便、直观、高效的手段,不但能够有效地诠释网格数据,还为网格质量的评价与反馈提供了可能;在理论上,成形后的有限元网格具有不依赖于模型对象的独立的几何性态,这使其成为有限元计算的基础甚至核心,而有限元网格的可视化就正是要把网格那些重要的几何属性直观、高效地揭示出来。

目前,主流的有限元通用软件或者网格划分专用软件越来越重视软件的可视化及其相关的交互功能,不仅是在友好的图形用户界面的开发、多种数据结果的精确显示、复杂工程项目的可视化仿真建模等等方面,甚至将网格的可视化功能集成到网格划分的功能模块之中,大大提高了网格划分的效率,同时使用户能够对分析过程中网格数据的变化进行及时准确地把握。

在有限元应用领域,网格小变形方向的可视化技术已经相当成熟;另外,在流体、传热、电磁场等涉及到物理场、大变形、甚至多场耦合的领域,有限元网格技术也取得了巨大的发展,可视化技术更是为其海量数据的分析处理提供了强大的支持。

本课题以Microsoft Visual 2010为编译平台,基于VTK (Visualization Toolkit)及其接口技术,面向土木工程领域研究有限元分析中杆系结构单元、表面单元、实体单元的网格可视化方法。由VTK与MFC混合编程开发出一个有限元网格可视化软件来实现有限元网格的显示、实现对多种网格数据类型的支持、实现网格对象的人机交互等功能。

目 录

摘 要 .........................................................................................................................................I ABSTRACT ........................................................................................................................... III 第一章 绪 论 .......................................................................................................................... 1

1.1 选题的目的与意义 ..................................................................................................... 1 1.2 国内外研究现状 ......................................................................................................... 1

1.2.1 OpenGL (Open Graphics Library).................................................................... 2 1.2.2 VTK (Visualization Toolkit) ............................................................................. 3 1.3 本课题研究内容 ........................................................................................................ 3 第二章 VTK的结构、执行机制以及VTK软件平台的搭建 ............................................. 5

2.1 VTK的结构与执行机制 ............................................................................................ 5 2.2 VTK软件平台的搭建 ................................................................................................ 7

2.2.1 Microsoft Visual 2010 与Boost库 .................................................................. 7 2.2.2 Cmake简介 ....................................................................................................... 7 2.2.3 Windows XP环境下VTK 5.8.0的编译与配置 .............................................. 8

第三章 数据输入接口 .......................................................................................................... 14

3.1 有限元网格数据类 .................................................................................................. 14

3.1.1 节点类 ............................................................................................................ 14 3.1.2 单元类 ............................................................................................................ 17 3.2 数据文件的读入 ...................................................................................................... 20

3.2.1 网格数据的读入种类、控制与特点 ............................................................ 20 3.2.2 节点编号与坐标的读入 ................................................................................ 21 3.2.3 二维Delaunay边界点的读入 ....................................................................... 23 3.2.4 节点位移分量的读入 .................................................................................... 25 3.2.5 单元编号及顶点的读入 ................................................................................ 26

第四章 有限元网格的可视化 .............................................................................................. 28

4.1 VTK基本数据的表达 .............................................................................................. 28

4.1.1 可视化数据的特点 ........................................................................................ 28 4.1.2 VTK的单元数据集 ........................................................................................ 28 4.1.3 数据集类型 .................................................................................................... 32 4.2 VTK的对象工厂设计模式 ...................................................................................... 33 4.3 绘图程序的组织结构 .............................................................................................. 34 4.4 节点的绘制与标注 .................................................................................................. 36 4.5 线单元模型的绘制 .................................................................................................. 40 4.6 三角形单元模型的绘制 .......................................................................................... 43 4.7 四面体单元模型、六面体单元模型的绘制 .......................................................... 46 4.8 五面体单元模型的绘制 .......................................................................................... 49 4.9 Delaunay三角网的绘制 ........................................................................................... 51

4.9.1 平面点集的三角剖分 .................................................................................... 52 4.9.2 Delaunay三角剖分 ......................................................................................... 52 4.9.3 Delaunay三角网的性质 ................................................................................. 53 4.9.4 vtkDelaunay2D类与vtkDelaunay3D类........................................................ 53 4.9.5 用vtkDelaunay2D类建立二维离散点集的Delaunay三角网.................... 55

本文来源:https://www.bwwdw.com/article/s8nt.html

Top