This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
1. Introduction
In November 2005, the International Telecommunication Union (ITU) released a report entitled “the Internet of things,” which formally puts forward the Internet of things (IOT), which attracted the attention of governments and industries. Petroleum industry is an important industry of IOT application, which has been applied in some enterprises. The Internet of things system of engineering technology includes the automatic data acquisition, remote data transmission, data center, and remote operation support center (RTOC). Through the remote operation support center, technical experts can view the data and video information of the well pad on the computer of the center for remote analysis and decision-making. RTOC aims at building data acquisition and application, a multiprofessional collaborative service platform to improve the integrated service capabilities, realize intelligent operation support, the integration of engineering and technology wellbore business, and information technology [1–3]. RTOC includes the following parts: automatic collection, integrated storage, and remote transmission of field data; real-time data detection, early warning and analysis optimization; remote technical support; and decision-making. It provides a powerful guarantee for making and transmitting drilling decision quickly and effectively, as shown in Figure 1.
[figure omitted; refer to PDF]
Drilling 3D visualization system is an important task for building web applications in RTOC, which provides a highly visualized working environment to view real-time 3D drilling scene for drilling process remote monitor and decision. It can put borehole trajectories, LWD, MWD, mud logging, well-logging data, seismic slice, and formation interfaces, reservoir geological model all into a 3D scene, realizing the information sharing of logging, geology, and engineering; thus, experts can get realistic underground scenes. Cross-platform, lightweighted, and open are three basic rules when building drilling 3D visualization systems. Currently, some efforts have been made on drilling 3D visualization; however, most of them are traditional desktop software which cannot provide online service for RTOC. At present, some companies built such visualization products: 3D visualization software enables drilling engineers, geophysical engineers, geological engineers, and reservoir engineers to work with the same data volume environment, breaking professional and geographical constraints, and making multidisciplinary [4–9]. Combination really becomes a reality. Most of the existing 3D visualization technologies adopt the client-server (C/S) mode, such as DecisionSpace®, and WellViz3D are released as standalone software, which must be installed and used in a local operation system (OS). Discovery Web of Kongsberg adopts the B/S mode. However, based on ActiveX plug-in technology, special plug-ins need to be installed, which can only support IE browser on PC Windows and cannot support mobile devices (Android and IOS) [10]. Undoubtedly, a web-based drilling 3D visualization system has flexibility to perform real-time monitoring of drilling activities through a browser platform in RTOC. However, there is no 3D visualization technology of drilling based on standard browser at present. A cross-platform online drilling 3D visualization system to describe the underground geological environment and drilling state using WebGL (termed as WebDrillingViz) based on HTML5 and WebGL standard is developed in this paper, which can support all mainstream operating systems and browsers. By using standards-based technologies, this visualization can operate on a multitude of devices removing both the technical and logistical restraints on a remote collaboration. The online drilling 3D visualization system is different from that on local drilling 3D visualization in the following aspects:
(i) Lightweight: HTML5 and WebGL enable the browsers realize excellent 3D effects without any plugins, the REST server built with Node.js and Restify in microservice architecture, which can easily be deployed on cloud.
(ii) Cross-platform: rich, interactive, browser-based, cross-platform visualization tools can serve both PCs and mobile devices that run different OSs, which support WebGL, such as Windows, Linux, IOS, and Android.
(iii) Open: the software supports the data formats commonly used in oil and gas industry and can easily import geological and related data into the system's database.
(iv) Economic: the software is all based on HTML5 and open-source technology stack, which is not bundled with expensive software packages and has no tedious licensing restrictions.
2. 3D Visualization Technology on the Web
The idea is to update the experts of RTOC with live data, i.e., detailed 3D real-time insights into the ongoing drilling operation. In the past few years, a great progress has been made in modern web browsers and network standards [11, 12]. Cross-browser and cross-platform standardization greatly simplifies the design and implementation of rich interactive Web applications. In the past, third-party plug-ins needed to realize complex interaction or graphics in browsers. Java applets, Flash, and Silverlight were used for browser-based rich and interactive applications. Many security issues, as well as poor support and performance on mobile devices, made these technologies gradually abandoned. Instead, a powerful set of Web standards (commonly known as HTML5) has evolved into a framework on which real browser-based and cross-platform visualization tools can be developed. Special interest in drilling and geological visualization is HTML5, HTML5 canvas, and WebGL.
2.1. HTML5
HTML5 is a markup language used for structuring and presenting content on the web pages. It is the fifth and current major version of the HTML standard, and it was developed by World Wide Web Consortium (W3C, a broad coalition of organizations).
Compared with the previous version, the 5th version has made a qualitative leap in processing graphics and images. On the premise of not relying on third-party plug-ins, a new standard for graphics and image applications is proposed, which supports dynamic display and interaction on various mobile platforms and further improves the flexibility and security of web applications. After discarding all kinds of plug-ins, it combined with JavaScript makes the expansion of website functions easier to achieve and the development of website more efficient and safer.
2.2. HTML5 Canvas
The HTML tag provides a container that programmatically draws graphical objects on the screen. In short, a canvas tag is similar to an image but provides the ability to draw raster-based dynamic graphics. The canvas tag has been existing for many years and was eventually integrated into the HTML5 specification. At present, all the major browsers and devices platforms have implemented canvas tag, which makes it a good and feasible way to draw dynamic drilling scenarios. Although the canvas is essentially a 2D space, 3D effects can be simulated in 3D games. The rendering engine calculates the perspective on the 3D object and maps it to the 2D view for display on a flat screen. No matter what the underlying technology is, this general method is suitable for graphic rendering of all 3D objects in the 2D environment. The canvas tag simply provides a standards-based and well-supported tool for rendering dynamic graphics in Web browsers.
2.3. WebGL
WebGL has been introduced as one of the powerful web features for developing 3D content, and it is based on OpenGL ES 2.0 and allows rendering 3D scene in the browser. WebGL provides a general interface for accessing the 3D graphics hardware of the underlying system in the browser and can realize the rendering of complex 3D scene efficiently. Currently, all major browsers provide support for WebGL, making it the ideal technology to render 3D drilling and geology scene across platform and devices.
3. System Architecture
The system was built on HTML5 standards and open-source frameworks.
3.1. Overall Framework
Under the environment of HTML5, the system adopts the B/S architecture building a network platform using the TypeScript development language. With the help of the language's full object-oriented and strong typing characteristics, the code has strong expansibility, reusability, security, robustness, and stability. The system uses an object-oriented design method, builds a scalable 3D visualization class library, and encapsulates it as an Angular module, which has strong reusability and inheritance.
Through Angular's powerful compile ability, the compiled program can run efficiently in the browser. It accesses back-end RESTful data interface API to obtain user data and provides a friendly user interface by using the responsive layout, which can support both desktop and mobile systems.
The software realizes the unified management of visual objects, displays the coordinates of 3D scene, and performs the fundamental functions including zooming, rotating, and translating. Figure 2 illustrates software architecture including data layer, service layer, and view layer.
[figure omitted; refer to PDF]
The data layer is Geological Engineering Warehouse, and it uses real-time and relational databases to receive and preserve static and dynamic drilling geological data. Static data include oilfield information, adjacent well data, drilling design data, formation tops, seismic slices, and other geological engineering data. Dynamic data include drilling, MWD, LWD, and mud logging data.
The service layer based on Node.js and Restify framework provides a RESTful API. It is the data interface between front-end application and the back-end data warehouse. All communications between the data warehouse and the visualization program will also be performed through the servers.
The view layer is a single page Web application (SPA), based on HTML5 standards and TypeScript language, using Angular front-end framework and Bootstrap UI library to realize responsive SPA. Through the WebGL interface of browser, 3D visualization components are implemented to realize web-based cross-platform interactive 3D visualization application for drilling and geological.
3.2. Technology Stack
This software uses a series of open-source technologies to build an economical and efficient technology stack.
3.2.1. TypeScript
TypeScript is an open-source programming language developed and maintained by Microsoft [13]. It is a strict syntactical superset of JavaScript and adds optional static typing to the language and offers a module system, classes, interfaces, and a rich gradual-type system. TypeScript developers sought a solution that would not break compatibility with the standard and its cross-platform support. TypeScript may be used to develop applications for both client-side and server-side execution. The client and server of this software are all developed with TypeScript.
3.2.2. Angular
Single Page Application (SPA) was built on expanding reach via the browser, reducing round-tripping, and enhancing User Experience (UX). Compared with traditional web applications, SPA application loads the html, CSS, and JavaScript programs of a single page at one time and dynamically updates the content when the user interacts with it. It enables Web application to realize complex dynamic interaction in one page. Advanced SPA application framework will compile, package, and compress all source codes. The final application has only a small number of compiled, optimized, and compressed .js files. The execution efficiency is much higher than the traditional way through the browser one-time loading. The core of SPA technology is the combination of front-end technology and back-end REST data service. The interactive operation of the application is completed through JavaScript programs in the browser without the participation of the server. The server only provides the support of data services, so it can get closer to the interactive effect of desktop C/S applications.
A clear picture of typical SPA architecture contains a server and client, as shown in Figure 3. Angular has become an increasingly popular choice for rapid development of dynamic HTML pages [14]. The major front-end technologies are Angular, VUE, and React. Angular, an open-source TypeScript framework, has been developed to enable and give an extreme freedom to client-side developers building powerful SPA. This software adopts the MVVM architecture and latest version 7.0 of Angular to develop.
[figure omitted; refer to PDF]
The main 3D components include 3D visualization fundamental component, well-trajectory component, curve component, formation tops component, seismic slice component, and reservoir model component.
3.3.1. Fundamental Component
The fundamental components are the most important part of the whole software. In addition to realizing the basic functions of 3D drawing, including zooming, rotation, illumination, object management, and coordinate display of graphics, an extensible 3D drawing framework is realized by using object-oriented technology. All other 3D drawing components are extended on this basis, and new components can be added any time according to the requirements, as shown in Figure 6.
[figure omitted; refer to PDF]
Axis box (AxeBox class) is the most important foundation component, it can display X, Y, and Z grids and labels, and as a container manages all other 3D components, it can dynamically change label’s position and always displays the labels at appropriate positions.
There are eight color-map classes implemented IColorMap interface, and they can produce eight different color maps. It is also very easy to add new color-map class into software, as shown in Figure 7.
[figure omitted; refer to PDF]
The basic component is responsible for the interaction with the mouse, realizing the translation, rotation, and scaling operations of the three-dimensional scene, depth alignment, coordinate system drawing, and graphics object management. Rotation, translation, and scaling are three basic operations for spatial three-dimensional objects, which enable users to view drilling three-dimensional scenes from different angles and positions. Although formulas can be used to represent each transformation, the formulas can become very complex when representing multiple continuous transformations. Using the coordinate transformation matrix, various basic transformations and combinational transformations can be realized more conveniently.
(1) Basic transformation of three-dimensional graphics
Rotation: spatial rotation can be decomposed into two-dimensional rotation around three coordinate axes. The rotation angles
The complete transformation is
Translation: spatial translation is the movement of an object in any distance and direction. The transformation of the moving distances
Scaling: scale the object. In the direction of
Based on the above basic transformation, any complex three-dimensional transformation can be decomposed into a combination of three basic transformations; for example, the object is rotated around any point
(2) Depth alignment
The NS, EW, and TVD for a single well are relative to the wellhead. For different wells, the map-north, map-east, and elevation of the well are different. If multiwell data are placed in the same coordinate system, all wellhead data must be corrected to a unified coordinate system. The coordinate Z takes the sea level as zero and the upward direction as positive:
(3) Perspective transformation and mouse interaction
The nature of perspective is the same as photographic imaging. It is projecting a 3D shape onto a 2D plane. Perspective is very close to human vision; for example, when the human eye looks at a road, the road in the distance looks narrower. The basic principles of perspective are shown in Figure 8.
[figure omitted; refer to PDF]
Through perspective transformation, the 3D graphics are presented on the 2D screen. When users want to observe the 3D scene with different distances and angles, they can move the camera position through the mouse. Mouse movement is a 2D action, so it is necessary to unproject the movement of the mouse to the 2D space according to the position of the camera. The users can achieve the effect of rotation and scaling by moving the position of the camera.
The software can trace the position of the camera in the process of mouse movement and dynamically adjust the display content; for example, in the coordinate system, only displaying three grid-faces of the axe-box located far-end can achieve better display effect. By calculating the distance between six planes of the axe-box and the camera, three distant planes are selected to display. The relative relationship between the ticks’ text and the sight on the screen is calculated to reasonably determine the position of the calibration text and obtain better visual effect.
3.3.2. Trajectory Component
The trajectory component is used to display the design and drilling trajectories of the wellbore including static and real-time data.
The calculation of the trajectory is the basis of the well visualization. The track data, returned by the measurement tool mainly including measure depth (MD), deviation angle (Dev), azimuth angle (Azi), are shown in Table 1. The space coordinates of the trajectory are obtained by calculation.
Table 1
Trajectory measurement data.
MD (m) | Inc (deg) | Azi (deg) |
0 | 0 | 0 |
153.32 | 0.45 | 3.21 |
180.8 | 0.39 | 21.9 |
208.48 | 0.46 | 26.04 |
… | … | … |
The spatial coordinate parameters of the trajectory are defined as follows: North/South coordinate (NS), East/West coordinate (EW), and the true vertical depth (TVD), which represent the displacement of a point on the trajectory relative to the North/South, East/West, and the vertical direction of the wellhead, respectively, corresponding to the Y, X, and Z axes of the direct coordinate system, in which the North, East, and Bottom directions are positive; for example, if the vertical depth of a well is 1000 m, the TVD of the wellhead is 0 and the TVD of the bottom hole is 1000.
The calculation process is as follows: the wellhead is taken as the origin, where (TVD, NS, EW) = (0, 0, 0), starting from the wellhead, in turn, recursive calculation of two adjacent points as
By assuming the 3D curve shape of wellbore section between two measuring points, the vertical increment ΔD, North/South increment ΔN, and East/West increment ΔE of measured section are calculated and then add them up:
The wellhead coordinates are known; therefore,
In the well trajectory model, a new method of natural curve method is proposed. Because of the high complexity of the model, it cannot be solved analytically. It needs to solve the complex implicit equation, and it is easy to encounter the problem of iterative divergence. This paper discusses the natural curve calculation methods under fixed point problem and designs a new solution process.
Fixed point problem (build turn point): given
[figure omitted; refer to PDF]
Assume the starting and ending points of the well section are A and B, and the known conditions are
The process of solving the model is as follows:
(1) Calculate the slope of AB line:
When
(2) Assign an initial value to
(3) Confirm the initial value of
According to the azimuth and coordinate offset of point A, the azimuth change direction and initial value of azimuth are solved. Solving the initial value of azimuth, the transformation matrix M is established according to
(4) Calculate well section length
According to the equation,
(5) Solve azimuth
In equation (17), there is no analyzing expression for
By substituting
By repeating the above iterative process,
It should be noted that, in formula (17) and formula (18), when there are two molecular terms
The following is the limit problem in the above formula:
(6) Solve well deviation angle
There is the following relationship:
Equation (21) or equation (22) is selected to calculate the current
If the error of
3.3.3. Curve Components
The curve component displays the curve parameter changes along the wellbore trajectory, such as torque, hook load, riser pressure, drilling time, rotating speed of turntable and other engineering data, or logging data, e.g., gamma ray. Each curve is displayed in a different color. Another curve style is displayed in the form of tube. The component represents the change in one parameter with the different colors of the color-map, and the change in the thickness of the cylinder can represent the change in another parameter (such as well diameter).
3.3.4. Formation Tops Component
Formation tops are described using the following data, as shown in Table 2.
Table 2
Formation tops data format.
Map north (m) | Map east (m) | Altitude (m) | Column | Row |
18496205.34 | 3106995.77 | 2020.84 | 315 | 1 |
18496254.58 | 3106987.09 | 2021.12 | 316 | 1 |
18496214.02 | 3107045.01 | 2027.11 | 315 | 2 |
18496263.26 | 3107036.33 | 2028.75 | 316 | 2 |
18496017.06 | 3107079.74 | 2028.87 | 307 | 3 |
18496066.30 | 3107071.06 | 2025.83 | 308 | 3 |
⋮ | ⋮ | ⋮ | ⋮ | ⋮ |
Formation tops are defined in the grid mode, including
(1) Create material based on color-map.
(2) Calculate the depth range of all visible vertexes
(3) Convert all vertex coordinates into a uniform coordinate array position.
(4) According to the indexes position, each visible quadrangle is treated as two triangles to form an index array of vertex coordinates of the triangle indices.
(5) Calculate material coordinates of vertices
(6) Create mesh object and compute normal vectors automatically.
3.3.5. Tube Curve Component
Tube curve component is used to display the tube curve along the path of borehole trajectory. The amplitude of the tube curve is displayed by different diameters and colors, which can show the change in a certain parameter along the borehole intuitively. Figure 10 is the basic principle of drawing the component. It divides the wellbore circumferentially into certain parts, such as 20, and takes values at certain depth intervals on the curve. Therefore, the whole barrel curve is transformed into drawing a series of quadrilateral, and each quadrilateral can be drawn with two triangles, as shown in Figure 10.
[figure omitted; refer to PDF]
The software can display the complex and accidents of drilling in the block, the seismic characteristics of the target layer, the tops of the target formation, drilling trajectories, and LWD data and can be used for auxiliary analysis and decision-making. The drilling and geological experts can not only use the workstation of the Office but also use the mobile equipment to view the data and graphics.
Due to the consistency and efficiency of WebGL on various platforms, the software has good performance and consistency on the main platforms, including Windows, Linux, macOS, Android, and iOS, and the responsive layout can adapt well for the different resolutions of desktop devices and mobile devices; for small mobile screen, the software will automatically hide the left tree menu, making the software more practical. The goal of the development is achieved.
In Figure 14, drilling 3D scene is visualized on iPad, Android, and iPhone different devices. Compared with non-cross-platform software, WebDrillingViz provides a powerful fundamental tool for the drilling visualization applications. Different from current studies on visualization of 3D drilling visualization, WebDrillingViz is lightweighted, cross-platform, and open. We can anticipate that WebDrillingViz can be rewarding to more applications during the life-cycle drilling. At the end, it is verified that WebDrillingViz is efficient, compatible with mainstream devices through extensive real projects’ drilling and geological data, and the rest interface of data service software fully meets the actual needs in terms of function, performance, and reliability, which proves that the architecture proposed in this paper is a very valuable lightweight solution.
[figure omitted; refer to PDF]8. Conclusions
This paper introduces the structure and development of 3D visualization software for drilling engineering and geology. The software is based on WebGL and developed with TypeScript, an open-source framework. Combined with the real-time transmission scheme proposed, a set of low-cost and practical real-time 3D visualization monitoring software is provided for RTOC. The conclusions can be summarized as follows:
(1) The use of native Web technologies allows detailed renderings of the drilling and geological data with no additional software to install. 3D drilling scene renderings are processed entirely within the modern Web browser without a significant tradeoff in performance. It is firstly suggested that an online 3D drilling visualization system has to meet three basic requirements: lightweighted, cross-platform, and open. Based on these basic rules, we developed a novel online 3D drilling visualization system based on HTML5 and WebGL, termed as WebDrillingViz. It is now installed in the RTOC, interfacing with other software systems. This software will enable decision-makers to have better insights into the status of the well and formation surrounding the well and thus makes better and quicker decisions.
(2) WebDrillingViz integrates responsive design and high-performance back-end services, using the latest technologies, such as NodeJS, Angular, and Bootstrap frameworks with excellent compatibility. The front-end components can also quickly be embedding into other web applications and the back-end efficient service based on NodeJS platform. The software is completely implemented in TypeScript language on both sides, and the whole development cycle reduced significantly because using same language. The REST-style data service is a lightweight technology, which is more suitable for cloud platform at present. Through JSONP, cross-domain access is realized. PM2 is used to deploy the service program. The service has the characteristics of high reliability, reliability, and easy expansion.
Acknowledgments
The authors would like to thank China University of Petroleum (Beijing) for the support during this research and permission to publish these results. This work was financially supported by the National Natural Science Foundation Project (Grant no. 51374222),National Major Project (Grant no. 2017ZX05032004-002), National Key Basic Research and Development Program (Grant no. 2015CB250905), and CNPC's Major Scientific and Technological Project (Grant no. 2017E-0405).
[1] D. H. Kaminiski, N. M. Pellerin, J. H. Williams, "A new data integration and work process system for providing online real-time drilling collaboration," Proceedings of the European Petroleum Conference,DOI: 10.2523/78343-ms, .
[2] A. L. F. Madaleno, S. L. S. Neto, L. A. Dos Santos, C. A. L. De Oliveira, "Operational and safety improvements of applying real-time analytics in a drilling contractor RTOC," Proceedings of the Annual Offshore Technology Conference,DOI: 10.4043/28824-ms, .
[3] L. J. Ursem, J. H. Williams, N. M. Pellerin, D. H. Kaminski, "Real time operations centers; the people aspects of drilling decision making," Proceedings of the Drilling Conference,DOI: 10.2523/79893-ms, .
[4] G. A. Dorn, K. Touysinhthiphonexay, J. Bradley, A. Jamieson, "Immersive 3-D visualization applied to drilling planning," The Leading Edge, vol. 20 no. 12, pp. 1389-1392, DOI: 10.1190/1.1487271, 2001.
[5] J. Holt, W. J. Wright, H. Nicholson, A. Kuhn-De-Chizelle, C. Ramshorn, "Mungo field : improved communication through 3D visualization of drilling problems," Proceedings of the SPE/AAPG Western Regional Meetings, vol. 53,DOI: 10.2118/0101-0025-jpt, .
[6] R. Rommetveit, K. S. Bjørkevoll, S. I. Ødegård, M. Herbert, G. W. Halsey, "Automatic real-time drilling supervision, simulation, 3D visualization and diagnosis on ekofisk," .
[7] R. Rommetveit, K. S. Bjørkevoll, S. I. Ødegård, O. Sandve, B. Larsen, M. Herbert, "EDrilling: linking advanced models and 3D visualization to drilling control systems in real time," Proceedings of the Offshore Mediterranean Conference and Exhibition 2007, OMC 2007, .
[8] W. C. Sanstrom, M. J. Hawkins, "Perceiving drilling learning through visualization," Proceedings of the IADC/SPE Asia Pacific Drilling Technology Conference, APDT,DOI: 10.2523/62759-ms, .
[9] P. Song, L. Shi, Y. Zhou, Q. Zhao, H. Jiang, P. Cui, "Study and applications on integrated drilling engineering software for drilling engineering design and real-time optimization (Russian)," Proceedings of the Society of Petroleum Engineers - SPE Annual Caspian Technical Conference and Exhibition,DOI: 10.2118/172288-ru, .
[10] W. Phillips, "Interactive web-based 3D wellbore viewer enables collaborative analysis," SPE Production & Operations, vol. 33 no. 02, pp. 345-352, DOI: 10.2118/174024-pa, 2018.
[11] X. Liu, N. Xie, K. Tang, J. Jia, "Lightweighting for Web3D visualization of large-scale BIM scenes in real-time," Graphical Models, vol. 88, pp. 40-56, DOI: 10.1016/j.gmod.2016.06.001, 2016.
[12] I. Morozov, G. Chubak, S. Blyth, "Interactive 3D/2D visualization for geophysical data processing and interpretation," Computers and Geosciences, vol. 35 no. 7, pp. 1397-1408, DOI: 10.1016/j.cageo.2008.10.005, 2009.
[13] G. Bierman, M. Abadi, M. Torgersen, Understanding TypeScript, vol. 8586, pp. 257-281, DOI: 10.1007/978-3-662-44202-9_11, 2014.
[14] J. Dickey, Write Modern Web Apps with the Mean Stack:Mongo, Express, AngularJS, and Node.Js (Develop and Design), 2014.
[15] T. A. Walsh, P. McMinn, G. M. Kapfhammer, "Automatic detection of potential layout faults following changes to responsive web pages (N)," Proceedings of the 2015 30th IEEE/ACM International Conference on Automated Software Engineering,DOI: 10.1109/ASE.2015.31, .
[16] R. T. Fielding, R. N. Taylor, "Principled design of the modern web architecture," ACM Transactions on Internet Technology, vol. 2 no. 2, pp. 115-150, DOI: 10.1145/514183.514185, 2002.
[17] M. Cantelon, M. Harter, T. J. Holowaychuk, N. Rajlich, Node.js in Action, 2013.
[18] M. Khudiri, J. James, M. Amer, B. Otaibi, M. Nefai, J. Curtis, "The integration of drilling sensor real-time data with drilling reporting data at Saudi Aramco using WITSML," Proceedings of the Society of Petroleum Engineers - SPE Intelligent Energy International 2014,DOI: 10.2118/167873-ms, .
[19] X. Chenjie, Z. Xiang, P. Xin, Z. Wenyun, "Microservice system oriented runtime deployment optimization," Computer Application Software, vol. 35 no. 10, pp. 85-93, 2019.
[20] L. Yongyi, "Research on cross-domain request scheme for large distributed web system," J. Chang. Univ., vol. 35 no. 2, pp. 54-56, 2018.
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer
Copyright © 2021 Shanshan Liu et al. This is an open access article distributed under the Creative Commons Attribution License (the “License”), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License. https://creativecommons.org/licenses/by/4.0/
Abstract
This study develops a novel drilling 3D visualization solution based on WebGL, termed as WebDrillingViz, and introduces the system architecture design and software programming implementation. The software is part of the Engineering Technology Internet of Things (IoT) System, interfacing with other software, and also capable of direct hardware interfacing for data retrieval and system control. It is fully web-based, used real time, and used in RTOC (Real-Time Operating Center) of IoT system, which is a software system for drilling process remote monitor and decision. WebDrillingViz uses the most frontier HTML5 technology to realize a brand-new drilling 3D visualization system. The front end is designed in single-page application (SPA) mode and adopts technologies such as angular, bootstrap, and WebGL. The front-end uses single page application (SPA) mode, Angular, Bootstrap, WebGL and other technologies are used. The back-end data services provide data interface support for front-end visualization applications based on HTTP protocol which uses NodeJS, a lightweight development platform suitable for cloud platform, and Restify to realize a REST JSON API. Both sides are using the same object-oriented oriented development language—TypeScript. The front-end develops an easy-to-extend 3D visualization class library based on WebGL for drilling. It is encapsulated as Angular modularization to form an Angular component, which can be used standalone or integrated into other Angular applications. At the same time, the back-end microservice architecture combined with container and cloud technology is easy to maintain, deploy, and expand and has the advantages of being lightweight, cross-platform, flexible, and efficient. Using HTML5 standard and Bootstrap's responsive layout achieves cross-platform, which can support different operating systems and screen sizes. The system has better robustness and maintainability, thanks to the object-oriented and strong typing characteristics of TypeScript. Practical application shows that WebDrillingViz is efficient, capable of visualization of large drilling 3D scene, and compatible with mainstream devices, such as Windows, Linux, macOS, iOS, and Android. The use of open standards-based modern web technologies and data format enables a more lightweight and economical solution. WebGL, Angular, NodeJS, and TypeScript formed a powerful technology stack, which can be used as an excellent reference for other browser-based visualization development.
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer
Details




1 College of Petroleum Engineering, China University of Petroleum, Beijing 102249, China
2 College of Petroleum Engineering, China University of Petroleum, Beijing 102249, China; State Key Laboratory of Petroleum Resources and Prospecting, China University of Petroleum, Beijing, China