Urban pipe network data loading method and system

By adopting data compression, encryption, CDN transmission, WebGL rendering and LOD technology in the urban pipeline data loading system, the problem of slow loading speed of urban pipeline data is solved, and efficient loading and secure transmission are achieved.

CN119449419APending Publication Date: 2025-02-14ARCHITECTURAL DESIGN INST FUKIEN PROV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411579349.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-07
Publication Date
2025-02-14

AI Technical Summary

Technical Problem

The data loading speed of urban pipeline network is slow, affecting the user experience.

Method used

The server sends a request for the city pipeline data acquisition to the server through the browser. The server compresses and encrypts the data and feeds it back to the client through the CDN. The client decrypts and creates a pipeline model through the WebGL protocol, performs geometric optimization and texture map mapping, and combines LOD technology and asynchronous loading technology for real-time rendering.

Benefits of technology

It significantly improves the data loading speed of urban pipeline networks, improves user experience, and ensures the security of data transmission through multiple encryption and security measures.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119449419A_ABST
    Figure CN119449419A_ABST
Patent Text Reader

Abstract

The invention provides an urban pipe network data loading method and system in the technical field of urban pipe network management. The method comprises the steps that S1, a server compresses and encrypts urban pipe network data to obtain encrypted pipe network data and sends the encrypted pipe network data to a client; s2, the client obtains modeling data and a texture map based on the encrypted pipe network data; s3, creating a plurality of first pipe network models by the browser of the client based on the modeling data, and optimizing geometric data of each first pipe network model to obtain a second pipe network model; s4, mapping the texture map to the second pipe network model to obtain a third pipe network model; s5, setting a rendering area based on the visual field of the camera, and pre-loading each third pipe network model in the rendering area to a buffer area; and S6, performing real-time rendering on each third pipe network model in the buffer area, and loading and caching a rendering result through an asynchronous loading technology. The method has the advantage that the urban pipe network data loading speed is greatly increased.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of urban pipe network management, and in particular to an urban pipe network data loading method and system. Background Art

[0002] In order to ensure the normal operation of the city, there are a large number of urban pipe networks, such as drainage pipe networks and gas pipe networks, which are indispensable infrastructure for the lives of urban residents. With the development of the era of digitalization, relevant technologies have been developed to digitize urban pipe networks, that is, to perform three-dimensional modeling of urban pipe networks to manage them visually.

[0003] However, in order to improve the management effect of urban pipeline networks, while performing three-dimensional modeling of urban pipeline networks, it is also necessary to model the terrain, urban buildings, transportation road networks, image maps, etc., and the size of a city is huge, which requires rendering of a large number of layers / data. When accessing urban pipeline network data (urban pipeline network three-dimensional model) through a browser, the loading speed of urban pipeline network data is not satisfactory, and it often takes a while to buffer before loading is completed, which seriously affects the user experience.

[0004] Therefore, how to provide a method and system for loading urban pipe network data to improve the speed of loading urban pipe network data has become a technical problem that needs to be solved urgently. Summary of the invention

[0005] The technical problem to be solved by the present invention is to provide a method and system for loading urban pipe network data, so as to improve the loading speed of urban pipe network data.

[0006] In a first aspect, the present invention provides a method for loading urban pipe network data, comprising the following steps:

[0007] Step S1, the client sends a request for obtaining urban pipe network data to the server through the browser, and the server verifies the received request for obtaining urban pipe network data and selects corresponding urban pipe network data based on the request for obtaining urban pipe network data;

[0008] Step S2: the server compresses and encrypts the selected urban pipe network data to obtain encrypted pipe network data, and feeds the encrypted pipe network data back to the client through the CDN;

[0009] Step S3: The client decrypts the received encrypted pipe network data to obtain urban pipe network data, and parses the urban pipe network data to obtain modeling data and texture maps in GLTF format;

[0010] Step S4: The browser of the client creates a plurality of first pipe network models based on the modeling data through the WebGL protocol, and optimizes the geometric data of each of the first pipe network models to obtain a corresponding second pipe network model;

[0011] Step S5: The browser maps the texture map to the corresponding second pipe network model through Mipmaps technology to obtain a third pipe network model;

[0012] Step S6: The browser sets a rendering area based on the camera field of view, and preloads each third pipe network model in the rendering area into a continuous buffer of the GPU;

[0013] Step S7, the browser performs real-time rendering of each of the third pipe network models in the buffer by using the LOD technology, simulates illumination by using the light map during the rendering process, loads and caches the rendering results by using the asynchronous loading technology, and then loads the urban pipe network data;

[0014] The step S1 is specifically as follows:

[0015] The client sends a request for obtaining urban pipe network data carrying ciphertext data, a first timestamp, and a hash value to the server through a browser based on the TLS protocol; the hash value is obtained by performing a hash calculation on the ciphertext data and the first timestamp, and the ciphertext data is obtained by encrypting the account password and the urban pipe network data number through the 3DES algorithm;

[0016] The server parses the received urban pipe network data acquisition request to obtain ciphertext data, a first timestamp and a hash value, performs integrity verification through the hash value, performs timeliness verification through the first timestamp, and then decrypts the ciphertext data through the 3DES algorithm to obtain the account password and the urban pipe network data number, performs matching verification on the account password through a preset account management table, and selects the corresponding urban pipe network data from the database through the urban pipe network data number;

[0017] The urban pipe network data carries modeling data and texture maps in GLTF format;

[0018] The step S2 is specifically as follows:

[0019] The server detects and references duplicate data in the selected urban pipe network data through Lempel-Ziv coding to compress the urban pipe network data to obtain compressed data;

[0020] The server creates a pair of public keys and private keys based on the RSA algorithm, encrypts the public key through the AES algorithm to obtain a first key, encrypts the first key through the ECC algorithm to obtain a second key, obtains the current second timestamp, performs MAC calculation on the compressed data and the second timestamp to obtain a MAC value, encrypts the compressed data, the second timestamp and the MAC value through the private key to obtain primary encrypted data, encrypts the primary encrypted data and the second key through the BLOWFISH algorithm to obtain secondary encrypted data, divides the secondary encrypted data through a preset first division ratio and swaps the order to obtain third-level encrypted data, encrypts the third-level encrypted data through the IDEA algorithm to obtain fourth-level encrypted data, divides the fourth-level encrypted data through a preset second division ratio and swaps the order to obtain fifth-level encrypted data, encrypts the fifth-level encrypted data through the ElGamal algorithm to obtain encrypted pipe network data, and feeds the encrypted pipe network data back to the client in real time through the CDN.

[0021] Furthermore, the step S3 is specifically as follows:

[0022] The client receives the encrypted pipe network data in real time, decrypts the encrypted pipe network data through the ElGamal algorithm to obtain level-5 encrypted data, divides the level-5 encrypted data through the inverse of the preset second division ratio and swaps the order to obtain level-4 encrypted data, decrypts the level-4 encrypted data through the IDEA algorithm to obtain level-3 encrypted data, divides the level-3 encrypted data through the inverse of the preset first division ratio and swaps the order to obtain level-2 encrypted data, decrypts the level-2 encrypted data through the BLOWFISH algorithm to obtain level-1 encrypted data and a second key, decrypts the second key through the ECC algorithm to obtain a first key, decrypts the first key through the AES algorithm to obtain a public key, decrypts the level-1 encrypted data through the public key to obtain compressed data, a second timestamp and a MAC value, performs integrity verification through the MAC value, performs timeliness verification through the second timestamp, decompresses the compressed data through Lempel-Ziv coding to obtain urban pipe network data, and parses the urban pipe network data to obtain modeling data and texture maps in GLTF format.

[0023] Furthermore, the step S4 is specifically as follows:

[0024] The client's browser creates several first pipe network models based on the modeling data through the WebGL protocol, simplifies the vertices and faces inside each of the first pipe network models, and optimizes the geometric data of each of the first pipe network models to obtain the corresponding second pipe network models.

[0025] Furthermore, the step S5 is specifically as follows:

[0026] The browser creates a texture atlas, merges each of the texture maps into the texture atlas, UV unfolds each of the second pipe network models, selects a texture map from the texture atlas through Mipmaps technology, UV maps the selected texture map to the corresponding second pipe network model, and obtains a third pipe network model.

[0027] Furthermore, the step S7 is specifically as follows:

[0028] The browser sets a classification label for each of the third pipe network models based on the model shape, classifies each of the third pipe network models in the buffer based on the classification label, starts the parallel thread of the GPU through the Compute Shader technology, and renders the classified third pipe network models in batches and in parallel through the instantiation rendering technology and parallel threads. In the rendering process, the rendering details are dynamically adjusted in combination with the LOD technology, the lighting is simulated through the light map, the aliasing and performance in the rendering process are balanced through the MSAA technology, and the rendering results are loaded and cached through the asynchronous loading technology, thereby loading the urban pipe network data;

[0029] The instantiation rendering technology performs batch rendering on the third pipe network models of the same type based on classification labels.

[0030] In a second aspect, the present invention provides a system for loading urban pipe network data, comprising the following modules:

[0031] The urban pipe network data acquisition request sending module is used for the client to send the urban pipe network data acquisition request to the server through the browser, and the server verifies the received urban pipe network data acquisition request and selects the corresponding urban pipe network data based on the urban pipe network data acquisition request;

[0032] An encrypted pipe network data feedback module is used for the server to compress and encrypt the selected urban pipe network data to obtain encrypted pipe network data, and feed back the encrypted pipe network data to the client through CDN;

[0033] The encrypted pipe network data decryption module is used for the client to decrypt the received encrypted pipe network data to obtain the urban pipe network data, and parse the urban pipe network data to obtain the modeling data and texture map in GLTF format;

[0034] A geometry optimization module, used for the client browser to create a plurality of first pipe network models based on the modeling data through the WebGL protocol, and optimize the geometry data of each of the first pipe network models to obtain a corresponding second pipe network model;

[0035] A texture map mapping module is used for the browser to map the texture map to the corresponding second pipe network model through Mipmaps technology to obtain a third pipe network model;

[0036] A model preloading module, used for the browser to set a rendering area based on the camera field of view, and preload each third pipe network model in the rendering area into a continuous buffer of the GPU;

[0037] A model rendering module is used for the browser to perform real-time rendering of each of the third pipe network models in the buffer zone through the LOD technology, simulate illumination through light mapping during the rendering process, load and cache the rendering results through the asynchronous loading technology, and then load the urban pipe network data;

[0038] The urban pipe network data acquisition request sending module is specifically used for:

[0039] The client sends a request for obtaining urban pipe network data carrying ciphertext data, a first timestamp, and a hash value to the server through a browser based on the TLS protocol; the hash value is obtained by performing a hash calculation on the ciphertext data and the first timestamp, and the ciphertext data is obtained by encrypting the account password and the urban pipe network data number through the 3DES algorithm;

[0040] The server parses the received urban pipe network data acquisition request to obtain ciphertext data, a first timestamp and a hash value, performs integrity verification through the hash value, performs timeliness verification through the first timestamp, and then decrypts the ciphertext data through the 3DES algorithm to obtain the account password and the urban pipe network data number, performs matching verification on the account password through a preset account management table, and selects the corresponding urban pipe network data from the database through the urban pipe network data number;

[0041] The urban pipe network data carries modeling data and texture maps in GLTF format;

[0042] The encrypted pipe network data feedback module is specifically used for:

[0043] The server detects and references duplicate data in the selected urban pipe network data through Lempel-Ziv coding to compress the urban pipe network data to obtain compressed data;

[0044] The server creates a pair of public keys and private keys based on the RSA algorithm, encrypts the public key through the AES algorithm to obtain a first key, encrypts the first key through the ECC algorithm to obtain a second key, obtains the current second timestamp, performs MAC calculation on the compressed data and the second timestamp to obtain a MAC value, encrypts the compressed data, the second timestamp and the MAC value through the private key to obtain primary encrypted data, encrypts the primary encrypted data and the second key through the BLOWFISH algorithm to obtain secondary encrypted data, divides the secondary encrypted data through a preset first division ratio and swaps the order to obtain third-level encrypted data, encrypts the third-level encrypted data through the IDEA algorithm to obtain fourth-level encrypted data, divides the fourth-level encrypted data through a preset second division ratio and swaps the order to obtain fifth-level encrypted data, encrypts the fifth-level encrypted data through the ElGamal algorithm to obtain encrypted pipe network data, and feeds the encrypted pipe network data back to the client in real time through the CDN.

[0045] Furthermore, the encrypted pipe network data decryption module is specifically used for:

[0046] The client receives the encrypted pipe network data in real time, decrypts the encrypted pipe network data through the ElGamal algorithm to obtain level-5 encrypted data, divides the level-5 encrypted data through the inverse of the preset second division ratio and swaps the order to obtain level-4 encrypted data, decrypts the level-4 encrypted data through the IDEA algorithm to obtain level-3 encrypted data, divides the level-3 encrypted data through the inverse of the preset first division ratio and swaps the order to obtain level-2 encrypted data, decrypts the level-2 encrypted data through the BLOWFISH algorithm to obtain level-1 encrypted data and a second key, decrypts the second key through the ECC algorithm to obtain a first key, decrypts the first key through the AES algorithm to obtain a public key, decrypts the level-1 encrypted data through the public key to obtain compressed data, a second timestamp and a MAC value, performs integrity verification through the MAC value, performs timeliness verification through the second timestamp, decompresses the compressed data through Lempel-Ziv coding to obtain urban pipe network data, and parses the urban pipe network data to obtain modeling data and texture maps in GLTF format.

[0047] Furthermore, the geometry optimization module is specifically used for:

[0048] The client's browser creates several first pipe network models based on the modeling data through the WebGL protocol, simplifies the vertices and faces inside each of the first pipe network models, and optimizes the geometric data of each of the first pipe network models to obtain the corresponding second pipe network models.

[0049] Furthermore, the texture mapping module is specifically used for:

[0050] The browser creates a texture atlas, merges each of the texture maps into the texture atlas, UV unfolds each of the second pipe network models, selects a texture map from the texture atlas through Mipmaps technology, UV maps the selected texture map to the corresponding second pipe network model, and obtains a third pipe network model.

[0051] Furthermore, the model rendering module is specifically used for:

[0052] The browser sets a classification label for each of the third pipe network models based on the model shape, classifies each of the third pipe network models in the buffer based on the classification label, starts the parallel thread of the GPU through the Compute Shader technology, and renders the classified third pipe network models in batches and in parallel through the instantiation rendering technology and parallel threads. In the rendering process, the rendering details are dynamically adjusted in combination with the LOD technology, the lighting is simulated through the light map, the aliasing and performance in the rendering process are balanced through the MSAA technology, and the rendering results are loaded and cached through the asynchronous loading technology, thereby loading the urban pipe network data;

[0053] The instantiation rendering technology performs batch rendering on the third pipe network models of the same type based on classification labels.

[0054] The advantages of the present invention are:

[0055] 1. Send a request for obtaining urban pipe network data to the server through the browser. After verifying the request, the server selects the corresponding urban pipe network data based on the request, compresses and encrypts the selected urban pipe network data to obtain encrypted pipe network data, and feeds the encrypted pipe network data back to the client through CDN; then the client decrypts the encrypted pipe network data to obtain the urban pipe network data, parses the urban pipe network data to obtain modeling data and texture maps in GLTF format; the client's browser creates several first pipe network models based on the modeling data through the WebGL protocol, optimizes the geometric data of each first pipe network model to obtain the corresponding second pipe network model, and uses Mipmaps technology to generate the encrypted pipe network data. The texture map is mapped to the corresponding second pipe network model by the technology to obtain the third pipe network model; then the rendering area is set based on the camera field of view, and each third pipe network model in the rendering area is preloaded into the continuous buffer of the GPU. Finally, each third pipe network model in the buffer is rendered in real time by the LOD technology. During the rendering process, the illumination is simulated by the light map, and the rendering results are loaded and cached by the asynchronous loading technology, and then the urban pipe network data is loaded; that is, before the server transmits the urban pipe network data to the client, the urban pipe network data is compressed to shorten the transmission time; the transmission is carried out through CDN to avoid the bottlenecks and links on the Internet that may affect the data transmission speed and stability as much as possible, so that the transmission The data format of the modeling data is set to GLTF, which is designed for real-time rendering. The data structure and file size are optimized, and the redundant information in the 3D model is effectively reduced, thereby improving the data reading efficiency and reducing the rendering time. The WebGL protocol provides hardware 3D accelerated rendering, which further improves the rendering speed. Before rendering, the vertices and faces inside each first pipe network model are streamlined to optimize the geometric data, making the network topology more efficient. The texture map is mapped through the Mipmaps technology, that is, texture maps of different precisions are used based on the rendering distance to reduce the amount of data during rendering. The rendering area is set based on the camera field of view, that is, currently only the camera field of view area is rendered. 3. Perform rendering in parallel to reduce the amount of data for rendering; preload each tertiary pipe network model in the rendering area into the GPU buffer, effectively reducing the amount of data transferred from the CPU to the GPU; combine LOD technology in the rendering process, that is, dynamically adjust the details of the tertiary pipe network model based on the distance between the camera and the tertiary pipe network model, and use polygons with fewer edges to represent the tertiary pipe network model in the distance to reduce the amount of data during rendering; simulate lighting through light mapping instead of dynamic lighting to reduce the amount of lighting calculations; load and cache the rendering results through asynchronous loading technology, that is, load the rendering results in the background to avoid blocking the main thread. At least 11 measures were taken before and after, which ultimately greatly improved the loading speed of urban pipe network data.

[0056] 2. Through the browser, based on the TLS protocol, a request for obtaining urban pipe network data carrying ciphertext data, a first timestamp, and a hash value is sent to the server; the hash value is obtained by hashing the ciphertext data and the first timestamp, and the ciphertext data is obtained by encrypting the account password and the urban pipe network data number through the 3DES algorithm; since the TLS protocol is a secure transmission protocol, it is used to provide security and data integrity protection for Internet communications; subsequently, the ciphertext data and the first timestamp can be integrity checked through the hash value, and the timeliness can be checked through the first timestamp, while the account password and the urban pipe network data number are encrypted through the 3DES algorithm. At least five security measures are taken before and after (TLS protocol, 3DES algorithm, first timestamp, hash calculation, account password), which can effectively identify the urban pipe network data acquisition request sent by illegal clients to the server, thereby ensuring the security of urban pipe network data transmission.

[0057] 3. Lempel-Ziv coding is used to detect and reference duplicate data in urban pipe network data, so as to compress urban pipe network data to obtain compressed data, effectively reduce the amount of data transmission, effectively shorten the data transmission time, and thus improve the loading speed of urban pipe network data.

[0058] 4. Create a pair of public and private keys through the RSA algorithm, encrypt the public key through the AES algorithm to obtain the first key, encrypt the first key through the ECC algorithm to obtain the second key, obtain the current second timestamp, perform MAC calculation on the compressed data and the second timestamp to obtain the MAC value, encrypt the compressed data, the second timestamp and the MAC value through the private key to obtain the first-level encrypted data, encrypt the first-level encrypted data and the second key through the BLOWFISH algorithm to obtain the second-level encrypted data, split the second-level encrypted data according to the first split ratio and swap the order to obtain the third-level encrypted data, encrypt the third-level encrypted data through the IDEA algorithm to obtain the fourth-level encrypted data, split the fourth-level encrypted data according to the second split ratio and swap the order to obtain the fifth-level encrypted data, and Gamal algorithm is used to encrypt the five-level encrypted data to obtain encrypted pipe network data, and the encrypted pipe network data is fed back to the client in real time through CDN; since the data encrypted by the private key can only be decrypted by the public key, the public key is encrypted multiple times and can be verified for timeliness through the second timestamp later, and the MAC calculation is based on the hash function carrying the secret key, which is more secure than the ordinary hash calculation. If the corresponding encryption algorithm or data transformation rules are not known, the encrypted pipe network data cannot be cracked. At least 11 security measures have been taken (RSA algorithm, public and private keys, AES algorithm, ECC algorithm, second timestamp, MAC calculation, BLOWFISH algorithm, first segmentation ratio, IDEA algorithm, second segmentation ratio, ElGamal algorithm), which greatly improves the security of urban pipe network data transmission.

[0059] 5. Create a texture atlas, merge each texture map into the texture atlas, perform UV unfolding on each second pipe network model, select a texture map from the texture atlas through Mipmaps technology, and UV map the selected texture map to the corresponding second pipe network model to obtain the third pipe network model; by merging each texture map into the texture atlas, the number of times the texture map is switched during rendering can be effectively reduced, and memory usage can be reduced; map the texture map through Mipmaps technology, that is, use texture maps of different precisions based on the rendering distance to reduce the amount of data during rendering, thereby effectively improving the speed of loading urban pipe network data.

[0060] 6. Set the classification label of each third pipe network model by model shape, classify each third pipe network model in the buffer based on the classification label, start the parallel thread of GPU through Compute Shader technology, and perform batch and parallel rendering of each classified third pipe network model through instanced rendering technology and parallel threads. In the rendering process, LOD technology is combined to dynamically adjust the rendering details, light mapping is used to simulate lighting, MSAA technology is used to balance the jagged edges and performance in the rendering process, and the rendering results are loaded and cached through asynchronous loading technology; that is, through instanced rendering technology, batch rendering of the same type of third pipe network models is performed based on the classification label, without repeating the operation on the same model; parallel rendering is started through ComputeShader technology. Rendering is effectively accelerated; LOD technology is combined in the rendering process, that is, the details of the third pipe network model are dynamically adjusted based on the distance between the camera and the third pipe network model, and polygons with fewer edges are used to represent the third pipe network model in the distance to reduce the amount of data during rendering; light mapping is used to simulate lighting instead of dynamic lighting to reduce the amount of lighting calculations; MSAA technology is used to balance the jagged edges and performance in the rendering process; asynchronous loading technology is used to load and cache the rendering results, that is, the rendering results are loaded in the background to avoid blocking the main thread, and multiple measures are taken to optimize the loading process, thereby effectively improving the loading speed of urban pipe network data. BRIEF DESCRIPTION OF THE DRAWINGS

[0061] The present invention will be further described below in conjunction with embodiments with reference to the accompanying drawings.

[0062] Figure 1 The present invention is a flow chart of a method for loading urban pipe network data.

[0063] Figure 2 It is a structural schematic diagram of a city pipe network data loading system of the present invention. DETAILED DESCRIPTION

[0064] The technical solution in the embodiment of the present application has the following overall idea: before the server transmits the urban pipe network data to the client, the urban pipe network data is compressed to shorten the transmission time; the transmission is carried out through CDN to avoid bottlenecks and links on the Internet that may affect the data transmission speed and stability as much as possible, so as to make the transmission faster and more stable; by setting the data format of the modeling data to GLTF, GLTF is born for real-time rendering, which optimizes the data structure and file size, effectively reduces the redundant information in the 3D model, and thus improves the data reading efficiency and reduces the rendering time; the WebGL protocol provides hardware 3D accelerated rendering to further improve the rendering speed; before rendering, the vertices and faces inside each first pipe network model are simplified to optimize the geometric data, so as to make the network topology structure more efficient; the texture map is mapped through the Mipmaps technology, that is, based on Use texture maps of different precisions for different rendering distances to reduce the amount of data during rendering; set the rendering area based on the camera's field of view, that is, only render the camera's field of view area at present to reduce the amount of data for rendering; preload each third pipe network model in the rendering area into the GPU's buffer, effectively reducing the amount of data transmitted from the CPU to the GPU; combine LOD technology in the rendering process, that is, dynamically adjust the details of the third pipe network model based on the distance between the camera and the third pipe network model, and use polygons with fewer edges to represent the third pipe network model in the distance to reduce the amount of data during rendering; simulate lighting through light maps instead of dynamic lighting to reduce the amount of lighting calculations; load and cache the rendering results through asynchronous loading technology, that is, load the rendering results in the background to avoid blocking the main thread. At least 11 measures are taken before and after to improve the loading speed of urban pipe network data.

[0065] Please refer to Figure 1 to Figure 2 As shown, a preferred embodiment of a method for loading urban pipe network data of the present invention comprises the following steps:

[0066] Step S1, the client sends a request for obtaining urban pipe network data to the server through the browser, and the server verifies the received request for obtaining urban pipe network data and selects corresponding urban pipe network data based on the request for obtaining urban pipe network data;

[0067] Step S2: the server compresses and encrypts the selected urban pipe network data to obtain encrypted pipe network data, and feeds the encrypted pipe network data back to the client through the CDN;

[0068] Step S3: The client decrypts the received encrypted pipe network data to obtain urban pipe network data, and parses the urban pipe network data to obtain modeling data and texture maps in GLTF format;

[0069] Step S4: The browser of the client creates a plurality of first pipe network models based on the modeling data through the WebGL protocol, and optimizes the geometric data of each of the first pipe network models to obtain a corresponding second pipe network model;

[0070] Step S5: The browser maps the texture map to the corresponding second pipe network model through Mipmaps technology to obtain a third pipe network model;

[0071] Step S6, the browser sets a rendering area based on the camera field of view, and preloads each third pipe network model in the rendering area into a continuous buffer of the GPU; setting the rendering area, that is, using tile rendering technology (TiledRendering) to divide the urban pipe network scene into multiple tiles (areas), and only rendering the tiles within the camera field of view; preloading each third pipe network model in the rendering area into the buffer of the GPU, effectively reducing the amount of data transmission from the CPU to the GPU;

[0072] Step S7, the browser uses LOD (Level of Detail) technology to render each of the third pipe network models in the buffer in real time, simulates illumination through a lightmap during the rendering process, loads and caches the rendering results through asynchronous loading technology, and then loads the urban pipe network data; creates an illumination model of the urban pipe network scene through the lightmap to replace dynamic illumination, thereby reducing the amount of illumination calculation; combines LOD technology during the rendering process, that is, dynamically adjusts the details of the third pipe network model based on the distance between the camera and the third pipe network model, and uses polygons with fewer edges to represent the third pipe network model at a distance, thereby reducing the amount of data during rendering;

[0073] The step S1 is specifically as follows:

[0074] The client sends a request for obtaining urban pipe network data carrying ciphertext data, a first timestamp, and a hash value to the server through a browser based on the TLS protocol; the hash value is obtained by performing a hash calculation on the ciphertext data and the first timestamp, and the ciphertext data is obtained by encrypting the account password and the urban pipe network data number through the 3DES algorithm;

[0075] Through the browser, a request for obtaining urban pipe network data carrying ciphertext data, a first timestamp and a hash value is sent to the server based on the TLS protocol; the hash value is obtained by hashing the ciphertext data and the first timestamp, and the ciphertext data is obtained by encrypting the account password and the urban pipe network data number through the 3DES algorithm; since the TLS protocol is a secure transmission protocol, it is used to provide security and data integrity protection for Internet communications; the ciphertext data and the first timestamp can be subsequently checked for integrity through the hash value, and the timeliness can be checked through the first timestamp, while the account password and the urban pipe network data number are encrypted through the 3DES algorithm, and at least 5 security measures are taken before and after (TLS protocol, 3DES algorithm, first timestamp, hash calculation, account password), which can effectively identify the urban pipe network data acquisition requests sent by illegal clients to the server, thereby ensuring the security of urban pipe network data transmission.

[0076] The server parses the received urban pipe network data acquisition request to obtain ciphertext data, a first timestamp and a hash value, performs integrity verification through the hash value, performs timeliness verification through the first timestamp, and then decrypts the ciphertext data through the 3DES algorithm to obtain the account password and the urban pipe network data number, performs matching verification on the account password through a preset account management table, and selects the corresponding urban pipe network data from the database through the urban pipe network data number;

[0077] The urban pipe network data carries modeling data and texture maps in GLTF format;

[0078] The step S2 is specifically as follows:

[0079] The server detects and references duplicate data in the selected urban pipe network data through Lempel-Ziv coding to compress the urban pipe network data to obtain compressed data;

[0080] Lempel-Ziv coding is used to detect and reference duplicate data in urban pipe network data, so as to compress urban pipe network data to obtain compressed data, effectively reduce the amount of data transmission, effectively shorten the data transmission time, and thus improve the loading speed of urban pipe network data.

[0081] The server creates a pair of public keys and private keys based on the RSA algorithm, encrypts the public key through the AES algorithm to obtain a first key, encrypts the first key through the ECC algorithm to obtain a second key, obtains the current second timestamp, performs MAC calculation on the compressed data and the second timestamp to obtain a MAC value, encrypts the compressed data, the second timestamp and the MAC value through the private key to obtain primary encrypted data, encrypts the primary encrypted data and the second key through the BLOWFISH algorithm to obtain secondary encrypted data, divides the secondary encrypted data through a preset first division ratio and swaps the order to obtain third-level encrypted data, encrypts the third-level encrypted data through the IDEA algorithm to obtain fourth-level encrypted data, divides the fourth-level encrypted data through a preset second division ratio and swaps the order to obtain fifth-level encrypted data, encrypts the fifth-level encrypted data through the ElGamal algorithm to obtain encrypted pipe network data, and feeds the encrypted pipe network data back to the client in real time through CDN (Content Delivery Network).

[0082] A pair of public and private keys are created by the RSA algorithm, the public key is encrypted by the AES algorithm to obtain a first key, the first key is encrypted by the ECC algorithm to obtain a second key, the current second timestamp is obtained, the compressed data and the second timestamp are MAC calculated to obtain a MAC value, the compressed data, the second timestamp and the MAC value are encrypted by the private key to obtain first-level encrypted data, the first-level encrypted data and the second key are encrypted by the BLOWFISH algorithm to obtain second-level encrypted data, the second-level encrypted data is divided by the first division ratio and the order is swapped to obtain third-level encrypted data, the third-level encrypted data is encrypted by the IDEA algorithm to obtain fourth-level encrypted data, the fourth-level encrypted data is divided by the second division ratio and the order is swapped to obtain fifth-level encrypted data, and the ElG The amal algorithm is used to encrypt the five-level encrypted data to obtain encrypted pipe network data, and the encrypted pipe network data is fed back to the client in real time through CDN; since the data encrypted by the private key can only be decrypted by the public key, the public key is encrypted multiple times and can be verified for timeliness through the second timestamp later. The MAC calculation is based on the hash function carrying the secret key, which is more secure than the ordinary hash calculation. If the corresponding encryption algorithm or data transformation rule is not known, the encrypted pipe network data cannot be cracked. At least 11 security measures have been taken (RSA algorithm, public and private keys, AES algorithm, ECC algorithm, second timestamp, MAC calculation, BLOWFISH algorithm, first segmentation ratio, IDEA algorithm, second segmentation ratio, ElGamal algorithm), which greatly improves the security of urban pipe network data transmission.

[0083] The step S3 is specifically as follows:

[0084] The client receives the encrypted pipe network data in real time, decrypts the encrypted pipe network data through the ElGamal algorithm to obtain level-5 encrypted data, divides the level-5 encrypted data through the inverse of the preset second division ratio and swaps the order to obtain level-4 encrypted data, decrypts the level-4 encrypted data through the IDEA algorithm to obtain level-3 encrypted data, divides the level-3 encrypted data through the inverse of the preset first division ratio and swaps the order to obtain level-2 encrypted data, decrypts the level-2 encrypted data through the BLOWFISH algorithm to obtain level-1 encrypted data and a second key, decrypts the second key through the ECC algorithm to obtain a first key, decrypts the first key through the AES algorithm to obtain a public key, decrypts the level-1 encrypted data through the public key to obtain compressed data, a second timestamp and a MAC value, performs integrity verification through the MAC value, performs timeliness verification through the second timestamp, decompresses the compressed data through Lempel-Ziv coding to obtain urban pipe network data, and parses the urban pipe network data to obtain modeling data and texture maps in GLTF format.

[0085] The modeling data at least includes model shape, model size, model position and model quantity; the texture map at least carries mapping parameters including texture shape, texture color and texture material.

[0086] The step S4 is specifically as follows:

[0087] The client browser creates several first pipe network models based on the modeling data through the WebGL protocol, simplifies the vertices and faces inside each of the first pipe network models, and optimizes the geometric data of each of the first pipe network models to obtain the corresponding second pipe network model, that is, reducing unnecessary vertices and faces and using a more efficient network topology.

[0088] The step S5 is specifically as follows:

[0089] The browser creates a texture atlas, merges each of the texture maps into the texture atlas, UV unfolds each of the second pipe network models, selects a texture map from the texture atlas through Mipmaps technology, and UV maps the selected texture map to the corresponding second pipe network model to obtain a third pipe network model.

[0090] By creating a texture atlas, merging each texture map into the texture atlas, UV unfolding each second pipe network model, selecting a texture map from the texture atlas through the Mipmaps technology, and UV mapping the selected texture map to the corresponding second pipe network model to obtain the third pipe network model; by merging each texture map into the texture atlas, the number of times the texture map is switched during rendering can be effectively reduced, and the memory usage can be reduced; the texture map is mapped through the Mipmaps technology, that is, texture maps of different precisions are used based on the presentation distance to reduce the amount of data during rendering, thereby effectively improving the loading speed of urban pipe network data.

[0091] The step S7 is specifically as follows:

[0092] The browser sets a classification label for each of the third pipe network models based on the model shape, classifies each of the third pipe network models in the buffer based on the classification label, starts the parallel thread of the GPU through the Compute Shader technology, and renders the classified third pipe network models in batches and in parallel through the instantiation rendering technology (Instancing) and parallel threads. In the rendering process, the rendering details are dynamically adjusted in combination with the LOD technology, the lighting is simulated through the light map, the aliasing and performance in the rendering process are balanced through the MSAA technology (multi-sampling anti-aliasing), and the rendering results are loaded and cached through the asynchronous loading technology, thereby loading the urban pipe network data;

[0093] The instantiation rendering technology performs batch rendering on the third pipe network models of the same type based on classification labels.

[0094] The classification label of each third pipe network model is set by the model shape, and the third pipe network models in the buffer are classified based on the classification label. The parallel threads of the GPU are started by the Compute Shader technology. The classified third pipe network models are rendered in batches and in parallel by the instantiation rendering technology and parallel threads. In the rendering process, the rendering details are dynamically adjusted by combining the LOD technology, the lighting is simulated by the light map, the aliasing and performance in the rendering process are balanced by the MSAA technology, and the rendering results are loaded and cached by the asynchronous loading technology; that is, the third pipe network models of the same type are rendered in batches based on the classification label by the instantiation rendering technology, without repeating the operation on the same model; by Compute Shader technology starts the parallel threads of the GPU for parallel rendering, effectively accelerating the rendering process; LOD technology is combined in the rendering process, that is, the details of the third pipe network model are dynamically adjusted based on the distance between the camera and the third pipe network model, and polygons with fewer edges are used to represent the third pipe network model in the distance, so as to reduce the amount of data during rendering; lighting is simulated by light mapping instead of dynamic lighting to reduce the amount of lighting calculation; MSAA technology is used to balance the jagged edges and performance in the rendering process; asynchronous loading technology is used to load and cache the rendering results, that is, the rendering results are loaded in the background to avoid blocking the main thread, and multiple measures are taken to optimize the loading process, thereby effectively improving the loading speed of urban pipe network data.

[0095] A preferred embodiment of a system for loading urban pipe network data in the present invention includes the following modules:

[0096] The urban pipe network data acquisition request sending module is used for the client to send the urban pipe network data acquisition request to the server through the browser, and the server verifies the received urban pipe network data acquisition request and selects the corresponding urban pipe network data based on the urban pipe network data acquisition request;

[0097] An encrypted pipe network data feedback module is used for the server to compress and encrypt the selected urban pipe network data to obtain encrypted pipe network data, and feed back the encrypted pipe network data to the client through CDN;

[0098] The encrypted pipe network data decryption module is used for the client to decrypt the received encrypted pipe network data to obtain the urban pipe network data, and parse the urban pipe network data to obtain the modeling data and texture map in GLTF format;

[0099] A geometry optimization module, used for the client browser to create a plurality of first pipe network models based on the modeling data through the WebGL protocol, and optimize the geometry data of each of the first pipe network models to obtain a corresponding second pipe network model;

[0100] A texture map mapping module is used for the browser to map the texture map to the corresponding second pipe network model through Mipmaps technology to obtain a third pipe network model;

[0101] The model preloading module is used for the browser to set the rendering area based on the camera field of view, and preload the third pipe network models in the rendering area into the continuous buffer of the GPU; the rendering area is set, that is, the urban pipe network scene is divided into multiple tiles (areas) using tiled rendering technology (Tiled Rendering), and only the tiles in the camera field of view are rendered; the third pipe network models in the rendering area are preloaded into the buffer of the GPU, effectively reducing the amount of data transmission from the CPU to the GPU;

[0102] A model rendering module is used for the browser to perform real-time rendering of each of the third pipe network models in the buffer through the LOD technology (Level of Detail), simulate illumination through a lightmap during the rendering process, load and cache the rendering results through asynchronous loading technology, and then load the urban pipe network data; create an illumination model of the urban pipe network scene through the lightmap to replace dynamic illumination, thereby reducing the amount of illumination calculation; combine the LOD technology during the rendering process, that is, dynamically adjust the details of the third pipe network model based on the distance between the camera and the third pipe network model, and use polygons with fewer edges to represent the third pipe network model at a distance, thereby reducing the amount of data during rendering;

[0103] The urban pipe network data acquisition request sending module is specifically used for:

[0104] The client sends a request for obtaining urban pipe network data carrying ciphertext data, a first timestamp, and a hash value to the server through a browser based on the TLS protocol; the hash value is obtained by performing a hash calculation on the ciphertext data and the first timestamp, and the ciphertext data is obtained by encrypting the account password and the urban pipe network data number through the 3DES algorithm;

[0105] Through the browser, a request for obtaining urban pipe network data carrying ciphertext data, a first timestamp and a hash value is sent to the server based on the TLS protocol; the hash value is obtained by hashing the ciphertext data and the first timestamp, and the ciphertext data is obtained by encrypting the account password and the urban pipe network data number through the 3DES algorithm; since the TLS protocol is a secure transmission protocol, it is used to provide security and data integrity protection for Internet communications; the ciphertext data and the first timestamp can be subsequently checked for integrity through the hash value, and the timeliness can be checked through the first timestamp, while the account password and the urban pipe network data number are encrypted through the 3DES algorithm, and at least 5 security measures are taken before and after (TLS protocol, 3DES algorithm, first timestamp, hash calculation, account password), which can effectively identify the urban pipe network data acquisition requests sent by illegal clients to the server, thereby ensuring the security of urban pipe network data transmission.

[0106] The server parses the received urban pipe network data acquisition request to obtain ciphertext data, a first timestamp and a hash value, performs integrity verification through the hash value, performs timeliness verification through the first timestamp, and then decrypts the ciphertext data through the 3DES algorithm to obtain the account password and the urban pipe network data number, performs matching verification on the account password through a preset account management table, and selects the corresponding urban pipe network data from the database through the urban pipe network data number;

[0107] The urban pipe network data carries modeling data and texture maps in GLTF format;

[0108] The encrypted pipe network data feedback module is specifically used for:

[0109] The server detects and references duplicate data in the selected urban pipe network data through Lempel-Ziv coding to compress the urban pipe network data to obtain compressed data;

[0110] Lempel-Ziv coding is used to detect and reference duplicate data in urban pipe network data, so as to compress urban pipe network data to obtain compressed data, effectively reduce the amount of data transmission, effectively shorten the data transmission time, and thus improve the loading speed of urban pipe network data.

[0111] The server creates a pair of public keys and private keys based on the RSA algorithm, encrypts the public key through the AES algorithm to obtain a first key, encrypts the first key through the ECC algorithm to obtain a second key, obtains the current second timestamp, performs MAC calculation on the compressed data and the second timestamp to obtain a MAC value, encrypts the compressed data, the second timestamp and the MAC value through the private key to obtain primary encrypted data, encrypts the primary encrypted data and the second key through the BLOWFISH algorithm to obtain secondary encrypted data, divides the secondary encrypted data through a preset first division ratio and swaps the order to obtain third-level encrypted data, encrypts the third-level encrypted data through the IDEA algorithm to obtain fourth-level encrypted data, divides the fourth-level encrypted data through a preset second division ratio and swaps the order to obtain fifth-level encrypted data, encrypts the fifth-level encrypted data through the ElGamal algorithm to obtain encrypted pipe network data, and feeds the encrypted pipe network data back to the client in real time through CDN (Content Delivery Network).

[0112] A pair of public and private keys are created by the RSA algorithm, the public key is encrypted by the AES algorithm to obtain a first key, the first key is encrypted by the ECC algorithm to obtain a second key, the current second timestamp is obtained, the compressed data and the second timestamp are MAC calculated to obtain a MAC value, the compressed data, the second timestamp and the MAC value are encrypted by the private key to obtain first-level encrypted data, the first-level encrypted data and the second key are encrypted by the BLOWFISH algorithm to obtain second-level encrypted data, the second-level encrypted data is divided by the first division ratio and the order is swapped to obtain third-level encrypted data, the third-level encrypted data is encrypted by the IDEA algorithm to obtain fourth-level encrypted data, the fourth-level encrypted data is divided by the second division ratio and the order is swapped to obtain fifth-level encrypted data, and the ElG The amal algorithm is used to encrypt the five-level encrypted data to obtain encrypted pipe network data, and the encrypted pipe network data is fed back to the client in real time through CDN; since the data encrypted by the private key can only be decrypted by the public key, the public key is encrypted multiple times and can be verified for timeliness through the second timestamp later. The MAC calculation is based on the hash function carrying the secret key, which is more secure than the ordinary hash calculation. If the corresponding encryption algorithm or data transformation rule is not known, the encrypted pipe network data cannot be cracked. At least 11 security measures have been taken (RSA algorithm, public and private keys, AES algorithm, ECC algorithm, second timestamp, MAC calculation, BLOWFISH algorithm, first segmentation ratio, IDEA algorithm, second segmentation ratio, ElGamal algorithm), which greatly improves the security of urban pipe network data transmission.

[0113] The encrypted pipe network data decryption module is specifically used for:

[0114] The client receives the encrypted pipe network data in real time, decrypts the encrypted pipe network data through the ElGamal algorithm to obtain level-5 encrypted data, divides the level-5 encrypted data through the inverse of the preset second division ratio and swaps the order to obtain level-4 encrypted data, decrypts the level-4 encrypted data through the IDEA algorithm to obtain level-3 encrypted data, divides the level-3 encrypted data through the inverse of the preset first division ratio and swaps the order to obtain level-2 encrypted data, decrypts the level-2 encrypted data through the BLOWFISH algorithm to obtain level-1 encrypted data and a second key, decrypts the second key through the ECC algorithm to obtain a first key, decrypts the first key through the AES algorithm to obtain a public key, decrypts the level-1 encrypted data through the public key to obtain compressed data, a second timestamp and a MAC value, performs integrity verification through the MAC value, performs timeliness verification through the second timestamp, decompresses the compressed data through Lempel-Ziv coding to obtain urban pipe network data, and parses the urban pipe network data to obtain modeling data and texture maps in GLTF format.

[0115] The modeling data at least includes model shape, model size, model position and model quantity; the texture map at least carries mapping parameters including texture shape, texture color and texture material.

[0116] The geometry optimization module is specifically used for:

[0117] The client browser creates several first pipe network models based on the modeling data through the WebGL protocol, simplifies the vertices and faces inside each of the first pipe network models, and optimizes the geometric data of each of the first pipe network models to obtain the corresponding second pipe network model, that is, reducing unnecessary vertices and faces and using a more efficient network topology.

[0118] The texture map mapping module is specifically used for:

[0119] The browser creates a texture atlas, merges each of the texture maps into the texture atlas, UV unfolds each of the second pipe network models, selects a texture map from the texture atlas through Mipmaps technology, and UV maps the selected texture map to the corresponding second pipe network model to obtain a third pipe network model.

[0120] By creating a texture atlas, merging each texture map into the texture atlas, UV unfolding each second pipe network model, selecting a texture map from the texture atlas through the Mipmaps technology, and UV mapping the selected texture map to the corresponding second pipe network model to obtain the third pipe network model; by merging each texture map into the texture atlas, the number of times the texture map is switched during rendering can be effectively reduced, and the memory usage can be reduced; the texture map is mapped through the Mipmaps technology, that is, texture maps of different precisions are used based on the presentation distance to reduce the amount of data during rendering, thereby effectively improving the loading speed of urban pipe network data.

[0121] The model rendering module is specifically used for:

[0122] The browser sets a classification label for each of the third pipe network models based on the model shape, classifies each of the third pipe network models in the buffer based on the classification label, starts the parallel thread of the GPU through the Compute Shader technology, and renders the classified third pipe network models in batches and in parallel through the instantiation rendering technology (Instancing) and parallel threads. In the rendering process, the rendering details are dynamically adjusted in combination with the LOD technology, the lighting is simulated through the light map, the aliasing and performance in the rendering process are balanced through the MSAA technology (multi-sampling anti-aliasing), and the rendering results are loaded and cached through the asynchronous loading technology, thereby loading the urban pipe network data;

[0123] The instantiation rendering technology performs batch rendering on the third pipe network models of the same type based on classification labels.

[0124] The classification label of each third pipe network model is set by the model shape, and the third pipe network models in the buffer are classified based on the classification label. The parallel threads of the GPU are started by the Compute Shader technology. The classified third pipe network models are rendered in batches and in parallel by the instantiation rendering technology and parallel threads. In the rendering process, the rendering details are dynamically adjusted by combining the LOD technology, the lighting is simulated by the light map, the aliasing and performance in the rendering process are balanced by the MSAA technology, and the rendering results are loaded and cached by the asynchronous loading technology; that is, the third pipe network models of the same type are rendered in batches based on the classification label by the instantiation rendering technology, without repeating the operation on the same model; by Compute Shader technology starts the parallel threads of the GPU for parallel rendering, effectively accelerating the rendering process; LOD technology is combined in the rendering process, that is, the details of the third pipe network model are dynamically adjusted based on the distance between the camera and the third pipe network model, and polygons with fewer edges are used to represent the third pipe network model in the distance, so as to reduce the amount of data during rendering; lighting is simulated by light mapping instead of dynamic lighting to reduce the amount of lighting calculation; MSAA technology is used to balance the jagged edges and performance in the rendering process; asynchronous loading technology is used to load and cache the rendering results, that is, the rendering results are loaded in the background to avoid blocking the main thread, and multiple measures are taken to optimize the loading process, thereby effectively improving the loading speed of urban pipe network data.

[0125] In summary, the advantages of the present invention are:

[0126] 1. Send a request for obtaining urban pipe network data to the server through the browser. After verifying the request, the server selects the corresponding urban pipe network data based on the request, compresses and encrypts the selected urban pipe network data to obtain encrypted pipe network data, and feeds the encrypted pipe network data back to the client through CDN; then the client decrypts the encrypted pipe network data to obtain the urban pipe network data, parses the urban pipe network data to obtain modeling data and texture maps in GLTF format; the client's browser creates several first pipe network models based on the modeling data through the WebGL protocol, optimizes the geometric data of each first pipe network model to obtain the corresponding second pipe network model, and uses Mipmaps technology to generate the encrypted pipe network data. The texture map is mapped to the corresponding second pipe network model by the technology to obtain the third pipe network model; then the rendering area is set based on the camera field of view, and each third pipe network model in the rendering area is preloaded into the continuous buffer of the GPU. Finally, each third pipe network model in the buffer is rendered in real time by the LOD technology. During the rendering process, the illumination is simulated by the light map, and the rendering results are loaded and cached by the asynchronous loading technology, and then the urban pipe network data is loaded; that is, before the server transmits the urban pipe network data to the client, the urban pipe network data is compressed to shorten the transmission time; the transmission is carried out through CDN to avoid the bottlenecks and links on the Internet that may affect the data transmission speed and stability as much as possible, so that the transmission The data format of the modeling data is set to GLTF, which is designed for real-time rendering. The data structure and file size are optimized, and the redundant information in the 3D model is effectively reduced, thereby improving the data reading efficiency and reducing the rendering time. The WebGL protocol provides hardware 3D accelerated rendering, which further improves the rendering speed. Before rendering, the vertices and faces inside each first pipe network model are streamlined to optimize the geometric data, making the network topology more efficient. The texture map is mapped through the Mipmaps technology, that is, texture maps of different precisions are used based on the rendering distance to reduce the amount of data during rendering. The rendering area is set based on the camera field of view, that is, currently only the camera field of view area is rendered. 3. Perform rendering in parallel to reduce the amount of data for rendering; preload each tertiary pipe network model in the rendering area into the GPU buffer, effectively reducing the amount of data transferred from the CPU to the GPU; combine LOD technology in the rendering process, that is, dynamically adjust the details of the tertiary pipe network model based on the distance between the camera and the tertiary pipe network model, and use polygons with fewer edges to represent the tertiary pipe network model in the distance to reduce the amount of data during rendering; simulate lighting through light mapping instead of dynamic lighting to reduce the amount of lighting calculations; load and cache the rendering results through asynchronous loading technology, that is, load the rendering results in the background to avoid blocking the main thread. At least 11 measures were taken before and after, which ultimately greatly improved the loading speed of urban pipe network data.

[0127] 2. Through the browser, based on the TLS protocol, a request for obtaining urban pipe network data carrying ciphertext data, a first timestamp, and a hash value is sent to the server; the hash value is obtained by hashing the ciphertext data and the first timestamp, and the ciphertext data is obtained by encrypting the account password and the urban pipe network data number through the 3DES algorithm; since the TLS protocol is a secure transmission protocol, it is used to provide security and data integrity protection for Internet communications; subsequently, the ciphertext data and the first timestamp can be integrity checked through the hash value, and the timeliness can be checked through the first timestamp, while the account password and the urban pipe network data number are encrypted through the 3DES algorithm. At least five security measures are taken before and after (TLS protocol, 3DES algorithm, first timestamp, hash calculation, account password), which can effectively identify the urban pipe network data acquisition request sent by illegal clients to the server, thereby ensuring the security of urban pipe network data transmission.

[0128] 3. Lempel-Ziv coding is used to detect and reference duplicate data in urban pipe network data, so as to compress urban pipe network data to obtain compressed data, effectively reduce the amount of data transmission, effectively shorten the data transmission time, and thus improve the loading speed of urban pipe network data.

[0129] 4. Create a pair of public and private keys through the RSA algorithm, encrypt the public key through the AES algorithm to obtain the first key, encrypt the first key through the ECC algorithm to obtain the second key, obtain the current second timestamp, perform MAC calculation on the compressed data and the second timestamp to obtain the MAC value, encrypt the compressed data, the second timestamp and the MAC value through the private key to obtain the first-level encrypted data, encrypt the first-level encrypted data and the second key through the BLOWFISH algorithm to obtain the second-level encrypted data, split the second-level encrypted data according to the first split ratio and swap the order to obtain the third-level encrypted data, encrypt the third-level encrypted data through the IDEA algorithm to obtain the fourth-level encrypted data, split the fourth-level encrypted data according to the second split ratio and swap the order to obtain the fifth-level encrypted data, and Gamal algorithm is used to encrypt the five-level encrypted data to obtain encrypted pipe network data, and the encrypted pipe network data is fed back to the client in real time through CDN; since the data encrypted by the private key can only be decrypted by the public key, the public key is encrypted multiple times and can be verified for timeliness through the second timestamp later, and the MAC calculation is based on the hash function carrying the secret key, which is more secure than the ordinary hash calculation. If the corresponding encryption algorithm or data transformation rules are not known, the encrypted pipe network data cannot be cracked. At least 11 security measures have been taken (RSA algorithm, public and private keys, AES algorithm, ECC algorithm, second timestamp, MAC calculation, BLOWFISH algorithm, first segmentation ratio, IDEA algorithm, second segmentation ratio, ElGamal algorithm), which greatly improves the security of urban pipe network data transmission.

[0130] 5. Create a texture atlas, merge each texture map into the texture atlas, perform UV unfolding on each second pipe network model, select a texture map from the texture atlas through Mipmaps technology, and UV map the selected texture map to the corresponding second pipe network model to obtain the third pipe network model; by merging each texture map into the texture atlas, the number of times the texture map is switched during rendering can be effectively reduced, and memory usage can be reduced; map the texture map through Mipmaps technology, that is, use texture maps of different precisions based on the rendering distance to reduce the amount of data during rendering, thereby effectively improving the speed of loading urban pipe network data.

[0131] 6. Set the classification label of each third pipe network model by model shape, classify each third pipe network model in the buffer based on the classification label, start the parallel thread of GPU through Compute Shader technology, and perform batch and parallel rendering of each classified third pipe network model through instanced rendering technology and parallel threads. In the rendering process, LOD technology is combined to dynamically adjust the rendering details, light mapping is used to simulate lighting, MSAA technology is used to balance the jagged edges and performance in the rendering process, and the rendering results are loaded and cached through asynchronous loading technology; that is, through instanced rendering technology, batch rendering of the same type of third pipe network models is performed based on the classification label, without repeating the operation on the same model; parallel rendering is started through ComputeShader technology. Rendering is effectively accelerated; LOD technology is combined in the rendering process, that is, the details of the third pipe network model are dynamically adjusted based on the distance between the camera and the third pipe network model, and polygons with fewer edges are used to represent the third pipe network model in the distance to reduce the amount of data during rendering; light mapping is used to simulate lighting instead of dynamic lighting to reduce the amount of lighting calculations; MSAA technology is used to balance the jagged edges and performance in the rendering process; asynchronous loading technology is used to load and cache the rendering results, that is, the rendering results are loaded in the background to avoid blocking the main thread, and multiple measures are taken to optimize the loading process, thereby effectively improving the loading speed of urban pipe network data.

[0132] Although the specific implementation modes of the present invention are described above, those skilled in the art should understand that the specific implementation modes described are only illustrative and are not intended to limit the scope of the present invention. Equivalent modifications and changes made by those skilled in the art in accordance with the spirit of the present invention should be included in the scope of protection of the claims of the present invention.

Claims

1. A method for loading urban pipe network data, characterized in that: The steps include: Step S1, the client sends a request for obtaining urban pipe network data to the server through the browser, and the server verifies the received request for obtaining urban pipe network data and selects corresponding urban pipe network data based on the request for obtaining urban pipe network data; Step S2: the server compresses and encrypts the selected urban pipe network data to obtain encrypted pipe network data, and feeds the encrypted pipe network data back to the client through the CDN; Step S3: The client decrypts the received encrypted pipe network data to obtain urban pipe network data, and parses the urban pipe network data to obtain modeling data and texture maps in GLTF format; Step S4: The browser of the client creates a plurality of first pipe network models based on the modeling data through the WebGL protocol, and optimizes the geometric data of each of the first pipe network models to obtain a corresponding second pipe network model; Step S5: The browser maps the texture map to the corresponding second pipe network model through Mipmaps technology to obtain a third pipe network model; Step S6: The browser sets a rendering area based on the camera field of view, and preloads each third pipe network model in the rendering area into a continuous buffer of the GPU; Step S7, the browser performs real-time rendering of each of the third pipe network models in the buffer by using the LOD technology, simulates illumination by using the light map during the rendering process, loads and caches the rendering results by using the asynchronous loading technology, and then loads the urban pipe network data; The step S1 is specifically as follows: The client sends a request for obtaining urban pipe network data carrying ciphertext data, a first timestamp, and a hash value to the server through a browser based on the TLS protocol; the hash value is obtained by performing a hash calculation on the ciphertext data and the first timestamp, and the ciphertext data is obtained by encrypting the account password and the urban pipe network data number through the 3DES algorithm; The server parses the received urban pipe network data acquisition request to obtain ciphertext data, a first timestamp and a hash value, performs integrity verification through the hash value, performs timeliness verification through the first timestamp, and then decrypts the ciphertext data through the 3DES algorithm to obtain the account password and the urban pipe network data number, performs matching verification on the account password through a preset account management table, and selects the corresponding urban pipe network data from the database through the urban pipe network data number; The urban pipe network data carries modeling data and texture maps in GLTF format; The step S2 is specifically as follows: The server detects and references duplicate data in the selected urban pipe network data through Lempel-Ziv coding to compress the urban pipe network data to obtain compressed data; The server creates a pair of public keys and private keys based on the RSA algorithm, encrypts the public key through the AES algorithm to obtain a first key, encrypts the first key through the ECC algorithm to obtain a second key, obtains the current second timestamp, performs MAC calculation on the compressed data and the second timestamp to obtain a MAC value, encrypts the compressed data, the second timestamp and the MAC value through the private key to obtain primary encrypted data, encrypts the primary encrypted data and the second key through the BLOWFISH algorithm to obtain secondary encrypted data, divides the secondary encrypted data through a preset first division ratio and swaps the order to obtain third-level encrypted data, encrypts the third-level encrypted data through the IDEA algorithm to obtain fourth-level encrypted data, divides the fourth-level encrypted data through a preset second division ratio and swaps the order to obtain fifth-level encrypted data, encrypts the fifth-level encrypted data through the ElGamal algorithm to obtain encrypted pipe network data, and feeds the encrypted pipe network data back to the client in real time through the CDN.

2. A method for loading urban pipe network data according to claim 1, characterized in that: The step S3 is specifically as follows: The client receives the encrypted pipe network data in real time, decrypts the encrypted pipe network data through the ElGamal algorithm to obtain level-5 encrypted data, divides the level-5 encrypted data through the inverse of the preset second division ratio and swaps the order to obtain level-4 encrypted data, decrypts the level-4 encrypted data through the IDEA algorithm to obtain level-3 encrypted data, divides the level-3 encrypted data through the inverse of the preset first division ratio and swaps the order to obtain level-2 encrypted data, decrypts the level-2 encrypted data through the BLOWFISH algorithm to obtain level-1 encrypted data and a second key, decrypts the second key through the ECC algorithm to obtain a first key, decrypts the first key through the AES algorithm to obtain a public key, decrypts the level-1 encrypted data through the public key to obtain compressed data, a second timestamp and a MAC value, performs integrity verification through the MAC value, performs timeliness verification through the second timestamp, decompresses the compressed data through Lempel-Ziv coding to obtain urban pipe network data, and parses the urban pipe network data to obtain modeling data and texture maps in GLTF format.

3. A method for loading urban pipe network data according to claim 1, characterized in that: The step S4 is specifically as follows: The client's browser creates several first pipe network models based on the modeling data through the WebGL protocol, simplifies the vertices and faces inside each of the first pipe network models, and optimizes the geometric data of each of the first pipe network models to obtain the corresponding second pipe network models.

4. A method for loading urban pipe network data according to claim 1, characterized in that: The step S5 is specifically as follows: The browser creates a texture atlas, merges each of the texture maps into the texture atlas, UV unfolds each of the second pipe network models, selects a texture map from the texture atlas through Mipmaps technology, UV maps the selected texture map to the corresponding second pipe network model, and obtains a third pipe network model.

5. A method for loading urban pipe network data according to claim 1, characterized in that: The step S7 is specifically as follows: The browser sets a classification label for each of the third pipe network models based on the model shape, classifies each of the third pipe network models in the buffer based on the classification label, starts the parallel thread of the GPU through the Compute Shader technology, and renders the classified third pipe network models in batches and in parallel through the instantiation rendering technology and parallel threads. In the rendering process, the rendering details are dynamically adjusted in combination with the LOD technology, the lighting is simulated through the light map, the aliasing and performance in the rendering process are balanced through the MSAA technology, and the rendering results are loaded and cached through the asynchronous loading technology, thereby loading the urban pipe network data; The instantiation rendering technology performs batch rendering on the third pipe network models of the same type based on classification labels.

6. A system for loading urban pipe network data, characterized in that: Includes the following modules: The urban pipe network data acquisition request sending module is used for the client to send the urban pipe network data acquisition request to the server through the browser, and the server verifies the received urban pipe network data acquisition request and selects the corresponding urban pipe network data based on the urban pipe network data acquisition request; An encrypted pipe network data feedback module is used for the server to compress and encrypt the selected urban pipe network data to obtain encrypted pipe network data, and feed back the encrypted pipe network data to the client through CDN; The encrypted pipe network data decryption module is used for the client to decrypt the received encrypted pipe network data to obtain the urban pipe network data, and parse the urban pipe network data to obtain the modeling data and texture map in GLTF format; A geometry optimization module, used for the client browser to create a plurality of first pipe network models based on the modeling data through the WebGL protocol, and optimize the geometry data of each of the first pipe network models to obtain a corresponding second pipe network model; A texture map mapping module is used for the browser to map the texture map to the corresponding second pipe network model through Mipmaps technology to obtain a third pipe network model; A model preloading module, used for the browser to set a rendering area based on the camera field of view, and preload each third pipe network model in the rendering area into a continuous buffer of the GPU; A model rendering module is used for the browser to perform real-time rendering of each of the third pipe network models in the buffer zone through the LOD technology, simulate illumination through light mapping during the rendering process, load and cache the rendering results through the asynchronous loading technology, and then load the urban pipe network data; The urban pipe network data acquisition request sending module is specifically used for: The client sends a request for obtaining urban pipe network data carrying ciphertext data, a first timestamp, and a hash value to the server through a browser based on the TLS protocol; the hash value is obtained by performing a hash calculation on the ciphertext data and the first timestamp, and the ciphertext data is obtained by encrypting the account password and the urban pipe network data number through the 3DES algorithm; The server parses the received urban pipe network data acquisition request to obtain ciphertext data, a first timestamp and a hash value, performs integrity verification through the hash value, performs timeliness verification through the first timestamp, and then decrypts the ciphertext data through the 3DES algorithm to obtain the account password and the urban pipe network data number, performs matching verification on the account password through a preset account management table, and selects the corresponding urban pipe network data from the database through the urban pipe network data number; The urban pipe network data carries modeling data and texture maps in GLTF format; The encrypted pipe network data feedback module is specifically used for: The server detects and references duplicate data in the selected urban pipe network data through Lempel-Ziv coding to compress the urban pipe network data to obtain compressed data; The server creates a pair of public keys and private keys based on the RSA algorithm, encrypts the public key through the AES algorithm to obtain a first key, encrypts the first key through the ECC algorithm to obtain a second key, obtains the current second timestamp, performs MAC calculation on the compressed data and the second timestamp to obtain a MAC value, encrypts the compressed data, the second timestamp and the MAC value through the private key to obtain primary encrypted data, encrypts the primary encrypted data and the second key through the BLOWFISH algorithm to obtain secondary encrypted data, divides the secondary encrypted data through a preset first division ratio and swaps the order to obtain third-level encrypted data, encrypts the third-level encrypted data through the IDEA algorithm to obtain fourth-level encrypted data, divides the fourth-level encrypted data through a preset second division ratio and swaps the order to obtain fifth-level encrypted data, encrypts the fifth-level encrypted data through the ElGamal algorithm to obtain encrypted pipe network data, and feeds the encrypted pipe network data back to the client in real time through the CDN.

7. A system for loading urban pipe network data according to claim 6, characterized in that: The encrypted pipe network data decryption module is specifically used for: The client receives the encrypted pipe network data in real time, decrypts the encrypted pipe network data through the ElGamal algorithm to obtain level-5 encrypted data, divides the level-5 encrypted data through the inverse of the preset second division ratio and swaps the order to obtain level-4 encrypted data, decrypts the level-4 encrypted data through the IDEA algorithm to obtain level-3 encrypted data, divides the level-3 encrypted data through the inverse of the preset first division ratio and swaps the order to obtain level-2 encrypted data, decrypts the level-2 encrypted data through the BLOWFISH algorithm to obtain level-1 encrypted data and a second key, decrypts the second key through the ECC algorithm to obtain a first key, decrypts the first key through the AES algorithm to obtain a public key, decrypts the level-1 encrypted data through the public key to obtain compressed data, a second timestamp and a MAC value, performs integrity verification through the MAC value, performs timeliness verification through the second timestamp, decompresses the compressed data through Lempel-Ziv coding to obtain urban pipe network data, and parses the urban pipe network data to obtain modeling data and texture maps in GLTF format.

8. The urban pipe network data loading system according to claim 6, characterized in that: The geometry optimization module is specifically used for: The client's browser creates several first pipe network models based on the modeling data through the WebGL protocol, simplifies the vertices and faces inside each of the first pipe network models, and optimizes the geometric data of each of the first pipe network models to obtain the corresponding second pipe network models.

9. The urban pipe network data loading system according to claim 6, characterized in that: The texture map mapping module is specifically used for: The browser creates a texture atlas, merges each of the texture maps into the texture atlas, UV unfolds each of the second pipe network models, selects a texture map from the texture atlas through Mipmaps technology, UV maps the selected texture map to the corresponding second pipe network model, and obtains a third pipe network model.

10. The urban pipe network data loading system according to claim 6, characterized in that: The model rendering module is specifically used for: The browser sets a classification label for each of the third pipe network models based on the model shape, classifies each of the third pipe network models in the buffer based on the classification label, starts the parallel thread of the GPU through the Compute Shader technology, and renders the classified third pipe network models in batches and in parallel through the instantiation rendering technology and parallel threads. In the rendering process, the rendering details are dynamically adjusted in combination with the LOD technology, the lighting is simulated through the light map, the aliasing and performance in the rendering process are balanced through the MSAA technology, and the rendering results are loaded and cached through the asynchronous loading technology, thereby loading the urban pipe network data; The instantiation rendering technology performs batch rendering on the third pipe network models of the same type based on classification labels.