一种基于有限元分析后处理结果的快速三维可视化方法技术

技术编号:4101300 阅读:305 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种基于有限元分析后处理结果的三维可视化方法,属于三维可视化显示技术领域。通过对生成的网格单元体分解,剔除内部的公共数据面,生成外轮廓面集合;对外轮廓面集合进行共面分组,得到共面的单元数据面集合CoMAP;将每一组CoMAP中的所有单元数据面分解成为独立的单元数据边,剔除所有的内部公共边,得到共面轮廓线集合;对所有共面轮廓线集合进行轮廓线分组,将所有形成封闭廓线的边分为一组;最后根据每一组封闭轮廓线生成一个独立的拓扑面,并判断此拓扑面为洞还是表面,对所有的非洞表面执行布尔求和运算,对洞执行布尔求差运算,生成三维模型。本发明专利技术为有限元分析技术和虚拟现实技术的结合使用提供了一种途径。

【技术实现步骤摘要】

本专利技术属于虚拟现实及三维可视化显示
,具体涉及一种基于有限元分析 后处理结果的三维可视化方法。
技术介绍
随着计算机技术的迅猛发展,数值仿真技术因其所具有的安全保密、设计灵活、可 重复性好、环境和过程可控、效费比高等优点,被广泛应用于工业设计、武器研制、灾害模拟 等领域。有限元分析是数值仿真技术中广泛应用的手段之一,常用的有限元分析软件包括 ANSYS、LS-DYNA、ABAQUS、MARC 等。虚拟现实技术显示手段丰富多样,支持模型的渲染和驱动,它提供了一种实时的、 三维的虚拟环境(Virtual Environment),具有高度的沉浸性、交互性和构想性,使人能够 丰富地体验计算机生成的虚拟世界。有限元软件的核心优势在于有限元计算,由于其理论建立在求解偏微分方程组基 础之上,所以能够深刻地反应客观世界的物理规律。但它们在计算结果的显示手段多样性 和模型的通用性方面都有共同的不足(1)后处理显示功能不足,有的软件只有简单的颜 色显示功能;(2)模型不支持纹理和材质渲染,也不能转换到其他的三维显示平台上使用, 如模型驱动等;(3)不能和已经日趋成熟的虚拟现实显示技术紧密结合,有限元分析结果 的可视化效果差。目前在仿真领域中,数值仿真和虚拟现实属于两种完全不同的技术体系, 它们模型规范和模型接口的不一致使得数值仿真的结果难以直接运用到虚拟现实系统当 中。数值仿真的计算结果非常复杂,数据量异常庞大,使得模型重用面临许多困难,仅简单 地重构和渲染而不进行优化处理将严重影响系统运行的稳定性和效率。另一方面,数值仿 真的结果有助于提高虚拟现实系统的物理的真实性和逻辑准确性。如何协调建模分析的真 实性和逼真性,将数值仿真和虚拟现实的优点有效地结合起来成为当前一个亟待解决的问 题。有限元软件输出的数据类型基本上是三维网格数据,如ANSYS/LS-DYNA等都可以 通过命令行的设置导出该类型的数据,它主要存储网格单元顶点的属性信息、坐标信息和 索引信息。该类型数据还常见于计算机X光断层摄影、磁共振、单光子发射计算机断层摄 影、地震测定、电子显微镜、大气压的测定和地理信息系统等领域中。这类三维数据的特点 是数据量大,数据规则和连续。如果直接重构,那么重构出来的模型庞大、渲染效率低下,直 接影响在三维显示平台上的显示效果。
技术实现思路
本专利技术为了克服数值仿真软件显示功能简单、手段单一的不足,解决建模渲染平 台重用有限元模型时面临的模型通用性不足、模型数据庞大复杂以及模型渲染效率低下的 问题,提出了,该方法在对有限元 分析后处理结果进行提取、处理和转换的基础之上,改进了在三维建模平台中模型重构和渲染的方法,使其不仅具有数值仿真分析结果的精确性和可信性,同时还具有可视化三维 模型的多种操作特性和快速渲染特性。本专利技术对数值仿真计算结果三维重构和渲染的方法进行改进,提出了一系列高 效、稳定针对三维网格数据处理方法,削减了数据的冗余度和复杂度,从而使得该方法具有 简单灵活、资源耗费少,运行效率高和运行速度快,方法易拓展等特点。因此可以很好的满 足三维模型实时渲染和驱动的需求。本专利技术提供的基于有限元分析后处理结果的快速三维可视化方法包括五个基本 步骤,具体如下步骤1 生成网格单元体集合,分解网格单元体,剔除内部的公共数据面,生成外 轮廓面集合。该步骤主要由以下四个步骤组成步骤①读入全部网格单元体集合中的网格单元数据Elements。步骤②将每一个网格单元数据Element按照数据面顶点定义顺序划分成不同单 元数据面Face。步骤③生成一个初始时为空的数据面集合FaceMAP,判断单元数据面Face是 否存在数据面集合FaceMAP中如果存在,则从FaceMAP删除此数据面;如果不存在,则在 FaceMAP中添加此单元数据面。步骤④判断Elements是否遍历完毕如果没有遍历完毕,则返回步骤①;否则, 该阶段结束数据面集合FaceMAP中存储了所有网格单元体的外表面的可见单元数据面,称 之为外轮廓面集合。步骤2 对步骤1中生成的外轮廓面集合进行共面分组,将所有位于同一个平面上 的单元数据面归为一组,每组为一个共面的单元数据面集合CoMAP。该步骤主要由以下四个步骤组成步骤①生成一个系数共面映射表ALLMAP。所述的ALLMAP为平面方程系数和单 元数据面集合组成的映射表,其中的平面方程系数与单元数据面集合为一一对应的关系。步骤②从外轮廓面集合中任取一单元数据面,获取单元数据面的顶点数据,求解 该单元数据面的平面方程,获取平面方程系数D。步骤③在系数共面映射表ALLMAP中查找,判断该平面方程系数是否在系数共面 映射表ALLMAP中如果是,获取此系数对应的单元数据面集合CoMAP,将当前单元数据面添 加到对应的单元数据面集合CoMAP中;否则,生成与此系数对应的单元数据面集合CoMAP, 将当前单元数据面添加到单元数据面集合CoMAP中,并将此系数和新生成的单元数据面集 合CoMAP —起添加到ALLMAP中。步骤④判断轮廓面集合中的所有单元数据面是否遍历完毕如果不是,返回步 骤②;如果是,该阶段结束。步骤3 针对每一组单元数据面集合CoMAP中的所有单元数据面分解成为独立的 单元数据边,剔除所有的内部公共边,得到共面轮廓线集合。本步骤主要由以下七个步骤组成步骤①在系数共面映射表ALLMAP中任取一个共面的单元数据面集合CoMap。步骤②生成一个共面单元数据边集合EdgeMap,初始为空。步骤③从共面的单元数据面集合CoMap中任取一个单元数据面Face,依据数据 面分解原理,将单元数据面分解成单元数据边Edge,将所有的单元数据面都分解成单元数 据边。步骤④对于分解得到的每条单元数据边Edge取逆向边;判断EdgeMap中是否包 含此单元数据边的逆向边如果是,则说明含有重合的单元数据边,从EdgeMap中删除该单 元数据边的逆向边;否则,在EdgeMap中插入此单元数据边,最后形成的EdgeMap中的所有 单元数据边组成共面轮廓线集合。步骤⑤判断CoMAP中的单元数据面集合中单元数据边是否遍历完毕,如果是,进 入下一步,否则返回步骤④。步骤⑥获取CoMAP中的平面方程系数,该平面方程系数与EdgeMap组成共面轮廓线集合。步骤⑦判断ALLMAP中所有的共面的单元数据面集合CoMAP是否遍历完毕,如果 是进入下一步,否则返回步骤①。步骤4 将步骤3中所有共面轮廓线集合进行轮廓线分组,将形成封闭廓线的边分为一组。本步骤的主要是为了从共面轮廓线集合中将轮廓线进行分组,提取构成单条轮廓 线的全部单元数据边的集合。该步骤主要由以下六个步骤组成步骤①从全部共面轮廓线集合中取一个共面轮廓线集合EdgeMap。建立一个轮 廓线向量Vector,初始为空。步骤②从EdgeMap中取出一个初始单元数据边,将初始单元数据边标记为当前 单元数据边CurrentEdge,初始单元数据边的第一个端点标记为初始点StartPoint。步骤③以CurrentEdge的第二个端点为索引点在EdgeMap查找到第一端点与之 相同的单元数据边。步骤④判断该单元数据边的第二端点是否与初始点StartPoint相同若相同, 说明组成为一条闭合的轮廓线,进入本文档来自技高网
...

【技术保护点】
一种基于有限元分析后处理结果的快速三维可视化方法,其特征在于:步骤1:生成网格单元体集合,分解网格单元体,剔除内部的公共数据面,生成外轮廓面集合;步骤2:对步骤1中生成的外轮廓面集合进行共面分组,将所有位于同一个平面上的单元数据面归为一组,每组为一个共面的单元数据面集合CoMAP;步骤3:将每一组共面的单元数据面集合中的所有单元数据面分解成为独立的单元数据边,剔除所有的内部公共边,得到共面轮廓线集合;步骤4:将步骤3中的所有共面轮廓线集合进行轮廓线分组,将所有形成封闭廓线的边分为一组;步骤5:根据轮廓线向量集合Vector中每一组封闭轮廓线生成一个独立的拓扑面,并判断此拓扑面为洞还是表面,对所有的非洞表面执行布尔求和运算,对洞执行布尔求差运算,生成三维模型。

【技术特征摘要】
一种基于有限元分析后处理结果的快速三维可视化方法,其特征在于步骤1生成网格单元体集合,分解网格单元体,剔除内部的公共数据面,生成外轮廓面集合;步骤2对步骤1中生成的外轮廓面集合进行共面分组,将所有位于同一个平面上的单元数据面归为一组,每组为一个共面的单元数据面集合CoMAP;步骤3将每一组共面的单元数据面集合中的所有单元数据面分解成为独立的单元数据边,剔除所有的内部公共边,得到共面轮廓线集合;步骤4将步骤3中的所有共面轮廓线集合进行轮廓线分组,将所有形成封闭廓线的边分为一组;步骤5根据轮廓线向量集合Vector中每一组封闭轮廓线生成一个独立的拓扑面,并判断此拓扑面为洞还是表面,对所有的非洞表面执行布尔求和运算,对洞执行布尔求差运算,生成三维模型。2.根据权利要求1所述的基于有限元分析后处理结果的快速三维可视化方法,其特征 在于所述的步骤1主要由以下步骤实现步骤①读入全部网格单元体集合中的网格单元数据;步骤②将每一个网格单元数据按照数据面顶点定义顺序划分成不同单元数据面 Face ;步骤③生成一个初始时为空的数据面集合FaceMAP,判断单元数据面Face是否存在 数据面集合FaceMAP中如果存在,则从FaceMAP删除此数据面;如果不存在,则在FaceMAP 中添加此单元数据面;步骤④判断全部网格单元体集合中的网格单元数据是否遍历完毕如果没有遍历完 毕,则返回步骤①;否则,该阶段结束,数据面集合中存储了所有网格单元体的外表面的可 见单元数据面,称之为外轮廓面集合。3.根据权利要求1所述的基于有限元分析后处理结果的快速三维可视化方法,其特征 在于所述的步骤2主要由以下四个步骤组成步骤①生成一个系数共面映射表ALLMAP,所述的ALLMAP为平面方程系数和单元数据 面集合组成的映射表,其中的平面方程系数与单元数据面集合为一一对应的关系;步骤②从外轮廓面集合中任取一单元数据面,获取单元数据面的顶点数据,求解该单 元数据面的平面方程,获取平面方程系数D ;步骤③在系数共面映射表ALLMAP中查找,判断该平面方程系数是否在系数共面映射 表ALLMAP中,如果是,获取此系数对应的单元数据面集合CoMAP,将当前单元数据面添加 到对应的单元数据面集合CoMAP中;否则,生成与此系数对应的单元数据面集合CoMAP,将 当前单元数据面添加到单元数据面集合CoMAP中,并将此系数和新生成的单元数据面集合 CoMAP 一起添加到ALLMAP中;步骤④判断轮廓面集合中的所有单元数据面是否遍历完毕如果不是,返回步骤②; 如果是,该阶段结束,系数共面映射表ALLMAP中的单元数据面集合CoMAP为共面的单元数 据面集合。4.根据权利要求1所述的基于有限元分析后处理结果的快速三维可视化方法,其特征 在于所述的步骤3主要由以下七个步骤组成步骤①在系数共面映射表ALLMAP中任取一个共面的单元数据面集合CoMap ; 步骤②生成一个共面单元数据边集合EdgeMap,初始为空;步骤③从共面的单元数据面集合CoMap中任取一个单元数据面Face,依据数据面 分解原理,将单元数据面分解成单元...

【专利技术属性】
技术研发人员:龚光红李亮李妮黄展鹏
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:11[]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1