# Research on Geological Survey Data Management and Automatic Mapping Technology

Authors: Dong Huang; Y. L. Chen; Jianping Qiao
Journal: Scientific Programming
 (2017)

---

## Abstract

The data management of a large geological survey is not an easy task. To efficiently store and manage the huge datasets, a database of geological information on the basis of Microsoft Access has been created. By using the database of geological information, we can make easily and scientifically store and manage the large geological information. The geological maps—borehole diagrams, the rose diagrams for the joint trends, and joint isointensity diagrams—are traditionally drawn by hand, which is not efficient way; next, it is not easily possible to modify. Therefore, to solve those problems, the automatic mapping method and associated interfaces have been developed by using VS2010 and geological information database; these developments are presented in this article. This article describes the theoretical basis of the new method in detail and provides a case study of practical engineering to demonstrate its application.


---

## Body

## 1. Introduction

Analyzing the geological data is common and critical for geological investigations to acquire subsurface information. The geological data can be used to provide useful information for both surface and subsurface conditions. In the recent past, these datasets have widely been used in numerous fields, for example, civil works, exploration of natural resources, environmental problems, and transportation.The geological data consist of borehole data, fracture data, and joint data. The magnitude and diversity of the geological data do not allow us to easily handle them without using any database or information system. The management of geological data has been one of the important research fields in engineering geology, geotechnical engineering, and Geographic Information System (GIS) [1, 2]. Chang and Park [1] developed a system on the basis of a web-based GIS for onward management of boreholes and geological data. Qu et al. [3] designed a geological data management and service system for the data cases of urban geological investigations. Several management and processing systems on the basis of GIS, Geotouch [4] and Bore Is [5], were designed as a tool to store, manipulate, and put queries of data. Commercial software packages, for example, VIEWLOG, are also developed to manage the geologic data; this software can be used to handle the data from a range of popular databases, such as Microsoft Access, SQL Server, and Oracle. It is pertinent to highlight that despite many powerful features of VIEWLOG, it may not be feasible to use it on small-scale, that is, in small companies and within little research groups and so forth.Geological maps—borehole histograms, rose diagrams, and joint isointensity diagrams—are widely being used in geology and they can intuitively express the important information of the subsurface, that is, the structure of the strata, sedimentary rules, and so forth. In the past, while constructing those maps, the engineers used to draw, modify, and fill the maps and patterns by hands, which was both time consuming and inaccurate. Due to rapid development of computer hardware and software, many researchers and experts have started to study the construction of geological maps by using the automated techniques. To model and visualize the borehole information and histograms, several boring and logging software [e.g., wellCAD [6], WinLOG [7], and Borehole tools in ArcScene [8]] have been developed. Many programs, for the automatic generations of the borehole diagrams, had been developed. Zhang and Luo [9] devised a procedure to realize the drilling sections for automatic generation of logs, which was based on DpenGL 3D Platform combined with MFC second development method. Many other programs were based on MapGIS, which had been developed for borehole histogram for onward automatic mapping [10–12].Owing to easy construction and comprehension, the rose diagrams have immensely been popular in geology since more than 70 years of display for orientation data [13, 14]. Wells [15] designed the ASTRA.BAS to draw rose diagrams automatically and Baas [16] developed a computer program—EZ-ROSE 1.0—for the automatic generation of rose diagrams.To visualize the joint isointensity diagram, Yu and Zhou [17] presented a procedure of joint isointensity diagram to improve the efficiency of work and the precision of data. Li et al. [18] developed an algorithm for mapping of joint isointensity diagrams.This article detects some serious shortcomings in the existing software and models:(1) these are too much dependent on GIS and (2) these are not user-friendly.The first problem comes from the requirements of the engineering standards for geological maps. That is (e.g., according to different researchers, there are no standards for), geological maps generated by some different methods do not meet these standards. Most of these maps are generated in the platform which is unfamiliar to the engineers and geologists. Despite this, some of them cannot meet the requirements of practical projects as well. Besides, some of these programs were designed for specific project and were not fit for general engineering. In addition, some of these programs have no geological system to provide them with the geological data which they need for the generation of these geological maps, or some of them cannot receive these data from the geological system automatically. The second issue comes from the algorithms. For instance, algorithms used on isolines smooth processing of joint isointensity diagram, filling of rose diagram, and the display of borehole diagram can no longer satisfy practical engineering and need to be modified.In this article, we present our development of a software set and it is called “Geological Data and Mapping System (GDMS).” This software is based on AutoCAD Platform, which is combined with Microsoft Access and Excel. This system consists of two parts as follows:(1) the management of geological data and (2) the automatic generation of geological maps. First, the corresponding interface is designed, which makes it possible for users to efficiently manage the administration of the geological data. Next, a new algorithm is developed for the automatic generation of geological maps; the required geological data could be selected from the first part automatically, and, thereafter, the map would automatically be generated.


## 2. The Establishment of Database for Geological Information

The data, as obtained from geological survey, can be used to provide useful information both for surface and subsurface conditions of earth; such datasets may consist of huge information and need special care and software. These datasets are not limited and composed of various types of data, for example, borehole data, soil data, and rock joint data. It is not possible to efficiently handle such data manually. Therefore, a program was designed to manage the huge amount of these diverse geological data efficiently and synthetically. On the basis of Microsoft Access and by using VB.NET, a geological information database was constructed to manage the data of geological survey and to provide the basis for automatic mapping. The structure of the new geological system is shown in Figure1.Figure 1
The structure of the proposed geological system.


### 2.1. The Data Entry in the Database of Geological Information

Data storage is one of the most important issues, while handling the vast amount of data for the geological survey. In the past, these datasets have been stored manually. However, it is not possible to deposit such large volumes of subsurface data manually. Some researchers developed tools; for example, Hou et al. [19] developed an implemented system on the basis of MapGIS for onward managing the information of urban geology. Although their works were meaningful, it is not user-friendly because it had no user interfaces. Thus, the corresponding interfaces were designed to make the data stored easily and efficiently.The storage of geological information is treated as very important step in the new geological system. To make the storage convenient, the interfaces for data input have been designed. There are two ways to input the data into the database of geological information by using the input module of the interface. First way is to enter it into an Excel template and thereafter enter it into the database. Next way is to enter the data into the database directly from the interface. Both of them are convenient for the most of users.


### 2.2. The Extraction of Data and Queries

To extract information that is related to drilling from the database quickly, accurately, and conveniently, the author has developed a corresponding “integrated query interface.”We can inquire the basic information regarding the drilling and its structure, description of rock core, sonic wave testing in borehole, water pressure testing in borehole, and weathering zone through “drilling information integrated query interface,” which can be used to facilitate the relevant workers and researchers, to manage the information, and to offer the data for mapping.


## 2.1. The Data Entry in the Database of Geological Information

Data storage is one of the most important issues, while handling the vast amount of data for the geological survey. In the past, these datasets have been stored manually. However, it is not possible to deposit such large volumes of subsurface data manually. Some researchers developed tools; for example, Hou et al. [19] developed an implemented system on the basis of MapGIS for onward managing the information of urban geology. Although their works were meaningful, it is not user-friendly because it had no user interfaces. Thus, the corresponding interfaces were designed to make the data stored easily and efficiently.The storage of geological information is treated as very important step in the new geological system. To make the storage convenient, the interfaces for data input have been designed. There are two ways to input the data into the database of geological information by using the input module of the interface. First way is to enter it into an Excel template and thereafter enter it into the database. Next way is to enter the data into the database directly from the interface. Both of them are convenient for the most of users.


## 2.2. The Extraction of Data and Queries

To extract information that is related to drilling from the database quickly, accurately, and conveniently, the author has developed a corresponding “integrated query interface.”We can inquire the basic information regarding the drilling and its structure, description of rock core, sonic wave testing in borehole, water pressure testing in borehole, and weathering zone through “drilling information integrated query interface,” which can be used to facilitate the relevant workers and researchers, to manage the information, and to offer the data for mapping.


## 3. Literature Review for the Key Technologies of Automatic Mapping

### 3.1. Key Technologies of Automatic Mapping of Drilling

#### 3.1.1. Basic Principle of Automatic Mapping of Drilling Section

On the basis of VS2010 platform—mainly adopted AutoCAD for secondary development method—combined with the new geological database, the automatic generation methods of drilling section are designed; the basic flowchart for key algorithms of automatic generation method for onward geological mapping of borehole diagrams is shown in Figure2.Figure 2
The basic flowchart of an automatic drilling drawing.The basic flowchart, for the basic principle of automatic generation methods for drilling section, is shown in Figure3.Figure 3
The basic principle of an automatic borehole drawing.


#### 3.1.2. Algorithm of Automatic Generation Method for Different Borehole Diameters

The actual drilling process is complex, often with different diameters of drill, which leads to the sizes of boreholes to be changed. In many situations, borehole diameters may be changed many times within the same strata. The times are uncertain, so it is very difficult to put forward an algorithm of automatic generation method for different borehole diameters. Aiming at solving the problems, a new algorithm for variable boreholes was designed, the corresponding programs were written in code, and the corresponding interfaces were designed as well.The basic principle of algorithm of automatic generation method for different boreholes can be plotted as follows:(1)X=x1,x2,…,xn1×nT,where [X] is an array that is used to record the thickness of strata, n represents the number of the strata, and x(i) represents the thickness of the ith rock stratum(2)C=c1,c2,…,cm1×mT,where [C] is an array that is used to record the depths, where the diameters of drill hole is changed, m represents the times of change in diameter of borehole, and c(i) represents the depth of the ith change.The equation can be expressed as follows:(3)Sum=A×X,where [A] is(4)A=10⋯⋯⋯0110⋯001110⋮011⋯10⋮⋮1⋯⋯1011⋯⋯11n×n,(5)SXm×n=1,1,…,11×mT×Sumn×1T,(6)SCm×n=C×1,1,…,11×n,(7)Gm×n=SXm×n-SCm×n(1) if(8)Gi,j∗Gi,j+1<0.It means that the location ofc(i), where the borehole diameter is changed at ith time, is located in the rock stratum x(j+1) that represents the thickness of the (j+1)th rock stratum,(2) if(9)Gi,j-1∗Gi,j=0,Gi,j∗Gi,j+1=0.It means that the location ofc(i), where the borehole diameter is changed at ith time, is located at the upper boundary of x(j+1) and that is still being treated in the (j+1)th rock stratum.Then1≤i≤m,  1≤j-1,j,j+1≤n.If the borehole diameters are changed in the(j+1)th rock stratum, the dynamic arrays need to be defined to store data and to call subprogram for onward drawing of the rock stratum.Here is one part of key code:ReDim Preserve mpoint_Drawing (h)For t5 = h To h - 5 Step -1mpoint_Drawing(t5) = mpoint_Drawing(t5-4∗n1)NextIf j = j1 ThenFor t3 = 1 To n1If t3 = 1 Thenmpoint_Drawing(4∗t3) = mpoint_Drawing (4∗t3-2)…End IfNext…End IfCall MultiLine1(caddoc, mpoint_Drawing)Call MtoHatch1(caddoc, mpoint_Drawing, ptnName, ptnType, point1, point2)ReDim mpoint_Drawing(9)The above program could create the histogram in which borehole is changing in accordance with the practical conditions (refer to Figure4). The new algorithm can be used to generate the plots that should be able to reflect the characteristics of a borehole, of which the borehole diameter could often be changed.Figure 4
The diagram of variable boreholes.


#### 3.1.3. The Algorithm of Automatic Segmentation for a Borehole Section

In practice, the boreholes deeper than hundreds to thousands of meters were designed to meet the demands of the practice engineering. However, the histogram as obtained through conventional way from deep boreholes is not in an appropriate shape and it is not convenient for engineers to use it. Therefore, the corresponding borehole sections cannot be able to meet the relevant engineering standards, and we could not able to use them as a reference for the engineers. With the aim to solve this problem, the automatic segmentation algorithm of borehole section was conceived, which would then make the borehole segmented intelligently in accordance with the depth of the borehole.The basic principle of the algorithm, for automatic generation of different boreholes, is given as follows:(10)SK=k1,k2,…,kn,where(11)ki=intxi110Given that(12)l=ki+ki+12,if(13)ki-lki+1-l=0,then ith rock stratum and (i+1)th rock stratum are displayed in the segment (l+1).If(14)ki-lki+1-l<0,then ith rock stratum is displayed in segment k(i)+1, and from the left part of k(i)+1 segment to the upper part of segment k(i+1)+1 is displayed in (i+1)th rock stratum. In practice, the borehole depth can be used to surpass hundreds to thousands of meters. The algorithm of segmentation can be used to judge intelligently and it is based on the borehole depth.


### 3.2. Key Technologies for Automatic Mapping of Joint Rose Diagram

#### 3.2.1. The Basic Principle of Automatic Mapping of Geological Joint Rose Diagram

On the basis of VS2010 platform, geological database, and AutoCAD, the program of automatic mapping of the rose diagram of for the joint trends has been designed. The basic flow drawing of automatic joint drawing is shown in Figure5.Figure 5
The basic flow of automatic joint drawing.


#### 3.2.2. The Algorithm for Joint Rose Diagram

The basic principle of algorithm of drawing, for the joint isointensity rose diagram, is as follows:(15)X=x1,x2,…,xn1×nT,where [X] is an array that is used to record the joint occurrence and x(i) represents the attitude of the ith joint.The spatial orientation has been used to divide the joints into steps of each having 10°. The number of joints in each group is substituted into an array ofY as(16)Y=y1,y2,…,y361×36T.By substituting the average joint trend of each group into an array of[C], we get(17)C=c1,c2,…,ci1×36Tand c(i) represents the average joint trend of ith group.One has(18)xi-10∗n-1∗xi-10∗n<0or(19)xi-10∗n-1∗xi-10∗n=0,xi-10∗n∗xi-10∗n+1=0.Therefore,(20)yn=yn+1,cn=cn∗yn-1+xiynsubject to 1≤n≤36.Here is one part of key code as shown in Algorithm1.Algorithm 1
For i = 0 To Joint. GetUpperBound(0) - 1 Record1= Int(Average (i + 1)/10) - Int(Average(i)/10) If Record1 > 1 Then If Average(i) = Int(pingjun(i)/10) And Average(i + 1) = Int(Average(i + 1)/10) Then ReDim Preserve joint(joint.GetUpperBound(0) + Record- 2) ReDim Preserve Joint_record1(Joint_record.GetUpperBound(0) + 1) Joint_record1 (Joint_record1.GetUpperBound(0)) = Record- 2 Else ReDim Preserve Joint_number(Joint_number.GetUpperBound(0) + 1) Joint_number(Joint_number.GetUpperBound(0)) = i + 1 … End


### 3.3. Key Technologies of Automatic Mapping for Joint Isointensity Diagram

#### 3.3.1. Basic Principle of Automatic Mapping for Joint Isointensity Diagram

On the basis of VS2010 platform, geological database, and AutoCAD, the program of automatic mapping of geological joint isointensity diagram has been designed. The basic flow drawing of automatic joint is shown in Figure6.Figure 6
The flowchart of joint isointensity diagram.


#### 3.3.2. The Algorithm of Automatic Mapping for Joint Isointensity Diagram

(1  ) Conversion of Coordinates. (φ,θ) represents a joint attitude and (x,y) represents the Cartesian coordinate. They are corresponded to the Polar coordinates. The equation that can be used to convert Polar coordinates into Cartesian coordinates is expressed as follows:(21)x=R2sin⁡θ2sin⁡φ,y=R2sin⁡θ2cos⁡φ.(2) The Statistics of Joints. According to the principle of equal-area projection, during statistics of joint pole density, in order to enable the point around the circle to be processed by the principle of folded point adding, (x,y) is reflected from ring edge zone (0.9R~R) to the other end of the base circle (x′,y′), as shown in Figure 7.Figure 7
The diagram of the folded point.The reflection equation can be written as follows:(22)x′y′=xy,x′2+y′2-R=R-x2+y2.The coordinates of the reflection point are(23)x′=1-2Rx2+y2x,y′=1-2Rx2+y2y.During the process of pole statistics, (21) can be used to determine the coordinates (x,y). Equation (23) can be used to reflect them to the other end of the base circle if the point is located in edge zone and then the base circle was divided into grid of 20 × 20 evenly (Figure 8).Figure 8
Simite’s net and statistic circle.The value, at the intersection of the grid, represents the number of poles in the circle. These poles take each intersection point as a center of the circle, whereas they take the length of the grid in each small square as a radius during the programming process. If the distance between the projection or folded point and the grid point(i,j) is less than that of the length of grid, the number of statistics for this grid point can be taken as 1.The number of joints at the intersection point(i,j) of the grid is divided by the total number of joints and thereafter multiplied them by 100 to get the percentage of joints at each grid point. These results can be stored in an array of grid(i,j) (Figure 9).Figure 9
The percentage of joints at each grid point.(3  ) Tracing Algorithm. (a) When the value of an isoline is k, then search and mark all longitudinal and horizontal edges inside the grid. If the edge is marked −2, it means that the isoline does not pass through this edge. The specific equation can be written as follows:(24)ysidei,j=k-gridi,jgridi,j+1-gridi,j,gridi,j-gridi,j+1·ysidei,j-0·ysidei,j-1≥0,ysidei,j=-2,where1≤i≤21, 1≤j≤201≤k≤max(grid(q,j)) and 1≤q≤21,  1≤j≤21(25)xsidei,j=k-gridi,jgridi+1,j-gridi,j,gridi,j-gridi+1,j·xsidei,j-0·xsidei,j-1≥0,xsidei,j=-2,where 1≤i≤20,  1≤j≤21.(b) Handling the Degenerated Points. When the value of an isoline is equal to that of a grid(i,j), it is difficult to search isoline. Before starting search, we should make a treatment to all grids(i,j); thus, judge whether the value of an isoline is equal to that of a grid(i,j) or not. If they are equal, the value of grid(i,j) would be multiplied by a factor of 0.99 as follows: (26)gridi,j=gridi,j×0.99,where1≤i≤20,  1≤j≤21.(c) Search Operation for the Thread of an Open Curve. The thread of an open curve must be located at the boundary of a rectangular network. For a given equivalent point, we can search the thread clockwise along the rectangular boundary. The relevant judgment method can be written as follows:(27)ysidei,j=k-gridi,jgridi,j+1-gridi,j,gridi,j-gridi,j+1·ysidei,j-0·ysidei,j-1≥0,ysidei,j=-2,xsidei,20+2≠01≤i≤20,xsidei,1+2≠0when (28)xsidei,20+2≠01≤i≤20.Thereafter, the thread of an open curve can be identified and it is found to be located at the upper boundary of grid. Similarly, the thread can be judged whether it is located on other boundaries or not.(d) Search Operation for Other Equivalent Points. After identifying the thread, the next step is to search the other equivalent points; this operation is similar to the case of an open curve search.Since each edge of the grid has been labeled by using (24) and (25), therefore the each edge of the grid has an equivalent point; it follows as (29)ysidei,j≠-2or(30)xsidei,j≠-2.There are four different cases that emerge as an equivalent points at the arbitrary grid of a rectangular mesh; their details are follows:(1) the equivalent point appears at the two edges (refer to Figures 10(a), 10(b), and 10(f)); (2) the equivalent point appears at the four edges (refer to Figure 10(c)); (3) there is no equivalent point (refer to Figure 10(d)); and (4) when there are more than two equivalent points that appear in a grid (one of them should be a current point (refer to Figures 10(c) and 10(e))), we can take the point that is the close to the current point as the next point. In this way, it can be used to reduce the computational burden as well as to meet the accuracy requirements.Figure 10
The distribution of an isometric point.
(a) (b) (c) (d) (e) (f)(e) Look Operation for the Tail of an Open Curve. When an equivalent point appears at the boundary of a grid in the case of an open curve, it means that this point is the tail of the curve; therefore, we can stop searching another open curve. The next step is to trace the closed curve. All equivalent points should be located inside the grid; its thread and tail should be overlapped in case of a closed curve. By taking the intersection of an open curve along with the base circle as boundary points and by deleting the outside part of the circle, we can get an isometric line of open curve.(f) The way of tracking in the open curves is similar to the case of closed curves; only difference is that the thread of closed curve is located inside the grid rather than at the boundary. The methods to determine the thread and to track its equivalent points are similar in the case of an opening curve.(4  ) Smooth Processing of Joint Isointensity Diagram. The proposed software can be used to make the joint isointensity diagram in a more attractive manner. TheB-spline curve can be used to smooth the line. The definition of theB-spline curve of order K (i.e., degree K-1) is to give the control points P0,P1,P2,…,Pn in the space. The expression of Bezier curve is(31)Cu=∑i=0nPiNi,kuu∈uk-1,un,whereu∈[uj-1,uj]0≤uj-1, uj≤1, j=k,k+1,…,n, where  Pi denotes the control point,u denotes the knot vector interval, uj denotes the knot vector, and Ni,k(u) is represented by theB-spline functions, which can be defined as(32)Ni,ku=u-uiui+k-uiNi,k-1u+ui+k+1-uui+k+1-ui+1Ni+1,k-1u.By using theB-spline curve, the smooth processing can be possible to produce the joint isointensity diagram in a more smooth, coordinative and attractive manner as it has been shown in Figure 11.Figure 11
The visualization of a Joint Iso-Intensity diagram.


## 3.1. Key Technologies of Automatic Mapping of Drilling

### 3.1.1. Basic Principle of Automatic Mapping of Drilling Section

On the basis of VS2010 platform—mainly adopted AutoCAD for secondary development method—combined with the new geological database, the automatic generation methods of drilling section are designed; the basic flowchart for key algorithms of automatic generation method for onward geological mapping of borehole diagrams is shown in Figure2.Figure 2
The basic flowchart of an automatic drilling drawing.The basic flowchart, for the basic principle of automatic generation methods for drilling section, is shown in Figure3.Figure 3
The basic principle of an automatic borehole drawing.


### 3.1.2. Algorithm of Automatic Generation Method for Different Borehole Diameters

The actual drilling process is complex, often with different diameters of drill, which leads to the sizes of boreholes to be changed. In many situations, borehole diameters may be changed many times within the same strata. The times are uncertain, so it is very difficult to put forward an algorithm of automatic generation method for different borehole diameters. Aiming at solving the problems, a new algorithm for variable boreholes was designed, the corresponding programs were written in code, and the corresponding interfaces were designed as well.The basic principle of algorithm of automatic generation method for different boreholes can be plotted as follows:(1)X=x1,x2,…,xn1×nT,where [X] is an array that is used to record the thickness of strata, n represents the number of the strata, and x(i) represents the thickness of the ith rock stratum(2)C=c1,c2,…,cm1×mT,where [C] is an array that is used to record the depths, where the diameters of drill hole is changed, m represents the times of change in diameter of borehole, and c(i) represents the depth of the ith change.The equation can be expressed as follows:(3)Sum=A×X,where [A] is(4)A=10⋯⋯⋯0110⋯001110⋮011⋯10⋮⋮1⋯⋯1011⋯⋯11n×n,(5)SXm×n=1,1,…,11×mT×Sumn×1T,(6)SCm×n=C×1,1,…,11×n,(7)Gm×n=SXm×n-SCm×n(1) if(8)Gi,j∗Gi,j+1<0.It means that the location ofc(i), where the borehole diameter is changed at ith time, is located in the rock stratum x(j+1) that represents the thickness of the (j+1)th rock stratum,(2) if(9)Gi,j-1∗Gi,j=0,Gi,j∗Gi,j+1=0.It means that the location ofc(i), where the borehole diameter is changed at ith time, is located at the upper boundary of x(j+1) and that is still being treated in the (j+1)th rock stratum.Then1≤i≤m,  1≤j-1,j,j+1≤n.If the borehole diameters are changed in the(j+1)th rock stratum, the dynamic arrays need to be defined to store data and to call subprogram for onward drawing of the rock stratum.Here is one part of key code:ReDim Preserve mpoint_Drawing (h)For t5 = h To h - 5 Step -1mpoint_Drawing(t5) = mpoint_Drawing(t5-4∗n1)NextIf j = j1 ThenFor t3 = 1 To n1If t3 = 1 Thenmpoint_Drawing(4∗t3) = mpoint_Drawing (4∗t3-2)…End IfNext…End IfCall MultiLine1(caddoc, mpoint_Drawing)Call MtoHatch1(caddoc, mpoint_Drawing, ptnName, ptnType, point1, point2)ReDim mpoint_Drawing(9)The above program could create the histogram in which borehole is changing in accordance with the practical conditions (refer to Figure4). The new algorithm can be used to generate the plots that should be able to reflect the characteristics of a borehole, of which the borehole diameter could often be changed.Figure 4
The diagram of variable boreholes.


### 3.1.3. The Algorithm of Automatic Segmentation for a Borehole Section

In practice, the boreholes deeper than hundreds to thousands of meters were designed to meet the demands of the practice engineering. However, the histogram as obtained through conventional way from deep boreholes is not in an appropriate shape and it is not convenient for engineers to use it. Therefore, the corresponding borehole sections cannot be able to meet the relevant engineering standards, and we could not able to use them as a reference for the engineers. With the aim to solve this problem, the automatic segmentation algorithm of borehole section was conceived, which would then make the borehole segmented intelligently in accordance with the depth of the borehole.The basic principle of the algorithm, for automatic generation of different boreholes, is given as follows:(10)SK=k1,k2,…,kn,where(11)ki=intxi110Given that(12)l=ki+ki+12,if(13)ki-lki+1-l=0,then ith rock stratum and (i+1)th rock stratum are displayed in the segment (l+1).If(14)ki-lki+1-l<0,then ith rock stratum is displayed in segment k(i)+1, and from the left part of k(i)+1 segment to the upper part of segment k(i+1)+1 is displayed in (i+1)th rock stratum. In practice, the borehole depth can be used to surpass hundreds to thousands of meters. The algorithm of segmentation can be used to judge intelligently and it is based on the borehole depth.


## 3.1.1. Basic Principle of Automatic Mapping of Drilling Section

On the basis of VS2010 platform—mainly adopted AutoCAD for secondary development method—combined with the new geological database, the automatic generation methods of drilling section are designed; the basic flowchart for key algorithms of automatic generation method for onward geological mapping of borehole diagrams is shown in Figure2.Figure 2
The basic flowchart of an automatic drilling drawing.The basic flowchart, for the basic principle of automatic generation methods for drilling section, is shown in Figure3.Figure 3
The basic principle of an automatic borehole drawing.


## 3.1.2. Algorithm of Automatic Generation Method for Different Borehole Diameters

The actual drilling process is complex, often with different diameters of drill, which leads to the sizes of boreholes to be changed. In many situations, borehole diameters may be changed many times within the same strata. The times are uncertain, so it is very difficult to put forward an algorithm of automatic generation method for different borehole diameters. Aiming at solving the problems, a new algorithm for variable boreholes was designed, the corresponding programs were written in code, and the corresponding interfaces were designed as well.The basic principle of algorithm of automatic generation method for different boreholes can be plotted as follows:(1)X=x1,x2,…,xn1×nT,where [X] is an array that is used to record the thickness of strata, n represents the number of the strata, and x(i) represents the thickness of the ith rock stratum(2)C=c1,c2,…,cm1×mT,where [C] is an array that is used to record the depths, where the diameters of drill hole is changed, m represents the times of change in diameter of borehole, and c(i) represents the depth of the ith change.The equation can be expressed as follows:(3)Sum=A×X,where [A] is(4)A=10⋯⋯⋯0110⋯001110⋮011⋯10⋮⋮1⋯⋯1011⋯⋯11n×n,(5)SXm×n=1,1,…,11×mT×Sumn×1T,(6)SCm×n=C×1,1,…,11×n,(7)Gm×n=SXm×n-SCm×n(1) if(8)Gi,j∗Gi,j+1<0.It means that the location ofc(i), where the borehole diameter is changed at ith time, is located in the rock stratum x(j+1) that represents the thickness of the (j+1)th rock stratum,(2) if(9)Gi,j-1∗Gi,j=0,Gi,j∗Gi,j+1=0.It means that the location ofc(i), where the borehole diameter is changed at ith time, is located at the upper boundary of x(j+1) and that is still being treated in the (j+1)th rock stratum.Then1≤i≤m,  1≤j-1,j,j+1≤n.If the borehole diameters are changed in the(j+1)th rock stratum, the dynamic arrays need to be defined to store data and to call subprogram for onward drawing of the rock stratum.Here is one part of key code:ReDim Preserve mpoint_Drawing (h)For t5 = h To h - 5 Step -1mpoint_Drawing(t5) = mpoint_Drawing(t5-4∗n1)NextIf j = j1 ThenFor t3 = 1 To n1If t3 = 1 Thenmpoint_Drawing(4∗t3) = mpoint_Drawing (4∗t3-2)…End IfNext…End IfCall MultiLine1(caddoc, mpoint_Drawing)Call MtoHatch1(caddoc, mpoint_Drawing, ptnName, ptnType, point1, point2)ReDim mpoint_Drawing(9)The above program could create the histogram in which borehole is changing in accordance with the practical conditions (refer to Figure4). The new algorithm can be used to generate the plots that should be able to reflect the characteristics of a borehole, of which the borehole diameter could often be changed.Figure 4
The diagram of variable boreholes.


## 3.1.3. The Algorithm of Automatic Segmentation for a Borehole Section

In practice, the boreholes deeper than hundreds to thousands of meters were designed to meet the demands of the practice engineering. However, the histogram as obtained through conventional way from deep boreholes is not in an appropriate shape and it is not convenient for engineers to use it. Therefore, the corresponding borehole sections cannot be able to meet the relevant engineering standards, and we could not able to use them as a reference for the engineers. With the aim to solve this problem, the automatic segmentation algorithm of borehole section was conceived, which would then make the borehole segmented intelligently in accordance with the depth of the borehole.The basic principle of the algorithm, for automatic generation of different boreholes, is given as follows:(10)SK=k1,k2,…,kn,where(11)ki=intxi110Given that(12)l=ki+ki+12,if(13)ki-lki+1-l=0,then ith rock stratum and (i+1)th rock stratum are displayed in the segment (l+1).If(14)ki-lki+1-l<0,then ith rock stratum is displayed in segment k(i)+1, and from the left part of k(i)+1 segment to the upper part of segment k(i+1)+1 is displayed in (i+1)th rock stratum. In practice, the borehole depth can be used to surpass hundreds to thousands of meters. The algorithm of segmentation can be used to judge intelligently and it is based on the borehole depth.


## 3.2. Key Technologies for Automatic Mapping of Joint Rose Diagram

### 3.2.1. The Basic Principle of Automatic Mapping of Geological Joint Rose Diagram

On the basis of VS2010 platform, geological database, and AutoCAD, the program of automatic mapping of the rose diagram of for the joint trends has been designed. The basic flow drawing of automatic joint drawing is shown in Figure5.Figure 5
The basic flow of automatic joint drawing.


### 3.2.2. The Algorithm for Joint Rose Diagram

The basic principle of algorithm of drawing, for the joint isointensity rose diagram, is as follows:(15)X=x1,x2,…,xn1×nT,where [X] is an array that is used to record the joint occurrence and x(i) represents the attitude of the ith joint.The spatial orientation has been used to divide the joints into steps of each having 10°. The number of joints in each group is substituted into an array ofY as(16)Y=y1,y2,…,y361×36T.By substituting the average joint trend of each group into an array of[C], we get(17)C=c1,c2,…,ci1×36Tand c(i) represents the average joint trend of ith group.One has(18)xi-10∗n-1∗xi-10∗n<0or(19)xi-10∗n-1∗xi-10∗n=0,xi-10∗n∗xi-10∗n+1=0.Therefore,(20)yn=yn+1,cn=cn∗yn-1+xiynsubject to 1≤n≤36.Here is one part of key code as shown in Algorithm1.Algorithm 1
For i = 0 To Joint. GetUpperBound(0) - 1 Record1= Int(Average (i + 1)/10) - Int(Average(i)/10) If Record1 > 1 Then If Average(i) = Int(pingjun(i)/10) And Average(i + 1) = Int(Average(i + 1)/10) Then ReDim Preserve joint(joint.GetUpperBound(0) + Record- 2) ReDim Preserve Joint_record1(Joint_record.GetUpperBound(0) + 1) Joint_record1 (Joint_record1.GetUpperBound(0)) = Record- 2 Else ReDim Preserve Joint_number(Joint_number.GetUpperBound(0) + 1) Joint_number(Joint_number.GetUpperBound(0)) = i + 1 … End


## 3.2.1. The Basic Principle of Automatic Mapping of Geological Joint Rose Diagram

On the basis of VS2010 platform, geological database, and AutoCAD, the program of automatic mapping of the rose diagram of for the joint trends has been designed. The basic flow drawing of automatic joint drawing is shown in Figure5.Figure 5
The basic flow of automatic joint drawing.


## 3.2.2. The Algorithm for Joint Rose Diagram

The basic principle of algorithm of drawing, for the joint isointensity rose diagram, is as follows:(15)X=x1,x2,…,xn1×nT,where [X] is an array that is used to record the joint occurrence and x(i) represents the attitude of the ith joint.The spatial orientation has been used to divide the joints into steps of each having 10°. The number of joints in each group is substituted into an array ofY as(16)Y=y1,y2,…,y361×36T.By substituting the average joint trend of each group into an array of[C], we get(17)C=c1,c2,…,ci1×36Tand c(i) represents the average joint trend of ith group.One has(18)xi-10∗n-1∗xi-10∗n<0or(19)xi-10∗n-1∗xi-10∗n=0,xi-10∗n∗xi-10∗n+1=0.Therefore,(20)yn=yn+1,cn=cn∗yn-1+xiynsubject to 1≤n≤36.Here is one part of key code as shown in Algorithm1.Algorithm 1
For i = 0 To Joint. GetUpperBound(0) - 1 Record1= Int(Average (i + 1)/10) - Int(Average(i)/10) If Record1 > 1 Then If Average(i) = Int(pingjun(i)/10) And Average(i + 1) = Int(Average(i + 1)/10) Then ReDim Preserve joint(joint.GetUpperBound(0) + Record- 2) ReDim Preserve Joint_record1(Joint_record.GetUpperBound(0) + 1) Joint_record1 (Joint_record1.GetUpperBound(0)) = Record- 2 Else ReDim Preserve Joint_number(Joint_number.GetUpperBound(0) + 1) Joint_number(Joint_number.GetUpperBound(0)) = i + 1 … End


## 3.3. Key Technologies of Automatic Mapping for Joint Isointensity Diagram

### 3.3.1. Basic Principle of Automatic Mapping for Joint Isointensity Diagram

On the basis of VS2010 platform, geological database, and AutoCAD, the program of automatic mapping of geological joint isointensity diagram has been designed. The basic flow drawing of automatic joint is shown in Figure6.Figure 6
The flowchart of joint isointensity diagram.


### 3.3.2. The Algorithm of Automatic Mapping for Joint Isointensity Diagram

(1  ) Conversion of Coordinates. (φ,θ) represents a joint attitude and (x,y) represents the Cartesian coordinate. They are corresponded to the Polar coordinates. The equation that can be used to convert Polar coordinates into Cartesian coordinates is expressed as follows:(21)x=R2sin⁡θ2sin⁡φ,y=R2sin⁡θ2cos⁡φ.(2) The Statistics of Joints. According to the principle of equal-area projection, during statistics of joint pole density, in order to enable the point around the circle to be processed by the principle of folded point adding, (x,y) is reflected from ring edge zone (0.9R~R) to the other end of the base circle (x′,y′), as shown in Figure 7.Figure 7
The diagram of the folded point.The reflection equation can be written as follows:(22)x′y′=xy,x′2+y′2-R=R-x2+y2.The coordinates of the reflection point are(23)x′=1-2Rx2+y2x,y′=1-2Rx2+y2y.During the process of pole statistics, (21) can be used to determine the coordinates (x,y). Equation (23) can be used to reflect them to the other end of the base circle if the point is located in edge zone and then the base circle was divided into grid of 20 × 20 evenly (Figure 8).Figure 8
Simite’s net and statistic circle.The value, at the intersection of the grid, represents the number of poles in the circle. These poles take each intersection point as a center of the circle, whereas they take the length of the grid in each small square as a radius during the programming process. If the distance between the projection or folded point and the grid point(i,j) is less than that of the length of grid, the number of statistics for this grid point can be taken as 1.The number of joints at the intersection point(i,j) of the grid is divided by the total number of joints and thereafter multiplied them by 100 to get the percentage of joints at each grid point. These results can be stored in an array of grid(i,j) (Figure 9).Figure 9
The percentage of joints at each grid point.(3  ) Tracing Algorithm. (a) When the value of an isoline is k, then search and mark all longitudinal and horizontal edges inside the grid. If the edge is marked −2, it means that the isoline does not pass through this edge. The specific equation can be written as follows:(24)ysidei,j=k-gridi,jgridi,j+1-gridi,j,gridi,j-gridi,j+1·ysidei,j-0·ysidei,j-1≥0,ysidei,j=-2,where1≤i≤21, 1≤j≤201≤k≤max(grid(q,j)) and 1≤q≤21,  1≤j≤21(25)xsidei,j=k-gridi,jgridi+1,j-gridi,j,gridi,j-gridi+1,j·xsidei,j-0·xsidei,j-1≥0,xsidei,j=-2,where 1≤i≤20,  1≤j≤21.(b) Handling the Degenerated Points. When the value of an isoline is equal to that of a grid(i,j), it is difficult to search isoline. Before starting search, we should make a treatment to all grids(i,j); thus, judge whether the value of an isoline is equal to that of a grid(i,j) or not. If they are equal, the value of grid(i,j) would be multiplied by a factor of 0.99 as follows: (26)gridi,j=gridi,j×0.99,where1≤i≤20,  1≤j≤21.(c) Search Operation for the Thread of an Open Curve. The thread of an open curve must be located at the boundary of a rectangular network. For a given equivalent point, we can search the thread clockwise along the rectangular boundary. The relevant judgment method can be written as follows:(27)ysidei,j=k-gridi,jgridi,j+1-gridi,j,gridi,j-gridi,j+1·ysidei,j-0·ysidei,j-1≥0,ysidei,j=-2,xsidei,20+2≠01≤i≤20,xsidei,1+2≠0when (28)xsidei,20+2≠01≤i≤20.Thereafter, the thread of an open curve can be identified and it is found to be located at the upper boundary of grid. Similarly, the thread can be judged whether it is located on other boundaries or not.(d) Search Operation for Other Equivalent Points. After identifying the thread, the next step is to search the other equivalent points; this operation is similar to the case of an open curve search.Since each edge of the grid has been labeled by using (24) and (25), therefore the each edge of the grid has an equivalent point; it follows as (29)ysidei,j≠-2or(30)xsidei,j≠-2.There are four different cases that emerge as an equivalent points at the arbitrary grid of a rectangular mesh; their details are follows:(1) the equivalent point appears at the two edges (refer to Figures 10(a), 10(b), and 10(f)); (2) the equivalent point appears at the four edges (refer to Figure 10(c)); (3) there is no equivalent point (refer to Figure 10(d)); and (4) when there are more than two equivalent points that appear in a grid (one of them should be a current point (refer to Figures 10(c) and 10(e))), we can take the point that is the close to the current point as the next point. In this way, it can be used to reduce the computational burden as well as to meet the accuracy requirements.Figure 10
The distribution of an isometric point.
(a) (b) (c) (d) (e) (f)(e) Look Operation for the Tail of an Open Curve. When an equivalent point appears at the boundary of a grid in the case of an open curve, it means that this point is the tail of the curve; therefore, we can stop searching another open curve. The next step is to trace the closed curve. All equivalent points should be located inside the grid; its thread and tail should be overlapped in case of a closed curve. By taking the intersection of an open curve along with the base circle as boundary points and by deleting the outside part of the circle, we can get an isometric line of open curve.(f) The way of tracking in the open curves is similar to the case of closed curves; only difference is that the thread of closed curve is located inside the grid rather than at the boundary. The methods to determine the thread and to track its equivalent points are similar in the case of an opening curve.(4  ) Smooth Processing of Joint Isointensity Diagram. The proposed software can be used to make the joint isointensity diagram in a more attractive manner. TheB-spline curve can be used to smooth the line. The definition of theB-spline curve of order K (i.e., degree K-1) is to give the control points P0,P1,P2,…,Pn in the space. The expression of Bezier curve is(31)Cu=∑i=0nPiNi,kuu∈uk-1,un,whereu∈[uj-1,uj]0≤uj-1, uj≤1, j=k,k+1,…,n, where  Pi denotes the control point,u denotes the knot vector interval, uj denotes the knot vector, and Ni,k(u) is represented by theB-spline functions, which can be defined as(32)Ni,ku=u-uiui+k-uiNi,k-1u+ui+k+1-uui+k+1-ui+1Ni+1,k-1u.By using theB-spline curve, the smooth processing can be possible to produce the joint isointensity diagram in a more smooth, coordinative and attractive manner as it has been shown in Figure 11.Figure 11
The visualization of a Joint Iso-Intensity diagram.


## 3.3.1. Basic Principle of Automatic Mapping for Joint Isointensity Diagram

On the basis of VS2010 platform, geological database, and AutoCAD, the program of automatic mapping of geological joint isointensity diagram has been designed. The basic flow drawing of automatic joint is shown in Figure6.Figure 6
The flowchart of joint isointensity diagram.


## 3.3.2. The Algorithm of Automatic Mapping for Joint Isointensity Diagram

(1  ) Conversion of Coordinates. (φ,θ) represents a joint attitude and (x,y) represents the Cartesian coordinate. They are corresponded to the Polar coordinates. The equation that can be used to convert Polar coordinates into Cartesian coordinates is expressed as follows:(21)x=R2sin⁡θ2sin⁡φ,y=R2sin⁡θ2cos⁡φ.(2) The Statistics of Joints. According to the principle of equal-area projection, during statistics of joint pole density, in order to enable the point around the circle to be processed by the principle of folded point adding, (x,y) is reflected from ring edge zone (0.9R~R) to the other end of the base circle (x′,y′), as shown in Figure 7.Figure 7
The diagram of the folded point.The reflection equation can be written as follows:(22)x′y′=xy,x′2+y′2-R=R-x2+y2.The coordinates of the reflection point are(23)x′=1-2Rx2+y2x,y′=1-2Rx2+y2y.During the process of pole statistics, (21) can be used to determine the coordinates (x,y). Equation (23) can be used to reflect them to the other end of the base circle if the point is located in edge zone and then the base circle was divided into grid of 20 × 20 evenly (Figure 8).Figure 8
Simite’s net and statistic circle.The value, at the intersection of the grid, represents the number of poles in the circle. These poles take each intersection point as a center of the circle, whereas they take the length of the grid in each small square as a radius during the programming process. If the distance between the projection or folded point and the grid point(i,j) is less than that of the length of grid, the number of statistics for this grid point can be taken as 1.The number of joints at the intersection point(i,j) of the grid is divided by the total number of joints and thereafter multiplied them by 100 to get the percentage of joints at each grid point. These results can be stored in an array of grid(i,j) (Figure 9).Figure 9
The percentage of joints at each grid point.(3  ) Tracing Algorithm. (a) When the value of an isoline is k, then search and mark all longitudinal and horizontal edges inside the grid. If the edge is marked −2, it means that the isoline does not pass through this edge. The specific equation can be written as follows:(24)ysidei,j=k-gridi,jgridi,j+1-gridi,j,gridi,j-gridi,j+1·ysidei,j-0·ysidei,j-1≥0,ysidei,j=-2,where1≤i≤21, 1≤j≤201≤k≤max(grid(q,j)) and 1≤q≤21,  1≤j≤21(25)xsidei,j=k-gridi,jgridi+1,j-gridi,j,gridi,j-gridi+1,j·xsidei,j-0·xsidei,j-1≥0,xsidei,j=-2,where 1≤i≤20,  1≤j≤21.(b) Handling the Degenerated Points. When the value of an isoline is equal to that of a grid(i,j), it is difficult to search isoline. Before starting search, we should make a treatment to all grids(i,j); thus, judge whether the value of an isoline is equal to that of a grid(i,j) or not. If they are equal, the value of grid(i,j) would be multiplied by a factor of 0.99 as follows: (26)gridi,j=gridi,j×0.99,where1≤i≤20,  1≤j≤21.(c) Search Operation for the Thread of an Open Curve. The thread of an open curve must be located at the boundary of a rectangular network. For a given equivalent point, we can search the thread clockwise along the rectangular boundary. The relevant judgment method can be written as follows:(27)ysidei,j=k-gridi,jgridi,j+1-gridi,j,gridi,j-gridi,j+1·ysidei,j-0·ysidei,j-1≥0,ysidei,j=-2,xsidei,20+2≠01≤i≤20,xsidei,1+2≠0when (28)xsidei,20+2≠01≤i≤20.Thereafter, the thread of an open curve can be identified and it is found to be located at the upper boundary of grid. Similarly, the thread can be judged whether it is located on other boundaries or not.(d) Search Operation for Other Equivalent Points. After identifying the thread, the next step is to search the other equivalent points; this operation is similar to the case of an open curve search.Since each edge of the grid has been labeled by using (24) and (25), therefore the each edge of the grid has an equivalent point; it follows as (29)ysidei,j≠-2or(30)xsidei,j≠-2.There are four different cases that emerge as an equivalent points at the arbitrary grid of a rectangular mesh; their details are follows:(1) the equivalent point appears at the two edges (refer to Figures 10(a), 10(b), and 10(f)); (2) the equivalent point appears at the four edges (refer to Figure 10(c)); (3) there is no equivalent point (refer to Figure 10(d)); and (4) when there are more than two equivalent points that appear in a grid (one of them should be a current point (refer to Figures 10(c) and 10(e))), we can take the point that is the close to the current point as the next point. In this way, it can be used to reduce the computational burden as well as to meet the accuracy requirements.Figure 10
The distribution of an isometric point.
(a) (b) (c) (d) (e) (f)(e) Look Operation for the Tail of an Open Curve. When an equivalent point appears at the boundary of a grid in the case of an open curve, it means that this point is the tail of the curve; therefore, we can stop searching another open curve. The next step is to trace the closed curve. All equivalent points should be located inside the grid; its thread and tail should be overlapped in case of a closed curve. By taking the intersection of an open curve along with the base circle as boundary points and by deleting the outside part of the circle, we can get an isometric line of open curve.(f) The way of tracking in the open curves is similar to the case of closed curves; only difference is that the thread of closed curve is located inside the grid rather than at the boundary. The methods to determine the thread and to track its equivalent points are similar in the case of an opening curve.(4  ) Smooth Processing of Joint Isointensity Diagram. The proposed software can be used to make the joint isointensity diagram in a more attractive manner. TheB-spline curve can be used to smooth the line. The definition of theB-spline curve of order K (i.e., degree K-1) is to give the control points P0,P1,P2,…,Pn in the space. The expression of Bezier curve is(31)Cu=∑i=0nPiNi,kuu∈uk-1,un,whereu∈[uj-1,uj]0≤uj-1, uj≤1, j=k,k+1,…,n, where  Pi denotes the control point,u denotes the knot vector interval, uj denotes the knot vector, and Ni,k(u) is represented by theB-spline functions, which can be defined as(32)Ni,ku=u-uiui+k-uiNi,k-1u+ui+k+1-uui+k+1-ui+1Ni+1,k-1u.By using theB-spline curve, the smooth processing can be possible to produce the joint isointensity diagram in a more smooth, coordinative and attractive manner as it has been shown in Figure 11.Figure 11
The visualization of a Joint Iso-Intensity diagram.


## 4. Applications

### 4.1. Bore Histogram Automatic Mapping Algorithm

The main interface is shown in Figure12, and the interface of geological data management and mapping function is shown in Figure 13. GDMS provides a simple user interface to store and manage the large geological information.Figure 12
Main interface.Figure 13
Interface of geological data management and mapping function.On the basis of the Wujiang Goupitan Engineering, the relevant data of a borehole from the database of geological information can be extracted.The feasibility and effectiveness of this method can be verified by using the Wujiang Goupitan Engineering. The graphics can be generated by using this program and they can be used for the purpose of visualization during design and construction stages.


### 4.2. Joint Rose Diagram Automatic Mapping Algorithm

On the basis of the Goupitan Engineering, the extraction of the relevant data for the geological joint rose diagram from the database of geological information is generated by using the new method, as it has been shown in Figure14.Figure 14
Generation of geological joint tendency figure of rose diagram.


### 4.3. Joint Isodense Diagram Automatic Mapping Algorithm

On the basis of Goupitan Engineering, the extraction of the relevant data for the geological joint from the database of geological information is generated and it has been shown in Figure15.Figure 15
Generation of joint isointensity diagram.The feasibility and effectiveness of this method can be verified by using the Goupitan Engineering project. The graphics generated by this program can be used as an important basis of visualization for the design and construction stages.


## 4.1. Bore Histogram Automatic Mapping Algorithm

The main interface is shown in Figure12, and the interface of geological data management and mapping function is shown in Figure 13. GDMS provides a simple user interface to store and manage the large geological information.Figure 12
Main interface.Figure 13
Interface of geological data management and mapping function.On the basis of the Wujiang Goupitan Engineering, the relevant data of a borehole from the database of geological information can be extracted.The feasibility and effectiveness of this method can be verified by using the Wujiang Goupitan Engineering. The graphics can be generated by using this program and they can be used for the purpose of visualization during design and construction stages.


## 4.2. Joint Rose Diagram Automatic Mapping Algorithm

On the basis of the Goupitan Engineering, the extraction of the relevant data for the geological joint rose diagram from the database of geological information is generated by using the new method, as it has been shown in Figure14.Figure 14
Generation of geological joint tendency figure of rose diagram.


## 4.3. Joint Isodense Diagram Automatic Mapping Algorithm

On the basis of Goupitan Engineering, the extraction of the relevant data for the geological joint from the database of geological information is generated and it has been shown in Figure15.Figure 15
Generation of joint isointensity diagram.The feasibility and effectiveness of this method can be verified by using the Goupitan Engineering project. The graphics generated by this program can be used as an important basis of visualization for the design and construction stages.


## 5. Conclusions

In this article, the software ZNCT has been developed for onward efficient management of the geological data, as it is obtained from the geological survey. It can further be used to generate the geological maps automatically. To load the data, the relevant interfaces (borehole data import interface and joints information import interface) have been developed and simplified. The proposed software is user-friendly and it can be used to establish a connection with Excel. The users can enter the data in the specified Excel files, whereas the geological data can be entered in the relevant Excel sheets in different batches. For the efficient management of those geological data, the systemic interfaces and functions (e.g., the geological information search interface, borehole data search interface, joints data search interface, and geological data modification interface as well as deleting, updating, and administrative functions) have been provided.The visualization experience of geological maps is enhanced by introducing many new methods (e.g., the drilling histogram variable aperture mapping method, the drilling histogram segment display method, and color-filling methods) have been proposed. These methods can successfully be applied for onward automatic generation and visualization of 2D geological maps.This software is based on Microsoft Access, Excel, and AutoCAD; it has specifically been developed in Visual Basic.Net for onward geological information management, geological maps generation, and visualization.The salient features of the developed software are as follows:(1)
Different users can enter the geological data and share it.(2)
Geologists or engineers can modify and update the geological data conveniently, as the corresponding interfaces have been developed as being user-friendly. This feature reduces the time and project cost.(3)
The automatic generating method of geological maps that is based on the geological data is designed in this software. By default, much information such as strata can be filled automatically when field information is missing.(4)
The platform for mapping in this software is based on AutoCAD; this enables the option of postprocessing of maps without the need to export them with the help of other software.This software offers a complete and easy-to-use combination of data management and map generation. It is an efficient and time-saving tool for the geological analyses. It could be able to meet the practical demands of geological workers and researchers.



---

*Source: 3618139-2017-01-12.xml*