三维地质建模主要包括数据预处理、建模和可视化三个阶段。其中,可视化系统开发是其重要目标。通过对现有地质建模系统开发方法进行分析,考虑ArcGIS平台功能的强大且具有更广泛的用户群;与其他GIS开发平台相比,其在数据的自动处理、空间分析、三维GIS可视化等功能方面更胜一筹,而且其提供了完备的二次开发套件和先进的编程理念。因此,本文利用ArcGIS Engine的多面体结构(Multipatch)可视化地层三维实体模型,同时结合其二维、三维可视化开发组件构建三维地质可视化系统,下面对其系统设计和具体实现进行详细介绍。
2 系统设计
2。1 可视化方法
本文利用多面体要素(Multipatch)实现地层模型的可视化,它是一种可存储面集合的 GIS 对象,能够在数据库中将 3D 对象的边界表示为单个行,它具有是有结构相对简单,渲染速度快的特点。其中,面结构可存储表示要素组成部分的纹理、颜色、透明度和几何信息。面中存储的几何信息可以是三角形、三角扇、三角条带或环等图形元素;一个包含8个三角形集合的表面可以表示一个三棱柱,一系列三棱柱可以表一个地层的实体模型,从而实现三维地质模型的可视化,其原理如图1所示。
(d) 地层的三棱柱实体模型
图1多面体要素(Multipatch)可视化原理及地层绘制方法
2。2 流程设计文献综述
流程设计综合考虑可视化统开发的复杂性和可操作性,主要思路是将数据预处理、地质建模和可视化三个阶段分开,同时结合利用GIS的数据处理工具箱、建模和可视化组件分别预以实现。首先,利用Python面向对象编程语言结合ArcPy包编程进行钻孔数据自动预处理;其次,利用ModelBuilder可视化模型设计工具,通过调用ArctoolBox工具箱中的选择、插值、栅格转点、TIN和TIN转三角形等文件转换和空间分析工具生成地层三角网格。进一步,利用ArcGIS Engine的MultiPatch实现模型的可视化,并结合其的二维和三维可视组件(MapControl和SceneControl)快速构建出三维地质模型可视化系统。
图1 三维地质建模及可视化流程
2。3 系统开发目标与功能
系统开发的目标是构建一个三维地质模型可视化系统原型,主要用于对现有GIS二次开发平台的三维可视化功能进行全面测试,为进一步开发具有自主知识版权的三维地质建模系统奠定技术基础,,将系统的功能分为二维基础地质数据管理、三维模型可视化和空间查询三个模块
基于GIS的三维地质可视化系统设计+源程序(2):http://www.youerw.com/shuxue/lunwen_198702.html