一种用于高放废物处置库三维网格模型的快速剖切方法

文档序号:9433589阅读:438来源:国知局
一种用于高放废物处置库三维网格模型的快速剖切方法
【技术领域】
[0001] 本发明涉及一种用于高放废物处置库三维网格模型的快速剖切方法,能够支持基 于四面体构建的高放废物处置库三维网格模型的任意切面的三维快速剖切,属于三维建模
技术领域。
【背景技术】
[0002] 处置高放废物的地下工程即称为高放废物处置库。由于高放废物含有长半衰期的 放射性核素,要求处置库有(1~1〇) *l〇5a,甚至更长的安全期,这是目前任何一个工程都达 不到的要求,因此,对处置库的演化做出精准预测需要借助计算机进行数值模拟。由于数值 模拟中需要的计算网格数量可达到几百万个,有限元分析通常产生出大量的输出数据,为 了能够表示物体内部数据并易于理解,通常需要对三维模型进行剖切操作,对三维模型截 面进行观察和分析。
[0003] 在三维建模技术领域中,三维模型剖切是反映三维模型内部空间结构与属性特征 的重要方法。三维模型的网格数据不仅包含空间坐标信息,而且包含其几何元素之间连接 关系的拓扑信息,在计算剖切面时,需要同时处理空间信息和拓扑信息。现有方法在计算剖 切面时,通常将四面体划分为四个三角形片,通过计算模型三角面片三个顶点到剖切平面 的距离值,判断三角面片与剖切平面位置关系,实现三维模型的剖切。由于剖切过程中需要 遍历三维模型的所有四面体网格,找到与剖切面相交的所有四面体网格,计算四面体网格 中每个三角面片的三个顶点到剖切平面距离值判断三角面片与剖切平面位置关系,剖切过 程中还需要剔除已有三角网格信息,添加新生成三角网格信息。对于四面体网格规模达到 百万级的三维模型,遍历所有三角面片所花费的时间长,容易对实时交互性产生巨大影响, 使操作者难以等待。

【发明内容】

[0004] 针对基于四面体构建的高放废物处置库三维网格模型,当四面体网格规模达到 百万级时,现有方法对三维模型进行剖切,剖切计算时间长,实时交互性较差的缺点,本发 明提供一种用于高放废物处置库三维网格模型的快速剖切方法,能够实现高放废物处置库 三维网格模型的任意切面的三维快速剖切。
[0005] -种用于高放废物处置库三维网格模型的快速剖切方法的技术方案如下: 1)读入高放废物处置库三维网格模型的结点、边、三角面片、四面体单元等基础数据, 生成所有的结点、边线和三角面片信息链表,对生成的边线链表和三角面片链表进行搜索, 检束重合的边线和三角面片,相同的元素只保留一份。
[0006] 2)网格模型空间自适应划分:首先建立高放废物处置库三维网格模型的最小包围 盒,划分区域中三角面片的个数会直接影响搜索效率,本方法根据处置库模型的最小包围 盒尺寸,自适应地选择划分区域中三角面片的个数; 其次,遍历高放废物处置库的网格模型,搜索模型中的最小包围盒,以此包围盒建立八 叉树根结点,从三维模型文件中读入三角面片,计算出其几何重心点,并将该三角面片索引 加入到根结点,对应的根结点三角形个数计数器自增一;然后依次读入三角面片,当结点中 的个数达到预定设置的阀值时,对根结点进行区域划分并建立子结点。
[0007] 3)剖切网格的快速搜索:首先根据剖面信息对高放废物处置库模型的划分区域进 行预搜索,初步确定在哪些区域,然后通过区域坐标,查找区域结点下的八个子结点,先判 断剖切平面与哪些子结点对应的空间区域相交,相交则进入这一节点,再判断此节点是否 为叶节点,如果是,则进行相应的网格空间信息、拓扑信息处理操作;否则继续查找该节点 的子节点,一直查找到叶节点才进行相应的网格空间信息、拓扑信息处理操作。
[0008] 4)网格快速剖切:由于剖切面与网格进行剖切操作,会导致网格几何元素的删除 和添加,本方法建立上、下两个链表,根据三角面片的顶点到剖切面的距离,将三角面片的 索引信息放入相应链表,并对剖切网格的空间信息和拓扑信息进行同步处理,从而保持模 型的几何完整性。
[0009] 本发明的方法适用于高放废物处置库三维网格模型。与现有技术相比,本发明的 有益效果是:可支持高放废物处置库三维网格模型任意角度切面任意次数的剖切;剖切面 生成速度快,高放废物处置库三维网格模型中四面体数量大于100万且小于500万时,剖切 面生成时间小于3秒,可实时动态刷新处置库模型。
【附图说明】
[0010] 图1是高放废物处置库模型的划分存储流程图。
[0011] 图2是网格快速搜索流程图。
[0012] 图3是三角面片与剖切平面有一个交点。
[0013] 图4是三角面片与剖切平面有二个交点。
[0014] 图5是三角面片的一条边在剖切平面上。
[0015] 图6是三角面片与剖切平面有一个交点。
【具体实施方式】
[0016] 下面结合附图和实施例,对本发明作进一步详细的描述。
[0017] 本发明的一种用于高放废物处置库三维网格模型的快速剖切方法包括以下步 骤: 1)读入高放废物处置库三维网格模型的结点、边、三角面片、四面体单元等基础数据, 生成所有的结点、边线和三角面片信息链表,对生成的边线链表和三角面片链表进行搜索, 检束重合的边线和三角面片,相同的元素只保留一份。
[0018] 2)网格模型空间自适应划分:首先建立处置库三维网格模型的最小包围盒,划分 区域中三角面片的个数会直接影响搜索效率,本方法根据处置库模型的最小包围盒尺寸, 自适应地选择划分区域中三角面片的个数。选择方法为:当最小包围盒尺寸与模型的四面 体数量比值大于1000,选择最小划分区域中的三角面片个数为200 ;当最小包围盒尺寸与 模型的四面体数量比值小于1000且大于500,选择最小划分区域中的三角面片个数为150 ; 当最小包围盒尺寸与模型的四面体数量比值小于500且大于200,选择最小划分区域中的 三角面片个数为100 ;当最小包围盒尺寸与模型的四面体数量比值小于200,选择最小划分 区域中的三角面片个数为50。
[0019] 其次,遍历处置库的网格模型,搜索模型中的最小包围盒,以此包围盒建立八叉树 根结点,从三维模型文件中读入三角面片,计算出其几何重心点,并将该三角面片索引加入 到根结点,对应的根结点三角形个数计数器自增一;然后依次读入三角面片,当结点中的个 数达到预定设置的阀值时,对根结点进行区域划分并建立子结点。
[0020] 在处理子结点时,同样判断此结点的三角面片个数是否达到预定设置的阀值,如 果没有,则存入新读入的三角面片信息并将计数器自增;如果达到阀值,则对此结点进行 进一步分解,计算此结点的最小包围盒质心点,用最小包围盒八个顶点和质心点分别建立 相应的八个子结点,然后此结点上的三角面片索引数据内容分别插入新建立的八个子结点 中,初始化各叶结点
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1