一种三维地质体模型隐式剖切方法与流程

文档序号:23057938发布日期:2020-11-25 17:38阅读:131来源:国知局
一种三维地质体模型隐式剖切方法与流程

本发明涉及三维地质体模型剖切技术领域,特别是涉及一种三维地质体模型隐式剖切方法。



背景技术:

在三维地质建模剖切分析领域中,对已建立的模型进行剖切分析是传统研究方向,在模型检验和反映地质构造间的复杂空间关系中具有重要的应用意义。目前的剖切算法已比较成熟,但大规模的浮点计算与模型的拓扑不一致容易造成剖面生成空洞等错误依然是一个亟待解决的难题。目前的三维地质体的剖切算法,大多是基于不规则三角面片的面模型,通过三角面片的求交计算来实现,而算法设计无法适用于所有特殊地质情况的模型或含有拓扑错误的模型,从剖面图生成效果上来说易造成空洞现象且精度深度不能调节,难以有效地支持地质分析。所以,一个合理且高精度的剖面图有利于地质人员对地质现象与地质形成过程的理解和分析,但合理的剖面生成需要地质知识驱动来支撑。据此,针对上述问题,有必要提出一种合理且高精度的三维地质体模型隐式剖切方法。



技术实现要素:

针对现有技术存在的问题,本发明提供一种三维地质体模型隐式剖切方法,能够基于隐式建模数据源直接生成可调精度与深度的剖面图,且避免空洞现象。

本发明的技术方案为:

一种三维地质体模型隐式剖切方法,其特征在于,包括下述步骤:

步骤1:基于地质区域的建模数据源,提取地质界面接触点;所述建模数据源为钻孔建模数据源或prb建模数据源,当所述建模数据源为prb建模数据源时计算地质界面接触点的推估方向;

步骤2:利用地质界面接触点计算各地质界面的隐式函数;获取地质区域中各地质体的地质界面的编号信息,记录每个地质体的内部点在该地质体的地质界面的隐式函数上的正负值;

步骤3:设定地质界面参与分割剖面的运算顺序,形成地质界面列表;

步骤4:利用建模数据源构建地质区域的自定义深度与精度的四面体栅格场;

步骤5:对四面体栅格场与剖面的隐式函数进行求交计算,获取剖面的三角面片集合;

步骤6:根据地质界面与剖面的位置关系,进行剖面分割;

步骤6.1:令i=1;

步骤6.2:选中地质界面列表中的第i个地质界面,判断参与第i个地质界面的隐式函数计算的地质界面接触点集ai是否位于剖面两侧:若是,则对第i个地质界面与剖面进行相交运算,进入步骤6.5;若否,则当所述建模数据源为钻孔建模数据源时进入步骤6.5,当所述建模数据源为prb建模数据源时进入步骤6.3;

步骤6.3:根据地质界面接触点集ai中每个地质界面接触点的推估方向,将该地质界面接触点向下推估到设定的推估深度,得到地下推估点集ai',判断地下推估点集ai'是否位于剖面两侧:若是,则对第i个地质界面与剖面进行相交运算,进入步骤6.5;若否,则进入步骤6.4;

步骤6.4:判断地质界面接触点集ai和地下推估点集ai'是否位于剖面两侧:若是,则对第i个地质界面与剖面进行相交运算,进入步骤6.5;若否,则第i个地质界面不与剖面相交,进入步骤6.5;

步骤6.5:令i=i+1,若i≤i,则转至步骤6.2;若i>i,则进入步骤6.6;其中,i为地质界面列表中地质界面的总数;

步骤6.6:参与相交运算的地质界面,将剖面的三角面片集合分割为多个剖面子区域,得到剖面子区域集合b,并记录每个剖面子区域的参与分割的地质界面的编号信息;

步骤7:利用每个剖面子区域的参与分割的地质界面的编号信息对每个剖面子区域进行地质属性界定,生成最终的剖面图;

步骤7.1:对于每个剖面子区域b∈b,寻找可能包含剖面子区域b的地质体,得到地质体集合cb;其中,若剖面子区域的参与分割的地质界面的编号信息完全被地质体的地质界面的编号信息所包含,则该地质体可能包含该剖面子区域;

步骤7.2:提取剖面子区域b的每个三角面片的重心构成剖面子区域b的内部点集合mb;

步骤7.3:计算每个内部点m∈mb在每个地质体c∈cb的地质界面的隐式函数上的正负值,若与步骤2中地质体c的内部点在地质体c的地质界面的隐式函数上的正负值一致,则内部点m属于地质体c;否则,内部点m不属于地质体c;记录内部点集合mb中属于地质体c的内部点数量nbc;

步骤7.4:对于每个剖面子区域b∈b,将max{nbc|c∈cb}对应的地质体的属性赋予剖面子区域b,形成最终的剖面图。

所述步骤1具体包括:

若所述建模数据源为钻孔建模数据源,则基于钻孔建模数据源提取每层的临界点作为地质界面接触点;

若所述建模数据源为prb建模数据源,则基于prb建模数据源提取平面地质图内地质界线上的点及约束曲面的约束线上的点作为地质界面接触点,并利用地质界面接触点的产状信息计算地质界面接触点的推估方向。

所述步骤1中,若所述建模数据源为钻孔建模数据源,则赋予地质界面在地质界面接触点处竖直向下的法向量;若所述建模数据源为prb建模数据源,则利用地质界面接触点的产状信息计算地质界面在地质界面接触点处的法向量;所述步骤2中,所述隐式函数为hermite径向基函数。

所述步骤3中,设定地质界面参与分割剖面的运算顺序,包括:处于地质区域边缘的地质体的地质界面在运算顺序上优先于不处于地质区域边缘的地质体的地质界面;不处于地质区域边缘的地质体中,包含断层的地质体的地质界面在运算顺序上优先于不包含断层的地质体的地质界面;不处于地质区域边缘且不包含断层的地质体中,年代较新的地质界面在运算顺序上优先于年代较老的地质界面。

所述步骤4包括下述步骤:

步骤4.1:对建模数据源中的dem点集进行预处理,得到预处理后的dem点集;所述预处理为抽稀或插值;

步骤4.2:基于预处理后的dem点集构建地质区域的顶面三角网模型;

步骤4.3:按照预设的三棱柱栅格场的层数n和深度h对顶面三角网模型进行向下纵向拉伸,得到层数为n、每层深度为h/n的三棱柱栅格场;

步骤4.4:将三棱柱栅格场中的每个三棱柱体元分解为3个四面体体元,得到地质区域的四面体栅格场。

可通过调整三棱柱栅格场的深度h,来调整提取的剖面的深度;可通过调整三棱柱栅格场的层数n,来调整步骤5中获取的剖面的三角面片的精度,从而调整提取的剖面的精度;其中,在三棱柱栅格场的深度h一定的情况下,三棱柱栅格场的层数n越大,步骤5中获取的剖面的三角面片越小,步骤7中最终生成的剖面图的精度越大。

本发明的有益效果为:

本发明基于隐式建模原理,有效实现了基于隐式建模数据源(钻孔建模数据源或prb建模数据源)直接生成剖面图,无需事先建立完整的模型,从而无需考虑模型类型的影响,而且能够灵活调整剖面深度与精度,解决了现有技术中基于已有地质区域模型(边界表示模型、实体模型)进行剖切计算获取剖面的显式剖切方法所存在的不同类型地质区域模型其显式剖切方法不同、算法设计无法适用于所有特殊地质情况的模型或含有拓扑错误的模型、大规模的浮点计算与模型的拓扑不一致容易造成空洞现象、由于固定了地质区域模型从而无法灵活改变剖面深度与精度的技术问题。

本发明在隐式建模的基础上融入了在地质学知识,根据地质体的地质属性,设定地质界面参与分割剖面的运算顺序,最终利用每个剖面子区域的参与分割的地质界面的编号信息对每个剖面子区域进行地质属性界定而生成的剖面图,符合地质学认知,能够为专业人员对地质现象与地质形成过程的理解提供一种形象直观的方式。

附图说明

图1为本发明的三维地质体模型隐式剖切方法的流程图。

图2为具体实施方式中本发明的三维地质体模型隐式剖切方法的过程框架图。

具体实施方式

下面将结合附图和具体实施方式,对本发明作进一步描述。

如图1和图2所示,本发明的三维地质体模型隐式剖切方法,包括下述步骤:

步骤1:基于地质区域的建模数据源,提取地质界面接触点;所述建模数据源为钻孔建模数据源或prb建模数据源,当所述建模数据源为prb建模数据源时计算地质界面接触点的推估方向。

本实施例中,所述步骤1具体包括:

若所述建模数据源为钻孔建模数据源,则基于钻孔建模数据源提取每层的临界点作为地质界面接触点;

若所述建模数据源为prb建模数据源,则基于prb建模数据源提取平面地质图内地质界线上的点及约束曲面的约束线上的点作为地质界面接触点,并利用地质界面接触点的产状信息计算地质界面接触点的推估方向。

步骤2:利用地质界面接触点计算各地质界面的隐式函数;获取地质区域中各地质体的地质界面的编号信息,记录每个地质体的内部点在该地质体的地质界面的隐式函数上的正负值。

本实施例中,所述隐式函数为hermite径向基函数。步骤1中,若所述建模数据源为钻孔建模数据源,则赋予地质界面在地质界面接触点处竖直向下的法向量;若所述建模数据源为prb建模数据源,则利用地质界面接触点的产状信息计算地质界面在地质界面接触点处的法向量。

步骤3:设定地质界面参与分割剖面的运算顺序,形成地质界面列表。

本实施例中,根据地质体的地质属性中几何约束、断层约束、地质约束来设定地质界面参与分割剖面的运算顺序,具体包括:处于地质区域边缘的地质体的地质界面在运算顺序上优先于不处于地质区域边缘的地质体的地质界面;不处于地质区域边缘的地质体中,包含断层的地质体的地质界面在运算顺序上优先于不包含断层的地质体的地质界面;不处于地质区域边缘且不包含断层的地质体中,年代较新的地质界面在运算顺序上优先于年代较老的地质界面。

步骤4:利用建模数据源构建地质区域的自定义深度与精度的四面体栅格场:

步骤4.1:对建模数据源中的dem点集进行预处理,得到预处理后的dem点集;所述预处理为抽稀或插值;

步骤4.2:基于预处理后的dem点集构建地质区域的顶面三角网模型;

步骤4.3:按照预设的三棱柱栅格场的层数n和深度h对顶面三角网模型进行向下纵向拉伸,得到层数为n、每层深度为h/n的三棱柱栅格场;

步骤4.4:将三棱柱栅格场中的每个三棱柱体元分解为3个四面体体元,得到地质区域的四面体栅格场。

步骤5:对四面体栅格场与剖面的隐式函数进行求交计算,获取剖面的三角面片集合。

具体地,通过四面体顶点坐标函数值情况,获取四面体与剖面隐式函数的位置关系,再通过线段与剖面隐式函数进行求交计算,获取剖面的三角面片集合。

步骤6:根据地质界面与剖面的位置关系,进行剖面分割:

步骤6.1:令i=1;

步骤6.2:选中地质界面列表中的第i个地质界面,判断参与第i个地质界面的隐式函数计算的地质界面接触点集ai是否位于剖面两侧:若是,则对第i个地质界面与剖面进行相交运算,进入步骤6.5;若否,则当所述建模数据源为钻孔建模数据源时进入步骤6.5,当所述建模数据源为prb建模数据源时进入步骤6.3;

步骤6.3:根据地质界面接触点集ai中每个地质界面接触点的推估方向,将该地质界面接触点向下推估到设定的推估深度,得到地下推估点集ai',判断地下推估点集ai'是否位于剖面两侧:若是,则对第i个地质界面与剖面进行相交运算,进入步骤6.5;若否,则进入步骤6.4;

步骤6.4:判断地质界面接触点集ai和地下推估点集ai'是否位于剖面两侧:若是,则对第i个地质界面与剖面进行相交运算,进入步骤6.5;若否,则第i个地质界面不与剖面相交,进入步骤6.5;

步骤6.5:令i=i+1,若i≤i,则转至步骤6.2;若i>i,则进入步骤6.6;其中,i为地质界面列表中地质界面的总数;

步骤6.6:参与相交运算的地质界面,将剖面的三角面片集合分割为多个剖面子区域,得到剖面子区域集合b,并记录每个剖面子区域的参与分割的地质界面的编号信息。

步骤7:利用每个剖面子区域的参与分割的地质界面的编号信息对每个剖面子区域进行地质属性界定,生成最终的剖面图:

步骤7.1:对于每个剖面子区域b∈b,寻找可能包含剖面子区域b的地质体,得到地质体集合cb;其中,若剖面子区域的参与分割的地质界面的编号信息完全被地质体的地质界面的编号信息所包含,则该地质体可能包含该剖面子区域;

步骤7.2:提取剖面子区域b的每个三角面片的重心构成剖面子区域b的内部点集合mb;

步骤7.3:计算每个内部点m∈mb在每个地质体c∈cb的地质界面的隐式函数上的正负值,若与步骤2中地质体c的内部点在地质体c的地质界面的隐式函数上的正负值一致,则内部点m属于地质体c;否则,内部点m不属于地质体c;记录内部点集合mb中属于地质体c的内部点数量nbc;

步骤7.4:对于每个剖面子区域b∈b,将max{nbc|c∈cb}对应的地质体的属性赋予剖面子区域b,形成最终的剖面图。

本实施例中,可通过调整三棱柱栅格场的深度h,来调整提取的剖面的深度;可通过调整三棱柱栅格场的层数n,来调整步骤5中获取的剖面的三角面片的精度,从而调整提取的剖面的精度;其中,在三棱柱栅格场的深度h一定的情况下,三棱柱栅格场的层数n越大,步骤5中获取的剖面的三角面片越小,步骤7中最终生成的剖面图的精度越大。

可见,本发明基于隐式建模原理,有效实现了基于隐式建模数据源(钻孔建模数据源或prb建模数据源)直接生成剖面图,无需事先建立完整的模型,从而无需考虑模型类型的影响,而且能够灵活调整剖面深度与精度,解决了现有技术中基于已有地质区域模型(边界表示模型、实体模型)进行剖切计算获取剖面的显式剖切方法所存在的不同类型地质区域模型其显式剖切方法不同、算法设计无法适用于所有特殊地质情况的模型或含有拓扑错误的模型、大规模的浮点计算与模型的拓扑不一致容易造成空洞现象、由于固定了地质区域模型从而无法灵活改变剖面深度与精度的技术问题。

而且,本发明在隐式建模的基础上融入了在地质学知识,根据地质体的地质属性,设定地质界面参与分割剖面的运算顺序,最终利用每个剖面子区域的参与分割的地质界面的编号信息对每个剖面子区域进行地质属性界定而生成的剖面图,符合地质学认知,能够为专业人员对地质现象与地质形成过程的理解提供一种形象直观的方式。

显然,上述实施例仅仅是本发明的一部分实施例,而不是全部的实施例。上述实施例仅用于解释本发明,并不构成对本发明保护范围的限定。基于上述实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,也即凡在本申请的精神和原理之内所作的所有修改、等同替换和改进等,均落在本发明要求的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1