工程地质中基于OpenCASCADE的地表和地层三维建模

2014-08-25 02:16,,,
地质学刊 2014年3期
关键词:工程地质高程层面

,,,

(1.中国地质大学(武汉)数学地质遥感地质研究所,湖北 武汉 430074; 2.中交第二公路勘察设计研究院有限公司,湖北 武汉 430052)

0 引 言

在工程地质中,地质信息的直接表达多借助于地表地形和地下地层,而地表地形和地下地层的显示和分析都局限于二维图,但二维图所包含的信息量有限,描述一定的空间位置关系需要多张二维图(徐元进等,2007),对直接、全面、准确分析工程设施周围地表自然形态和地下地质情况造成一定的困难(朱大培等,2001)。三维图形的应用使传统二维静态平面地形和平面地层向虚拟三维空间方向发展,实现工程设施周围地表地形及地下地层的三维模拟,能够最大限度地增强工程地质分析的直观性和准确性,这对实际工程设计和建设具有重要的参考意义。

利用三维图表达工程地质的地表地形和地下信息得到了很多专家学者的重视。许国等(2013)利用GOCAD建立的三维地质可视化模型成功应用于水电岩土工程中;朱良峰等(2012)提出了工程地质空间多场耦合构模技术,并在三维地质建模和可视化的实例应用中取得了良好的效果;徐文杰等(2007)使用CAD软件完成了云南某高速公路周围工程地质体的三维模型;熊祖强等(2007a)采用TIN模型,借助GIS 技术,开发了工程地质三维建模及分析系统;李建华等(2003)提出了一种面向对象的三维矢量与栅格混合模型,对工程地质研究的主要对象进行了三维空间建模。从以上研究可以看出,三维模型及其可视化技术已成为工程地质应用的重要手段。

本研究使用开源的三维造型引擎OpenCASCADE(OCC),进行工程地质中相关功能的开发。OCC是由法国Matra Datavision公司推出的面向对象的图形开发包,并提供针对三维图形开发处理的多种算法,多用于解决CAD系统、仿真应用程序、三维建模程序等的三维几何造型问题。OCC拥有强大的三维建模功能,并提供了点、线、面、体和复杂形体的显示和交互操作,利用OCC可实现纹理、光照、图元填充、渲染等图形操作和放大、缩小、旋转等动态操作(丁伟等,2010)。

利用OCC三维图形建模技术,结合工程设施实例——桥梁工程,模拟了桥梁周围地表地形和地下地层三维模型,并在VC++环境下开发了相应的三维可视化平台。这项研究的独特之处是利用高度逼真的曲面模拟技术建立连续、光滑、细腻的地形和地层层面表面模型,在相同数据量的基础上,这是传统的三角网建模技术难以做到的。

1 地表三维模拟

三维地表模型模拟多基于数字地面模型(DTM)。DTM是描述地面特征空间分布有序数值阵列,带有空间位置特征和地表属性特征描述。DTM可通过地表等高线及地表属性多边形信息,采用适当等高线内插拟合方法,生成真实表述地表实际特征的数字高程模型(DEM)(万建华等,2005)。利用区域DEM数据和地表已知点高程,对地表进行三维构建。

1.1 高程插值

地表高程数据除了地形图中的DEM外,还有野外实测高程数据。野外数据一般都是桥梁附近钻孔实测的地表高程值,因而具有点间距小、范围小、精度较高的特点。为确保三维地表模型模拟的真实性,首先获取地形图中的DEM值,然后使用精度较高的野外实测地形高程数据对地形图中相同范围的DEM值进行数据合并,得到地表离散高程点数据。

1.2 地表三维模型构建

地表离散高程点数据中,DEM数据以等高线为基准进行获取,用等高线获取的DEM数据有2个较为明显的缺点:一个是等高线的台阶痕迹造成DEM高程点数据的台阶痕迹分布;另一个是等高线的不均匀性造成DEM高程点数据的不均匀分布,这2个缺点导致DEM一些区域的数据很密集,一些区域的数据很稀少。传统的三角网建模虽具有高精度、易于处理地性线(如断裂线、构造线等)等特点(潘胜玲等,2007;张敏等,2009;毛先成等,2013),但在数据密集区域会出现三角网数量太多,影响程序运行速度(宋效东等,2012;余淑娟等,2013);并且随着图形的放大,特别是数据稀少区域三角网形态变得清晰(图1),地表造型是不光滑连续的,影响整体效果。

图1 三角网法三维地表图

为了避免因插值增加计算量、因取值降低精度,本研究使用原始DEM数据,通过填充曲面进行模拟,这是OCC提供的一种先进曲面建模技术,也叫空洞填充、约束填充。该方法在生成曲面时需满足几个约束条件。

(1) 点约束。曲面必须通过给定的点。

(2) 点约束与相切约束,还有给定曲率(可选项),加上相对于另一个曲面的Gn(表示2个几何对象的实际连续程度)连续要求。

(3) 曲线约束。曲面必须通过给定的曲线。

(4) 具有相切约束的曲线,加上相对于另一个曲面的Gn连续要求。

构建填充曲面的主算法是OCC中的 GeomPlate_BuildPlateSurface类库所包含的曲面建模算法,算法首先利用原始数据的空间坐标在平面(这里是指XY平面)上投影生成初始平面,然后通过给定点约束条件对应的初始平面投影坐标约束生成曲面模型。使用OCC曲面建模方法构建地表模型,只需要有限的高程点(高程点的顺序没有要求),不需要其他更多的地表面信息,当遇到复杂地表面或者高程点数据不完整(存在数据疏密差别较大、数据空洞)时,使用该方法更具有优势。该方法建模结果如图2,从图2中可看出,曲面建模所得三维地表模型在连续程度、光滑度、细腻度上,效果明显好于图1。

图2 OCC曲面建模技术三维地表图

填充曲面建模核心代码如下:

//myPlane为初始平面

Plate_PinpointConstraint PCst(pntXY,aVec.XYZ());//点约束

myPlate.Load(PCst);// myPlate为Plate_Plate对象

Handle(GeomPlate_Surface) myPlateSurf=new GeomPlate_Surface(myPlane,myPlate);

GeomPlate_MakeApprox aMKS(myPlateSurf,Precision::Approximation(),4,7,0.001,0);

myGround=aMKS.Surface();

2 地层三维模拟

三维地层建模是建立在以岩(土)性为要素的单一体划分的基础之上的(王纯祥等,2003)。三维地层构建的原始数据大多是钻孔数据,逻辑基础是地层划分,因此,准确模拟桥梁地下三维地层模型就需要地质钻孔、地质分层等相关地学信息。

2.1 地层划分

地层是地质实体和地质构造赋存的物质基础,是在一定地质时期内形成的层状堆积物或岩石(张渭军等,2006),简单的地层是按一定的层理在空间范围内连续分布,相邻的地层之间由地层接触面(每个地层的层底面或相邻下伏地层的层顶面都是地层接触面)加以区分,同一地层具有相同的岩性特征,不同地层依据岩性不同按地层层序垂向叠加,这些特征是进行地层划分和地层三维模拟的逻辑基础。

地层划分主要依据钻孔资料,钻孔资料直接反映地下岩(土)层的分布状况。地层划分应当建立在适当的地质解释方法理论之上(贺怀建等,2002),根据钻孔资料,通过解译、推断来确定地层的空间分布。地层划分的主要步骤如下。

(1) 分析所有钻孔资料,确定研究区域的钻孔地层总数以及层间空间位置和接触关系。将研究区所有钻孔资料中钻孔所通过岩(土)层层数最大、沉积层序最完整的钻孔地层层数作为研究区地层总数,根据钻孔地层岩性不同及钻孔地层空间位置分布,岩性相同并在垂直空间上位置相近的钻孔看作一层,然后依据岩性的垂向层序关系(即钻孔所通过岩(土)层的上下关系)对所有钻孔分层排序,确定钻孔地层分层顺序。

(2) 处理缺失的钻孔地层。按照钻孔地层分层顺序,参照步骤(1) 所确定层数最大、沉积层序最完整的钻孔(后文称为标准钻孔),与标准钻孔逐个比较,判断钻孔地层是否缺失,如果某个钻孔中所有地层岩(土)层与标准钻孔的地层岩性相同,并且所处空间位置相似,则可判断这个钻孔无地层缺失;否则,认为该钻孔缺失地层,并将钻孔中缺失地层现象视为尖灭现象。处理方法是通过钻孔地层层面相交处理的方式来消除,即使该钻孔地层的厚度为0,也就是使该钻孔地层层面的高程和相邻上覆钻孔地层层底面高程相同(如图3所示的1和2层,3和4层,5和6层处理结果)。

(3) 确定钻孔地层层面编号。按照钻孔地层空间组成顺序,由顶至底、逐层递增对每个钻孔的地层层顶面进行编号,即钻孔最顶层的地层层顶面编号为1,然后按照顺序逐层递增,直至最后一层,并对该层层底面进行编号;对于钻孔中缺失的地层,按步骤(2)方法处理,确保所有钻孔地层的层顶面编号维数相同(图3)。

图3 钻孔地层划分方法

2.2 地层三维模型构建

对于地层三维建模,首先根据地层各层之间的接触界面生成地层模型的各个层面,然后在各地层层面模型的基础上构造出层面轮廓,进而形成三维地层实体。

(1) 构建三维地层层面。根据钻孔地层划分结果,按照钻孔地层层面编号并对应钻孔XY平面坐标,记录所有钻孔各层层面空间高程数据值。将所有钻孔第一层层面高程数据和前期所得地表离散高程点数据作为点约束条件,采用上述OCC曲面建模方法——填充曲面建模。① 首先完成地层最顶层层面模型(即地表三维模型,以下称为“标准层面模型”)的构建。将标准层面模型的外边界作为约束范围,确定三维地层建模范围:沿着钻孔深度由上至下拖延至建模范围的全部地层,确保各个层面具有上下一致的、确定的拓扑关系。 ② 按照钻孔到邻近钻孔和标准层面模型的外边界之间的范围作为该钻孔约束范围的原则,将该钻孔约束范围对应的地表离散高程点数据所记录高程值逐层减去该钻孔各层层厚的累加值,就得到该钻孔约束范围所对应地层各层的离散高程点数据。例如,地表某一局部小范围高程值减去地层第1层厚度,得到编号为2的地层层面高程值,减去第1层和第2层厚度累加值就得到编号为3的地层层面高程值。依此原理,逐个计算所有钻孔的约束范围,获得地层各层面的离散点高程数据。 ③ 利用填充曲面建模完成三维地层各层面曲面模型的构建。

(2) 生成三维地层实体。在三维地层层面模型的基础之上,通过外围轮廓线重构,将上下相邻的地层层面的曲面模型在垂直方向上进行缝合(郑坤等,2013;周良辰等,2013),即可生成完整的三维地层实体模型。地层层面模型缝合成地层实体主要是通过OCC提供的三维几何体造型类库中的BRepOffsetAPI_ThruSections类所包含的算法来实现,该算法创建封闭实体就是通过一系列具有基本拓扑关系的网格缝合而成的,而上下相邻的地层层面模型的外围轮廓线即是具有上下一致的、确定的拓扑关系网格,利用该算法将其缝合,即可得到该层地层的三维实体模型,对其他地层均采用上述方法生成所有地层的三维地层实体模型,最后将所有三维地层实体模型进行合并,即得到整个研究区的三维地层模型。

三维地层实体模型构建核心代码如下:

BRepOffsetAPI_ThruSections generator(Standard_True,Standard_True);

generator.AddWire(aMKw1.Wire());//aMKw1.Wire()为某一地层的层顶面轮廓网格

generator.AddWire(aMKw2.Wire());}//aMKw2.Wire()为该地层的层底面轮廓网格

generator.Build();

TopoDS_Shape myLayerShape=generator.Shape();

3 三维可视化

三维可视化属于三维建模的后期表现过程,是在三维模型建立的基础之上,采用计算机图形技术,将几何描述以三维真实图像形式予以表现(熊祖强等,2007b)。本次研究基于OCC在VC++平台下开发了良好的三维模型可视化平台,并实现平台的多种三维场景控制功能,包括旋转、移动、放大、缩小、全屏显示等三维操作常用功能。此外,还有三维图层控制功能,包括“实体显示”、线框显示以及“透视显示”3种模式,实现了对地质信息的真实三维表达。结合已有桥梁三维模型,通过三维可视化可以直观、清晰地描述桥梁和地表之间的空间位置关系、地层之间位置关系、地层和桥梁桩基之间的位置关系、地层和钻孔之间的位置关系以及地层厚度等信息。在此,以旋转、透视和颜色标示为例分析三维可视化的关键技术及其原理。

3.1 旋转

旋转是三维模型可视化中的重要组成部分。三维图旋转的实现既能避免二维图缺乏整体感不利于观察的缺点,又能避免有限角度观察三维图作结论可靠性差的缺点(徐元进等,2007),实现三维模型空间上的自由旋转,以便用户从任意角度细致地观察模型的结构,获得直观的感性认识。结合已有桥梁三维模型,通过旋转,可从不同方位直接观察到桥梁和地表地形之间的空间位置。

旋转功能是指模型围绕指定中心点和向量旋转单个或多个点或极点,相关代码如下:

gp_Trsf theTransformation;

theTransformation.SetRotation(点或向量,角度);

3.2 三维透视

透视功能在三维模型可视化中是不可或缺的。基于“透视显示”模式,通过旋转等命令,可分析桥梁桩基与地层之间的空间位置关系及接触关系,并可直接获取桥梁桩基底部位于哪个岩土层中,最大限度增加了模型的直观性。相关代码如下:

m_pOCCViewer->SetTransparency(5);

3.3 地层属性标示

地层属性三维标示主要包括地层颜色显示、地层三维材质显示等。颜色可以直观地显示三维信息,显示三维地质体内部不同的属性(岩性、地层接触关系)变化(熊祖强等,2007b)。适当的颜色可对不同地层加以区分,这里以颜色显示为例,主要代码如下:

//i表示地层序号

Handle(TPrsStd_AISPresentation)prs=TPrsStd_AISPresentation::Set(groundLabel, TNaming_NamedShape::GetID());

prs->SetColor(enum Quantity_NameOfColor(i));//颜色标示

4 工程实例应用

利用中交第二公路勘察设计研究院有限公司提供的道新(道真—新寨高速公路)项目推荐线——具合村大桥的实例数据,完成具合村大桥桥体周围特定范围内地表地形和地下地层三维模型构建,并将结果作以下展示(说明:图中地层最底层层面为虚拟层面,黑色细柱状为钻孔模型)。图4展示的是通过OCC建模技术构建的三维地层实体模型,图5所展示的是透明模式下的三维地层模型,图4和图5所展示的三维地层模型的最顶层表面模型是利用等高线数据通过OCC曲面建模技术构建的三维地表地形模型;图6所展示的是线框模式下的三维地层模型,图4所展示的平台为实现的三维可视化平台。实际工程应用表明:利用三维可视化平台的旋转、缩放、移动、透明、线框模式、实体模式和地层属性等功能,不仅能很好地显示桥梁部分地质体的整体轮廓和地下地质环境,而且更能从视图任意方位清晰地观察地表形态和桥梁在地表的空间位置,以及桥梁桩基在地层的相对位置。

图4 三维地层模型和三维可视化平台

图5 三维地层模型(透视模式)

图6 三维地层模型(线框模式)

5 结 论

从三维模型在工程地质中地质信息表达上的优越性出发,分析了利用OCC进行三维地表和地层模型构建的原理和过程,并展示了建模结果在工程方面应用的实例。在地表模型构建方法选择上,对比传统的三角网建模方法,展示了OCC曲面建模技术在模型的连续程度、光滑度、细腻度上所表现出的良好效果。在进行地层模型构建时,从分析钻孔资料、划分地层、构建地层层面模型到生成地层实体,建立了一套完整的三维地层模型模拟流程。利用OCC几何造型在VC++环境下实现了模型的可视化,并开发了三维可视化平台,包括常用的场景控制功能和三维图层的控制功能。

通过大桥工程实例,完成大桥桥体周围特定范围内地表地形和地下地层三维模型构建,并在三维可视化平台下清晰展示了桥梁部分地质体的整体轮廓和地下地质环境,视图任意方位下地表形态和桥梁在地表的空间位置,以及桥梁桩基在地层的相对位置,从而有效地提高了工程建设中地质分析和地质解译的直观性和可靠性。

丁伟,冯飞,吴维勇.2010.基于OpenCASCADE下的点云数据的研究与实现[J].制造业自动化,32(11):216-218.

贺怀建,白世伟.2002.三维地层模型中地层划分的探讨[J].岩土力学,23(5):637-639.

李建华,边馥苓.2003.工程地质三维空间建模技术及其应用研究[J].武汉大学学报:信息科学版,28(1):26-30.

毛先成,赵莹,唐艳华,等.2013.基于TIN的地质界面三维形态分析方法与应用[J].中南大学学报:自然科学版,44(4):1493-1499.

潘胜玲,刘学军.2007.基于标准差的地形三维表面模型建立方法[J].计算机应用研究,24(11):295-297.

宋效东,刘学军,汤国安,等.2012.DEM与地形分析的并行计算[J].地理与地理信息科学,28(4):2-3.

王纯祥,白世伟,贺怀建.2003.三维地层可视化中地质建模研究[J].岩石力学与工程学报,22(10):1722-1726.

万建华,刘娜,马张宝,等.2005.基于OpenGL的三维可视化控件的设计与实现[J].地质与勘探,41(5):69-70.

熊祖强,贺怀建,夏艳华.2007a.工程地质三维建模及分析系统设计研究[J].岩石力学与工程学报,26(2):4177-4182.

熊祖强,贺怀建,夏艳华,等.2007b.工程地质三维建模及分析系统设计研究[J].岩土力学与工程学报,26(2):4178-4182.

徐文杰,胡瑞林,李厚恩,等.2007.CAD软件在工程地质三维建模中的应用[J].工程地质学报,15(2):280-283.

徐元进,胡光道.2007.基于OpenGL的地学三维图的设计与实现[J].计算机工程,33(3):259-260.

许国,王长海.2013.万家口水电站复杂地质体三维模型及其数值模型构建[J].武汉大学学报:工学版,46(4):470-474.

余淑娟,郭飞,李想,等.2013.约束Delaunay四面体剖分在三维地质建模中的应用[J].地理与地理信息科学,29(1):41-44.

朱大培,朱文杰,杨钦,等.2001.地质构造的三维可视化[J].北京:北京航空航天大学学报,27(4):448-450.

张渭军,王文科.2006.基于钻孔数据的地层三维建模与可视化研究[J].大地构造与成矿学,30(1):108-113.

张敏,杨武年,罗智勇,等.2009.复杂地质体建模与可视化新技术[J].计算机应用研究,26(6):2390-2392.

朱良峰,李明江,孙建中.2012.工程地质空间多场耦合构模技术研究[J].岩土力学,33(8):2501-2506.

郑坤,毛维辰,严哲,等.2013.一种含断层的复杂层状地质体三维自动构模方法研究[J].岩土力学,34(2):546-592.

周良辰,林冰仙,王丹,等.2013.平面地质图的三维地质体建模方法研究[J].地球信息科学学报,15(1):46-53.

猜你喜欢
工程地质高程层面
继往开来 守正创新——河北省水文工程地质勘查院
继往开来 守正创新——河北省水文工程地质勘查院
8848.86m珠峰新高程
工程地质勘察中的水文地质危害与相关方法
水文地质在工程地质勘察中的有效应用
健康到底是什么层面的问题
GPS高程拟合算法比较与分析
策略探讨:有效音乐聆听的三层面教学研究(二)
策略探讨:有效音乐聆听的三层面教学研究(七)
SDCORS高程代替等级水准测量的研究