数字矿山巷道三维可视化模块设计与开发

2016-01-31 03:29
黑龙江工程学院学报 2015年6期
关键词:三维可视化巷道

孙 冉

(安徽理工大学 测绘学院,安徽 淮南 232000)



数字矿山巷道三维可视化模块设计与开发

孙冉

(安徽理工大学 测绘学院,安徽 淮南 232000)

摘要:采用Visual C#和DirectX结合的方式对巷道进行三维可视化模拟。工矿企业的矿井中,无论是正在运转的矿井还是已经报废的矿井都留存大量的矿图,并且这些矿图主要以ACAD的DWG文件形式留存。DXF是ACAD数据交换文件格式,通过读取DXF文件中BLOCK以及ENTITIES中的LINE和LWPOLYLINE数据,为巷道三维可视化模拟提供具体的位置信息。以直壁圆拱巷道为例,探讨巷道截面数据的组织、单条巷道的生成、巷道连接处的处理、多条巷道的生成等问题。最后涉及到巷道可视化显示的具体问题,如光照、颜色渲染、旋转、缩放等。

关键词:数字矿山;DirectX;Visual C#;巷道;三维可视化

三维巷道可视化的研究在我国也有近十年的历史,相比较外国而言,我国起步较晚,目前取得的成果也不太多。利用一些已有的数据结构来实现两条巷道的首尾相接时,并不能实现全方位的三维显示,仅能实现起点、中点、终点都在同一平面上的巷道连接,同时,有些巷道拓扑关系的组织也仅限于平面上。本文主要就巷道的三维可视化的实现展开,涉及空间巷道的生成、巷道连接处的处理等问题。同时,为了实现从矿图中提取导线点的空间坐标,还需要对AutoCAD的绘图交换文件DXF进行读取,本文仅就DXF文件中的BLOCK以及ENTITIES中的LINE和LWPOLYLINE进行读取。巷道有不同种类,其截面也不同,本文统一采用直壁圆拱巷道,巷道连接处的处理仅以部分连接方式为例,如巷道的转弯、巷道交岔点中的牛鼻子交岔点和穿尖交岔点。

1原有矿图基本介绍

1.1 矿图概况

日常接触到的矿图一般都是二维的,这些矿图复杂晦涩,没有专业背景的人很难看懂。而大多数工矿企业的矿图也大多以ACAD的DWG文件形式留存。通过提取矿图中的信息,同时借助三维巷道可视化模拟,以此让矿图的用户对矿井的三维结构有一个初步的了解。

一个生产矿井必须具备的基本图件有两大类:一类主要反映矿井范围内矿体与围岩产状,地质与水文地质情况以及矿产质量状况的矿井地质图;另一类是根据地面、井下测量资料填绘而成的矿山测量图,简称矿图。矿图按图的用途不同可以分为基本矿图和专用矿图。

1.2 原有矿图图形

矿山中最重要的图件有采掘工程图、主要巷道平面图、井底车场平面图、井上井下对照图等。本文主要利用数字化的采掘工程平面图,如图1所示。

图1 某矿的采掘工程平面

2巷道三维建模

2.1 巷道截面模拟

圆弧上点的坐标:

(1)

直壁底端的两个点分别为:

(2)

图2 巷道截面形状

图3 单条巷道的绘制

2.2 单个巷道的生成

单条巷道的绘制是绘制其他一些组合式巷道的基础,在具体介绍直壁圆拱巷道截面生成的基础上,介绍如何去生成一条完整的巷道。

DirectX中物体生成所需要的顶点数据以及为提高顶点的利用率所需要的顶点索引。图4和图5分别为巷道外表面沿直壁与巷道弧交线展开后的平面网格图,图4所示为组成巷道的顶点网格,横向为巷道的延伸方向,有h+1个顶点,纵向为巷道的截面方向,有m+2个顶点,总共有(h+1)×(m+2)个顶点。

图4 巷道的顶点网格

图5所示为巷道的索引网格,每个小方格由6个索引数据点组成,横向是巷道的延伸方向,有h个索引数据点,纵向为巷道的截面方向,有m+3个索引数据点,总共有6×(m+2)×h个索引数据点。

图5 巷道的索引网格

下面以一个小方格为例,说明其顶点数据和索引数据的关系。图6显示的是巷道顶点网格第一行第一列,其4个角点对应的顶点号分别为0、1、h+1、h+2,顶点分别为vertices[0]、vertices[1]、vertices[h+1]、vertices[h+2],这里的vertices都是具有三维坐标的点。

图6 三角面片中顶点的编号

图7所示为巷道的索引网格中第一行第一列的网格,每个网格都由6个索引点组成,分别为index[0]、index[1]、index[2]、index[3]、index[4]、index[5]。

图7 三角面片中索引的编号

本文采用DirectX中的PrimitiveType.TriangleList来组织图形,建立TriangleList的过程中会出现很多重复的顶点,为了提高顶点的利用率,同时提高图形的显示效率,就要建立顶点数据与索引数据之间的联系。

(3)

式(3)的左侧为索引数据,右侧为顶点数据对应的编号。

3巷道的可视化

在从DXF数据中提取巷道的节点数据后,对数据进行组织,构建巷道模型,完成单条巷道、连接处、多条巷道的绘制,为了实现巷道的逼真表达,还需要对巷道进行可视化处理,如灯光的设置、颜色渲染等,一些基本的放大、缩小、全屏、旋转、平移等操作,以及响应鼠标和键盘的命令,如图8所示。

图8 巷道模型总体思路

3.1 灯光的设置

三维物体显示的逼真性很大程度上取决于明暗效果的处理,明暗处理的前提在于处理各种灯光照在可见面上的效果,由于各种物体的光谱反射特性千差万别,要想准确模拟自然条件下的光照几乎是不可能的。

DirectX中有三种类型的光源,他们分别为点光源、平行光和聚光灯。其中,平行光没有位置属性,聚光灯具有内锥角度和外锥角度属性,如图9所示。

图9 聚光灯的内外锥角度

通过绘图设备的device.light属性来获取和绘制灯光,RenderState.Ambient属性设置环境色。本文采用聚光灯光源对巷道进行处理。代码如下:

//设置聚光灯

device.Lights[0].Type = LightType.Spot;

device.Lights[0].Diffuse = System.Drawing.Color.White;

device.Lights[0].Position = new Vector3(50.0f, 20.0f, 50.0f);

device.Lights[0].Direction = new Vector3(0.0f, -1.0f, 1.0f);

device.Lights[0].Range = 50.0f;

device.Lights[0].Attenuation1 = 0.1f;

device.Lights[0].OuterConeAngle = 45f;

device.Lights[0].Enabled = true; //打开灯光

3.2 颜色渲染

由于巷道采用的是“骨架”式设计,其纹理贴图的效果也很理想。同时,为了使模型的颜色与背景中的颜色区分,采用最简单的颜色渲染,给巷道骨架赋予一种颜色,使其具有较明显的颜色对比,方便观测巷道“骨架”的数据结构,如图10所示。

图10 巷道颜色渲染效果

3.3 基本操作

为了能够全方位地观察巷道,一些基本操作是必不可少的,如放大、缩小、全屏、旋转、平移等,并且这些操作都要借助鼠标和键盘来实现。设计其可视化界面如图11所示。通过键盘实现放大、缩小、全屏、旋转、平移等操作。

图11 可视化界面设计

4结束语

Visual C#与DirectX的结合实现三维巷道的可视化,在这过程中实现了空间中巷道的三维显示,也摸索着去实现巷道交叉处的处理,通过查阅文献以及自己的理解构建巷道模型。空间上的建模难度要远远超过平面上的建模,这也是导致巷道交岔处的处理不完善的主要原因。在实现带有坡度的巷道的交岔处的处理时出现错位现象,但可以实现单角度上的无缝连接。主巷道与岔道的连接中有牛鼻子交岔点和穿尖交岔点,二者在矿井中都有出现,只是牛鼻子交岔点的应用更广一些。

参考文献

[1]吴蕴珉.矿山测量与矿图[M].徐州:中国矿业大学出版社,1998:90-106.

[2]谭超,张群会.基于AutoCAD的DXF格式文件读写方法研究[J].通信论坛,2009(21):46-49.

[3]惠本利,王红娟,卢新明.井巷工程精细建模与应用[J].矿业研究与开发, 2014,34(5):95-98.

[4]葛永惠,王建民.矿井三维巷道建模方法的研究[J].工程勘察,2006(10):46-49.

[5]汪云甲,伏永明.矿井巷道三维自动建模方法研究[J].武汉大学学报(信息科学版),2006,31(12):1097-1100.

[6]唐敏.矿山井巷三维模型的建立[D].昆明:昆明理工大学,2007:35-52.

[7]石奉华.巷道三维可视化建模技术——以东滩煤矿为例[D].济南:山东科技大学,2007:32-46.

[8]杨奎奇,潭海樵.面向对象的巷道三维显示与查询系统[J].煤矿现代化,2004(1):35-36.

[9]高井祥.测量学[M].徐州:中国矿业大学出版社,2010:10-15.

[10] 孙广义,郭中平.采煤概论[M].徐州:中国矿业大学出版社,2007:26-32.

[责任编辑:郝丽英]

Design and development of 3D visualization module for mine roadway

SUN Ran

(College of Surveying and Mapping,Anhui University of Science and Technology,Huainan 232000,China)

Abstract:The three-dimensional visual simulation of roadway is carried out by Visual C# and DirectX. Mine industrial and mining enterprises in the coal mine, whether it is running or has scrapped, all retained many mine maps, most of which are mainly in DWG file from ACAD. The data format DXF is the main current CAD data exchange format. In this paper, the data of BLOCK and LINE and LWPOLYLINE data of ENTITIES in DXF file, can provide the position information for the 3D visualization of roadway. Taking the case of a straight wall round arch roadway, it studies the data organization of roadway cross section, and generates single roadway, roadway junction, and double roadway, etc. Finally, the visualization of the roadway is related to the specific problems, such as illumination, color rendering, rotation, scaling, etc.

Key words:digital mine; DirectX; Visual C#; roadway; 3D visualization

作者简介:孙冉(1992-),女,硕士研究生,研究方向:大地测量学与测量工程.

收稿日期:2015-07-12

中图分类号:TD912

文献标识码:A

文章编号:1671-4679(2015)06-0010-05

猜你喜欢
三维可视化巷道
高应力岩层巷道钻孔爆破卸压技术
基于FLAC3D的巷道分步开挖支护稳定性模拟研究
坚硬岩石巷道中深孔爆破技术的应用
基于ArcScene平台的电子沙盘制作
3D机房运维可视化系统的设计与实现
强烈动压巷道支护技术探讨