基于ArcGIS Engine的山区土方量计算系统设计与实现

2021-07-05 09:38黄立鑫李旺平周兆叶刘亚东李志红杨战青
地理空间信息 2021年6期
关键词:挖方土石方土方

黄立鑫,李旺平,周兆叶,刘亚东,李志红,杨战青

(1.兰州理工大学土木工程学院,甘肃 兰州 730050;2.甘肃省应急测绘工程研究中心,甘肃 兰州 730050;3.甘肃省自然资源厅,甘肃 兰州 730000)

目前计算工程土石方量的基本方法主要有方格网法、横断面法和 DTM法三种[1-3]。国外学者针对这一问题做了很多研究,Kerry等[4]基于有限元法将地面三维激光扫描技术获得的点云数据转换成曲面,创建施工前和施工后不规则三角网(TIN)模型,以确定土方工程量。JANIĆ等[5]采用AutoLISP编程语言开发的基于数字地形模型计算土方量的应用程序,在AutoCAD环境下对几个大型露天矿的实际应用进行了测试和验证,结果表明这种新的数学模型能获得更好的实现土方量计算。陆永红[6]将三维坐标转换与南方 CASS 软件相结合解决矿山环境治理中出现空洞的土石方计算难题,通过实际工程案例验证该方法的可行性。李博等[7]基于无人机倾斜摄影测量技术获得地面研究区土方量,并与GNSS-RTK测量结果进行对比,结果表明利用该方法能够提高土方计算精度高,并且能简化工作流程降低生产成本。整体上可知,不少学者对于山区土石方量的计算这一问题从数据源获取、计算方法等不同角度进行研究,但是由于山区环境复杂,气候条件恶劣,三维激光扫描仪和GNSS-RTK测量时外业施测困难,用无人机施测也存在一定的局限性。而借助高分辨率的遥感影像、高精度的数字高程模型(DEM)等多源数据,选用合理的计算方法,是获取山区复杂地形条件下土石方量的一种可行和有效的策略。利用DEM数据计算区域土石方量最常用的方法是通过Esri公司开发的ArcMap软件的空间分析功能,首先用此模块创建TIN模型,设定施工场地设计高程等参数进行计算,再利用ArcSence软件中的3D模块实现三维可视化。整个操作过程需要在两个平台之间进行数据转换,增加了操作过程的复杂性。因此针对将遥感影像与数字高程模型相结合,并将二三维数据集成在同一个操作平台,能够快速高效地获取山区复杂地形土石方量这一问题,依托Visual Studio和ArcGIS Engine二次开发平台,基于卫星影像和高精度数字模型数据,开发出一套适应于山区复杂地形土石方量计算的系统,并通过实际工程案例数据计算验证系统的稳定性和可行性。

1 系统设计

1.1 设计总体思路

该系统总体设计选择由常规的基础设施层、数据层和应用层三部分组成。

基础设施层由服务器、存储设备等软硬件基础设施,为系统提供必要的运行环境,系统采用Windows7操作系统,基于VS2010+ArcGIS Engine10.2为开发平台,使用C#.NET语言进行编程,DevExpress15.2第三方控件对整体框架界面进行优化设计;数据层选取高分二号影像和DEM数据,依据系统的数据转化功能模块,将DEM栅格数据转化成为TIN数据,通过ENVI等遥感卫星影像处理软件对高分辨率影像进行后期处理制作正射影像数据,将TIN数据和正射影像数据作为系统的基础数据源,建立可进行量测的三维场景模型;应用层通过搭建系统界面,实现文件管理、数据管理、数据分析和应用工具4个要功能菜单,方便对数据的管理及更新。本系统主要实现地图显示和图层控制、遥感影像和TIN数据叠加显示、二三维场景联动显示、土石方量计算、属性查询和生成断面图等服务功能。

1.2 系统功能设计

基于在山区基础建设中对地形、地貌以及各种影响因素等的需求,山区复杂地形土石方量计算系统功能结构如图1所示。

图1 系统功能结构设计

2 系统关键技术的实现

2.1 地图显示和图层控制功能

通过ArcGIS Engine添加MapControl和SceneControl控件,其中封装的Map对象提供相应的属性、方法和事件,可以加载矢量数据、栅格数据、CAD数据和二、三维地图数据的功能,实现地图显示功能。编程设置二、三维地图工具,对视图显示进行控制,如地图放大、地图缩小、地图平移、全图显示、鹰眼显示、漫游浏览等功能,其中漫游浏览是三维视图特有的,通过定义鼠标事件,按住鼠标左键移动实现三维场景在三维空间的旋转,满足用户最基本的地图管理与地图操作的功能。通过添加TOCControl控件实现图层的顺序调整和右键菜单等基本控制功能。

2.2 遥感影像和TIN数据叠加显示功能

为了使山区复杂地形便于直接进行观察和分析,更清楚地辨别各类地物地貌的特征,很多情况下需要通过将二维数据与三维数据相互叠加来实现地形渲染,增强地形和地表影像的相关性和三维可视化效果。系统设计实现遥感影像和TIN数据叠加显示功能,主要使用ITinLayer和IRasterLayer接口从已有的TIN数据和影像数据对象中创建图层,调用I3DProperties组件类的Apply3DProperties方法实现遥感影像数据和TIN数据叠加显示,效果如图2所示。

图2 遥感影像和TIN数据叠加显示

2.3 二三维场景维联动功能

二三维场景联动是将二维和三维显示结合起来,通过相互操作响应机制实现信息之间的传递,克服常规二维GIS数据的抽象性和三维GIS虚拟场景漫游的迷失感,在复杂地形浏览分析过程中具有宏观性、真实性和整体性等优点,增强区域的可视化效果。主要使用 IActiveView、IEnvelope、IPoint和 ICamera 接口[8],创建目标点(Target)和观察点(Observer)并设置对应的高度。在程序代码中设置三维场景的高度角为60°,设置三维场景的方位角为180°。在系统中可以使用数据加载功能添加二维遥感影像图和三维TIN图,拖动鼠标,系统的二维界面和三维界面依据代码设定的视场角度同时移动,实现二三维联动功能,效果如图3所示。

图3 二三维场景维联动

2.4 土石方量计算功能

系统开发的土石方计算模块主要依据TIN数据计算区域内体积的原理,需要调用ISurface接口的GetVolume方法,GetVolume方法是双重引用整型数据,通过IOException和AutomationException类的运算。计算过程中返回高于或低于输入高程值(Z)的体积,计算TIN 表面相对于指定高程水平面之间的空间体积。在使用过程中选择“基础面之上”或“基础面之下”选项,系统根据TIN数据结构自动计算出指定基础面以上或以下的体积。土石方量计算模块菜单如图4所示。

图4 计算模块菜单

3 实例计算分析

选取甘肃省天祝县约90 m2作为研究区,区域的整体特征是地势西北高东南低,地貌以多山地为主,海拔在2 846~3 750 m之间。欲将整个区域进行平整,设计高程为3 700 m,计算研究区域需要挖方量。

将设计高程作为计算的基准面高度,通过系统开发的土石方计算模块与传统土方量计算软件分别以设计高程为基准进行计算,比较分析各种方法计算结果的精确度,验证开发模块的可行性和准确性。

3.1 基础数据

3.1.1 高分二号影像数据

高分二号卫星是我国首颗空间分辨率达到亚米级的民用遥感卫星,于2015年3月投入使用。其全色影像数据空间分辨率为1 m,星下点达到0.81 m,多光谱数据空间分辨率为4 m,星下点达到3.24 m[9],影像的分辨率高,将其用于系统三维可视化的数据源能够获得很好的效果。

根据季节和云量选取研究区域的高分二号影像数据,首先通过ENVI和ERDAS软件平台对研究区的影像进行正射校正、自动配准、影像融合和波段转换等基本处理,再利用开源计算机视觉库(OpenCV)对影像进行拉伸和锐化的后处理,得到研究区高分二号遥感正射影像。

3.1.2 三维TIN数据

不规则三角网(TIN)模型相对于规则格网模型和等高线模型,由于TIN模型在构建过程中不受坡度等地形条件的限制,并且能够更加精确的表示地形细部特征,能充分表现高程细节的变化,所以能够更加有效的模拟较为复杂地形区域的地表真实情况。文中采用基于程序代码的方法将研究区的基础DEM数据转换成三维TIN数据。

3.2 实例计算

3.2.1 系统开发模块计算土石方量

打开软件,选择数据分析菜单下的土石方量计算模块进行研究区域填挖方量的计算。将基础面高度设为3 700 m,分别选择“基础面之上”选项,系统自动计算挖方量。得到挖方量为2 816 283.47 m3,其计算结果如图5所示。

图5 系统土石方量计算结果图

3.2.2 传统测量软件计算土石方量

选用目前工程中常用的南方CASS9.0软件进行土方量计算,本软件工程应用中土方计算方法包括4种:DTM 法、断面法、方格网法和等高线法[10]。方格法主要适用边界规整地形变化不明显的场地;断面法适用于场地的地形起伏较大、变化明显、且呈带状分布的区域[11];DTM 法利用已知平面坐标点的高程信息,通过空间插值的方法计算土石方量,对于复杂不规则地形的计算精度较高;等高线法是根据等高距计算任意两条封闭等高线间的土石方量[12]。根据以上土石方计算方法和适用地形条件,适合本次山区复杂地形土石方计算的方法有 DTM法和等高线法。选择软件DTM法土方计算功能对研究区的挖方量进行复核计算,其计算结果见表1。

表1 土方量计算结果/m3

3.3 计算精度对比分析

通过对系统开发模块和传统测量软件土石方计算结果对比分析,可以得出结论:与传统DTM法计算结果相比差值为671.4 m3,验证表明该方法可用于土石方量的计算,计算结果能达到精度要求。由于系统开发的计算模块采用的数据源是非接触式获取的,可以减少外业测量的工作量,计算过程简单,因此在山区复杂地形环境中用于计算土石方量具有一定的实用性。

4 结 语

土石方量的计算方法和精度对工程建设具有重要的意义。文章介绍了基于VS和ArcGIS Engine开发平台,使用C#.NET语言二次开发实现山区复杂地形土石方量计算系统的原理及技术方法,将二维影像数据和三维TIN数据有效地集成在同一个操作界面,增强了区域的可视化效果,并结合实际计算案例,采用不同方法对研究区域的土石方的填挖方量进行计算,结果表明通过本系统开发的计算模块得到的填挖方量计算结果能够达到精度要求,并且整个计算过程相比传统计算方法更具有准确性和可操作性,能较好地解决在基础工程建中,山区复杂地形条件下的土石方计算问题,为山区相关工程建设的决策和实施阶段提供高精度的测绘数据服务。

猜你喜欢
挖方土石方土方
山区高速公路挖方路基边坡稳定性分析及动态设计研究
露天矿山土石方量的测量及计算
土石方机械的春天已经来了,路面机械的还会远吗?
刍议公路工程水泥路面施工技术
浅析建筑施工中的挖方和土方转运
土石方工程量计算程序设计及应用研究
土方计算在工程实例中的应用
CASS2008在平安气站土石方工程量计算中的应用
深基坑土方开挖在高层建筑中的应用分析
基于AutoDesk Map 3D的土方量计算