一种广义三棱柱空间数据模型的三维剖切方法

文档序号:6630967阅读:935来源:国知局
一种广义三棱柱空间数据模型的三维剖切方法
【专利摘要】本发明公开了一种广义三棱柱(Generalized Tri-Prism)GTP空间数据模型的三维空间剖切方法。该方法通过分析GTP体元数据结构及其与切平面拓扑关系类型,构建剖切类型2级分类体系,针对每种剖切类型设计了可支持GTP任意切面多重剖切操作的“剖切后剩余多面图空间剖分方式”,并在多重剖切的基础上进一步实现空间开挖算法。本发明的方法适用于任何基于GTP空间数据模型构建的三维地质模型,可广泛应用于水文、工程、地矿、油藏勘探等领域的三维地质建模工作中。
【专利说明】一种广义三棱柱空间数据模型的三维剖切方法

【技术领域】
[0001] 本发明涉及一种针对广义三棱柱(GeneralizedTri_Prism)GTP数据模型的三维 空间剖切方法,能够支持基于GTP构建的三维地质模型多重、任意切面的三维剖切以及空 间开挖操作,属于三维地理信息系统的空间分析技术、三维地质建模【技术领域】。

【背景技术】
[0002] 目前,各类空间数据模型,尤其是三维空间数据模型的研究正趋于热化,近年来也 涌现出了很多形式的空间数据模型及其构模方法。其中较为具有代表性的有张煜、白世 伟等提出的直三棱柱(ATP)空间数据模型及其构模方法(张煜,白世伟.一种基于三棱 柱体体元的三维地层建模方法及应用[J].中国图象图形学报,2001,6A(3) :285-290.); 程朋根、文红等提出的类三棱柱(QTP)空间数据模型及其构模与剖切算法(程朋根,文 红.三维空间数据建模及算法[M].北京:国防工业出版社,2011.);以及吴立新等提出并 发展的广义三棱柱(GTP)空间数据模型(WuLixin.Topologicalrelationsembodied inageneralizedtri-prism(GTP)modelfora3Dgeo-sciencemodelingsystem[J]. Computers&Geosciences,2005,30(4) :405-418.)等。其中,广义三棱柱空间数据模型 (GTP)由于其"对侧面不要求为平面"、"上下三角面不要求平行"以及"可退化为四面体和 四棱锥空间数据模型"等显著特征,可以有效地模拟尖灭、断层、透镜体等复杂的地质结构, 因而在实际工作中被广泛应用于各类复杂地质现象建模中。
[0003] 在三维地质建模研究与应用领域,三维空间剖切是反映地质体内部空间与属性特 征的重要手段;同时它也是进行空间开挖模拟、空间地质对象布尔运算等常用空间分析操 作的基础。随着基于GTP空间数据模型在三维地质建模领域中应用的逐步深入与发展,对 于一个具有较强适用性的、可支持多重任意切面剖切GTP地质模型空间剖切方法的需求也 日趋迫切。然而,现有对地质模型的空间剖切的方法一般根据某种空间数据模型的几何形 态特征而设计,仅能满足单次剖切的要求。由于在历经一次剖切操作后,GTP空间数据模型 的几何形态特征会发生显著的改变。对于一个标准的GTP体元,经过两次任意平面的剖切 后,将出现侧面非平面的形态特征,或退化为四棱锥、四面体等体元,这就导致在进行多重 剖切时原有的剖切算法无法继续适用,难以准确、有效支撑三维地质模型的多重剖切操作。


【发明内容】

[0004] 现有基于GTP构建的三维地质模型剖切方法,可以适用于坚直切面多次剖切。但 当切面为非坚直切面时(即任意姿态的切平面),在现有方法下,GTP体元被剖切后会出现 大量的形态特征不定的几何体,从而使得任何面对特定形态特征的空间剖切算法失去适用 性。解决多重剖切问题的一个有效思路是在剖切的基础上对这些保留下来形态特征不定的 几何体进行剖分,将一个形态特征不定的几何体划分为若干形态特征明确的GTP体元,从 而使得空间剖切算法可以继续适用。目前剖切方法已有遵循该思路的先例,但大多针对直 三棱柱(TP)空间数据模型或者规则空间数据模型而设计,不能适用于基于GTP构建的地质 模型的任意多重剖切。本发明的目的是提出一种对GTP体元形态特征不敏感的、基于GTP体元数据结构的空间剖切方法,以解决现有空间剖切算法无法支持GTP地质模型多重任意 切面空间剖切的问题。
[0005] 为了实现上述发明目的,本发明采用的技术方案如下:
[0006] -种广义三棱柱空间数据模型的三维剖切方法,包括如下几个步骤:
[0007] 1)设计广义三棱柱空间数据模型GTP体元的通用数据结构,将具有任意形态一个 GTP体元,统一描述成一个六维向量(p0,pl,p2,p3,p4,p5),其中p0、pi、p2代表GTP体元 上三角面的三个顶点,P3、p4、p5表示下三角面的三个顶点;
[0008] 2)利用方程⑴定义一个切平面,
[0009] Ax+By+Cz+D = 0 (1)
[0010] 其中:A、B、C分别是该平面的法向量在X,y,z轴的分量,D=A*x0+B*y0+C*z0, x0,y0,z0表示位于该平面上的任意一点的三维坐标,由此任意一个切平面方程可由一个四 维向量(A,B,C,D)表示;
[0011] 3)判断GTP体元位于剖切平面上的位置,如果切剖部分位于切平面上半部分,此 时,将所有位于切平面上半部分的GTP体元从地质模型的体元集合中删除;
[0012] 4)对于与切平面有交点的GTP体元:分析GTP体元数据结构特征,基于切平面与 GTP体元之间的拓扑关系,构建GTP体元与切平面空间位置关系种类的2级分类体系;
[0013] 5)依据以上分类体系,根据输入切平面的方程与GTP体元顶点坐标,可得出当前 剖切类型,并由各交点所处棱边两端点的三维坐标,计算出切平面与GTP体元各交点P的三 维坐标x、y、z,其计算公式为:
[0014]

【权利要求】
1. 一种广义三棱柱空间数据模型的三维剖切方法,包括如下几个步骤: 1) 设计广义三棱柱空间数据模型GTP体元的通用数据结构,将具有任意形态一个GTP 体元,统一描述成一个六维向量(P〇, pl,p2, p3, p4, p5),其中p0、pl、p2代表GTP体元上三 角面的三个顶点,p3、p4、p5表示下三角面的三个顶点; 2) 利用方程(1)定义一个切平面, Ax+By+Cz+D = 0 (1) 其中:A、B、C分别是该平面的法向量在X,y,z轴的分量,D = A*xO+B*yO+C*zO, xO, yO, z〇表示位于该平面上的任意一点的三维坐标,由此任意一个切平面方程可由一个四维向量 (A, B,C,D)表示; 3) 判断GTP体元位于剖切平面上的位置,如果切剖部分位于切平面上半部分,此时,将 所有位于切平面上半部分的GTP体元从地质模型的体元集合中删除; 4) 对于与切平面有交点的GTP体元:分析GTP体元数据结构特征,基于切平面与GTP体 元之间的拓扑关系,构建GTP体元与切平面空间位置关系种类的2级分类体系; 5) 依据以上分类体系,根据输入切平面的方程与GTP体元顶点坐标,可得出当前剖切 类型,并由各交点所处棱边两端点的三维坐标,计算出切平面与GTP体元各交点P的三维坐 标x、y、z,其计算公式为: .D -10 λ-^.ν〇 + (.ν1-χ〇)^- MOl V= v() + (vl-ν〇)*° -/〇 2 ......... MOl ,,. D-/Q z = z0 + (z\ -zO)^- MOl 式中,D = A*pxO+B*pyO+OpzO, pxO, pyO, pzO表示位于该平面上的任意一点的三维坐 标,(x0, y0, z0)、(xl,yl,zl)表示棱边两端点的三维坐标值,IO = A*x0+B*y0+C*z0, MOl =A(xl-χΟ)+B(yl-y0)+C (zl-zO); 6) 对经步骤5)剖切操作完成后GTP体元剩余部分所形成的多面体进行剖分,以维持空 间数据模型一致性;针对每种剖切类型,将形态不定的剖切后剩余多面体剖分成若干四面 体形态的GTP体元,再按照步骤3)中的分类体系再一次重复步骤4)和5)进行剖分操作; 7) 将多次单剖分操作进行组合,可实现空间开挖操作,其具体步骤为:构建组成复合 切剖多面体一系列面片所属切剖平面的数组集合w ;判断每一个平面方程与待复合剖切内 部空间的位置关系;遍历w中的每一个切剖平面,针对每一个平面,根据其与待剖切空间的 位置关系,分别对地质体模型进行两次保留部分不同的剖切操作,第一次剖切得到的结果 作为下一个平面的剖切对象,第二次剖切得到的结果,则保存起来作为最后的开挖结果; 8) 判断当前GTP体元形态是否为体对象,为不影响可视化效果,将形态退化为三角面 或者三维线段的GTP体元从地质模型的体元集合中删除; 9) 遍历GTP类型的三维地质模型中的每一个GTP体元,对每个体元均按照上述步骤1) 至8)进行处理,即可得到最终的地质剖切结果。
2. 根据权利要求1所述的一种广义三棱柱空间数据模型的三维剖切方法,其特征在 于,所述步骤6)的剖分原则为:必须使用切平面剖切时形成的交点P(x,y,z)以及GTP原 有顶点对来构建多面体的剖分结果,不可额外增加任何新的辅助顶点,以屏蔽GTP体元形 态变化的影响。
【文档编号】G06T19/00GK104318618SQ201410560115
【公开日】2015年1月28日 申请日期:2014年10月20日 优先权日:2014年10月20日
【发明者】马钧霆, 陈锁忠, 何志超 申请人:南京师范大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1