Satellite navigation enhancement service rendering method and device based on WebGL and storage medium
Through the WebGL-based satellite navigation enhanced service rendering method, the existing three-dimensional simulation system has been solved in terms of hardware resources and scalability, and the high real-time and high accuracy requirements for the full process simulation of low-orbit navigation enhanced services are achieved, reducing the hardware configuration pressure and development cycle.
Patent Information
- Application Number
- CN202510315868.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-18
- Publication Date
- 2025-04-18
- Estimated Expiration
- 2045-03-18
AI Technical Summary
In actual applications, existing three-dimensional simulation systems have problems such as hardware resource limitation, high maintenance costs and insufficient scalability, which is difficult to meet the requirements of high real-time and high accuracy of the full process simulation of low-rail navigation enhancement services.
Using WebGL-based satellite navigation enhanced service rendering method, the pixels are finally output to the screen canvas by initializing the digital earth, obtaining scene configuration information, analyzing scene objects and their connection relationships, assigning to low-frequency and high-frequency update queues, obtaining rendering strategies, generating shader parameters and rendering scene objects, and finally outputting pixels to the screen canvas.
It realizes complex satellite navigation business process display, three-dimensional data display and process simulation deduction, meeting the needs of high real-time and high accuracy of the full process simulation by low-orbit navigation, reducing the pressure on client hardware configuration, and shortening the project development cycle.
Smart Images

Figure CN119848968A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the technical field of satellite navigation simulation, and in particular to a WebGL-based satellite navigation enhanced service rendering method, terminal equipment, chip, computer-readable storage medium and computer program product. Background Art
[0002] At present, the commonly used 3D simulation system application deployment is generally to install the program directly on the local computer. This method exposes many problems in actual application, such as hardware resource limitations, high maintenance costs, and insufficient scalability. WebGL is a technology used to draw and render 3D graphics on web pages and allow users to interact with them. Because web pages have the advantages of cross-platform, convenient centralized data integration management, and reduced hardware costs, the flexibility and scalability of the system are greatly improved. Therefore, WebGL combined with geographic information technology can form a lightweight, cross-platform digital earth rendering engine that meets the basic requirements of geographic information systems, remote sensing systems, and global positioning systems.
[0003] Due to the large scale of low-orbit constellations, the wide variety of low-orbit navigation enhancement services, and the high degree of coupling between the services, during the full-process simulation of low-orbit navigation enhancement, high requirements are placed on the real-time and accuracy of the display of each service. Summary of the invention
[0004] In view of this, a WebGL-based satellite navigation enhanced service rendering method, terminal device, chip, computer-readable storage medium and computer program product are provided.
[0005] In a first aspect, a method for rendering a satellite navigation enhanced service based on WebGL is provided, comprising: Initialize Digital Earth; Get scene configuration information; Parsing scene objects based on the scene configuration information, wherein the connection relationship between the scene objects includes a first connection relationship and a second connection relationship; Putting the scene object associated with the first connection relationship into a first update queue, and putting the scene object associated with the second connection relationship into a second update queue; Obtaining a rendering strategy for the scene object; Obtaining shader parameters based on the rendering strategy; Based on the shader parameters, use a first shader to render the scene objects in the first update queue of the low-frequency update queue, and use a second shader to render the scene objects in the second update queue of the high-frequency update queue; Output pixels to the screen canvas.
[0006] In a second aspect, a terminal device is provided. The terminal device comprises: one or more processors; and one or more memories coupled to the one or more processors and storing instructions thereon. When the instructions are executed by the one or more processors individually or collectively, the terminal device executes the method described in the first aspect.
[0007] In a third aspect, a chip is provided, wherein the chip includes a circuit system configured to execute the method described in the first aspect.
[0008] In a fourth aspect, a non-transitory computer-readable storage medium storing machine-executable instructions is provided. When the machine-executable instructions are executed by one or more processors of a machine, the machine executes the method of the first aspect.
[0009] In a fifth aspect, a computer program product comprising machine executable instructions is provided. When the machine executable instructions are executed by one or more processors of a machine, the machine executes the method according to the first aspect.
[0010] It should be understood that the invention summary is not intended to identify the key or essential features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] The above and other objects, features and advantages of the present disclosure will become more apparent through a more detailed description of some embodiments of the present disclosure in the accompanying drawings, in which: Figure 1 A schematic diagram of a process of rendering a satellite navigation enhanced service based on WebGL according to some embodiments of the present disclosure is shown; Figure 2 A simplified block diagram of a terminal device suitable for implementing the exemplary embodiments of the present disclosure is shown. DETAILED DESCRIPTION
[0012] The principle of the present disclosure will now be described with reference to some embodiments. It should be understood that the description of these embodiments is only for illustrative purposes, and helps those skilled in the art to understand and implement the present disclosure, without any limitation to the scope of the present disclosure. The disclosure described herein can be implemented in a manner different from that described below.
[0013] In the following description and claims, unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure belongs.
[0014] References in this disclosure to "one embodiment," "an embodiment," "an exemplary embodiment," etc. indicate that the described embodiment may include a particular feature, structure, or characteristic, but not every embodiment necessarily includes the particular feature, structure, or characteristic. Moreover, such phrases do not necessarily refer to the same embodiment. In addition, when a particular feature, structure, or characteristic is described in conjunction with an exemplary embodiment, whether or not explicitly described, those skilled in the art will recognize that such feature, structure, or characteristic affects incorporation into other embodiments.
[0015] It should be understood that although the terms "first" and "second" etc. may be used to describe various elements herein, these elements should not be limited by these terms. These terms are only used to distinguish one element from another element. For example, without departing from the scope of the exemplary embodiments, a first element may be referred to as a second element, and similarly, a second element may be referred to as a first element. The term "and / or" as used herein includes any and all combinations of one or more of the listed terms.
[0016] The terms used herein are only for describing specific embodiments, rather than for limiting exemplary embodiments. The singular forms "one", "an", and "the" used herein also include plural forms, unless the context clearly indicates otherwise. "A group of elements" or "element set" used herein is intended to include one or more elements. It should also be understood that the terms "include", "comprise", "have", "have", "include" and / or "include", when used herein, specify the presence of the features, elements and / or parts, etc., but do not exclude the presence or addition of one or more other features, elements, parts and / or combinations thereof.
[0017] As used herein, the term "circuitry" may refer to one or more or all of the following: (a) Hardware circuit implementation only (e.g., implementation only in analog and / or digital circuits) (b) a combination of hardware circuitry and software, such as (where applicable): (i) a combination of analog and / or digital hardware circuits and software / firmware; and (ii) any part of a hardware processor (including a digital signal processor) with software, software and memory that work together to enable a device such as a mobile phone or server to perform various functions, and (c) A hardware circuit and / or processor, such as a microprocessor or portion of a microprocessor, that requires software (eg, firmware) to operate, but where software is not required for operation, the software may not be present.
[0018] This definition of circuitry applies to all uses of this term in this application, including in any claims. As another example, as used in this application, the term circuitry also includes an implementation of merely a hardware circuit or processor (or multiple processors) or a portion of a hardware circuit or processor and its (or their) accompanying software and / or firmware. The term circuitry also includes, for example, if applicable to the particular claim element, a baseband integrated circuit or processor integrated circuit for a mobile device, or a similar integrated circuit in a server, cellular network device, or other computing network device.
[0019] The term "communication network" refers to a network that complies with any appropriate communication standard, such as Long Term Evolution (LTE), LTE-Advanced (LTE-A), Wideband Code Division Multiple Access (WCDMA), High Speed Packet Access (HSPA), Narrowband Internet of Things (NB-IoT), New Radio (NR), Non-Terrestrial Network (NTN), etc. In addition, the communication between the terminal equipment and the network equipment in the communication network can be performed according to any appropriate generation of communication protocols, including but not limited to the first generation (1G), second generation (2G), 2.5G, 2.75G, third generation (3G), fourth generation (4G), 4.5G, fifth generation (5G), future sixth generation (6G) communication protocols, and / or any other protocols currently known or to be developed in the future. The embodiments of the present disclosure can be applied in satellite communication systems. In view of the rapid development in communication, there will certainly be future types of communication technologies and systems, and the present disclosure can be implemented with these technologies and systems. It should not be considered that the scope of the present disclosure is limited to the aforementioned system.
[0020] The term "terminal device" refers to any terminal device capable of wireless communication. As an example and not a limitation, a terminal device may also be referred to as a communication device, a user equipment (UE), a user station (SS), a portable user station, a mobile station (MS), or an access terminal (AT). The terminal device may include, but is not limited to, a mobile phone, a cellular phone, a smart phone, a voice over IP (VoIP) phone, a wireless local loop phone, a tablet computer, a wearable terminal device, a personal digital assistant (PDA), a portable computer, a desktop computer, an image capture terminal device such as a digital camera, a game terminal device, a music storage and playback device, a vehicle-mounted wireless terminal device, a wireless endpoint, a mobile station, a notebook embedded device (LEE), a laptop mounted device (LME), a USB dongle, a smart device, a wireless user equipment (CPE), an Internet of Things (IoT) device, a watch or other wearable device, a head mounted display (HMD), a vehicle, a drone, medical equipment and applications (e.g., remote surgery), industrial equipment and applications (e.g., robots and / or other wireless devices operating in the context of an industrial and / or automated processing chain), consumer electronic devices, relay nodes, devices operating on commercial and / or industrial wireless networks, etc. The mobile terminal (MT) part of the IAB node can perform the functions of a "terminal device" and can therefore operate as a terminal device. In the following description, the terms "terminal device", "communication device", "terminal", "user equipment" and "UE" can be used interchangeably.
[0021] Although the functions described herein may be performed in fixed and / or wireless network nodes in various exemplary embodiments, in other exemplary embodiments, the functions may be implemented in a user equipment device (such as a cellular phone, or a tablet computer, or a laptop computer, or a desktop computer, or a mobile Internet of Things device, or a fixed Internet of Things device). For example, the user equipment device may appropriately have the corresponding capabilities described in relation to fixed and / or wireless network nodes. The user equipment device may be a user device and / or a control device, such as a chipset or a processor, which is configured to control the user device when the user device is installed therein. Examples of these functions include boot server functions and / or home user servers, which may be implemented in a user equipment device by providing the user equipment device with software configured to cause the user equipment device to execute from the perspective of these functions / nodes.
[0022] The present disclosure combines WebGL rendering technology with the background digital simulation engine of satellite navigation enhanced multi-service, and can realize complex satellite navigation business process display, three-dimensional data display, process simulation and deduction and other complex functions while providing all-day, all-weather, high-precision positioning, navigation, and timing (PNT) services to various users on land, sea, air, and space around the world. It meets the multi-dimensional and high-complexity network display requirements of multiple elements such as space segment, ground segment, environmental segment, user segment of satellite navigation system and tens of thousands of links such as inter-satellite, satellite-to-ground, and ground. Among them, satellites can include low-orbit satellites (LEO), medium-orbit satellites (MEO) and / or geosynchronous orbit satellites (GEO).
[0023] The following will refer to Figure 1 The principles and implementations of the present disclosure are described in detail. Figure 1 As shown, the WebGL-based satellite navigation enhanced service rendering method 100 includes the following steps: Step S101: Initialize the Digital Earth.
[0024] Initialize the digital earth, build and load the default scenes, basic functions and basic special effects in the satellite navigation enhanced simulation system, such as generating sky and earth models, loading digital earth tile layers, text layers, terrain layers, etc., as well as basic functions and basic special effects such as distance measurement, area measurement, day and night switching, and tile layer switching.
[0025] Step S102: Obtain scene configuration information.
[0026] The user can configure the scene information through the front-end display interface. After the front-end display interface obtains the scene configuration information input by the user, it is transmitted to the back-end digital simulation engine through the communication protocol.
[0027] Step S103: parse the scene object based on the scene configuration information.
[0028] In some embodiments, parsing scene objects based on scene configuration information includes: converting the data format of the scene configuration information through a background digital simulation engine and transmitting it to a front-end display interface; parsing the scene objects through the front-end display interface, and arranging rendering data based on a WebGL interface. Exemplarily, the background digital simulation engine performs calculations based on the incoming scene configuration information, such as calculating based on factors such as the incoming scene start time, end time, time step, and scene object, and converting the data format, such as converting the real-time data results into a serialized parameter format to improve transmission and parsing efficiency, and converting the configurable parameters into a json format for easy modification.
[0029] The backend digital simulation engine then transmits the converted data to the frontend display interface through the communication protocol. The frontend display interface parses the data and organizes the rendering data based on the WebGL interface. For example, the trajectory information of GNSS and low-orbit satellites; whether the scene object carries a beam, the attitude angle of the beam, the beam angle, and color information; the location information of the ground segment system; the user's location information, user type, user 3D model information, the interaction relationship between user objects, the inheritance relationship, etc. For frequently updated data and real-time interaction, the backend push Socket method can be used to perform long-connection communication status, such as the line connection relationship between objects, the real-time location point of the object, the real-time trajectory, etc. For the front-end logic to provide the backend calculation parameters, the Ajax short connection can be used to improve the transmission efficiency, such as editing the trajectory sampling point, editing the object position coordinates, modifying the object attitude angle, and other operations.
[0030] In some embodiments, the backend digital simulation engine transmits data to the front-end display interface in a manner that includes: splitting the data file corresponding to the target scene into multiple segments and transmitting them to the front-end display interface, wherein the target scene is a scene in which the number of scene objects is greater than a preset number and the step length reaches a preset step length (such as milliseconds, etc.), thereby balancing performance indicators such as loading speed and transmission efficiency.
[0031] Step S104: Put the scene objects associated with the first connection relationship into a first update queue, and put the scene objects associated with the second connection relationship into a second update queue.
[0032] The connection relationship between the scene objects includes a first connection relationship and a second connection relationship. The scene objects associated with the first connection relationship are placed in a first update queue, and the scene objects associated with the second connection relationship are placed in a second update queue.
[0033] In an exemplary embodiment, the first connection relationship is a long-term connection relationship, and the second connection relationship is a short-term connection relationship. If it is a long-term connection relationship, its update cycle is long and the frequency is low. The scene objects associated with the long-term connection relationship can be placed in the first update queue (such as a low-frequency update queue), and the rendering method of static objects is used to only update the object properties without destroying them, thereby reducing the memory and graphics card occupancy rate that needs to be called. If it is a short-term connection relationship, its short-term connection requires a higher (such as millisecond) interaction frequency. The scene objects associated with the short-term connection relationship can be placed in the second update queue (such as a high-frequency update queue), and a per-frame refresh strategy is used, such as using a batch processing method to destroy and create new objects, to improve timeliness, improve display smoothness, and avoid frame skipping and other problems.
[0034] Step S105: Obtain the rendering strategy of the scene object.
[0035] The rendering strategy includes the use of materials, the determination of connection types, the determination of beam object types, the rendering order, whether rendering is required, etc. In some embodiments, obtaining the rendering strategy of the scene object includes: selecting the first material to render the scene objects in the first update queue, and selecting the second material to render the scene objects in the second update queue. Among them, the first material can be a material that does not need to update the properties, and the second material can be a material that can be modified and reused repeatedly, thereby realizing large-scale data rendering. Styles with high-frequency changes can be calculated using a single material; objects with repeated styles can be processed using batched materials to reduce memory and graphics card usage. According to the business function, different style materials such as arrow lines, streamer lines, and dotted lines are used.
[0036] In some embodiments, obtaining a rendering strategy for a scene object includes: determining whether the scene object is a spatial connection object or a ground connection object; using different rendering strategies for spatial connection objects and ground connection objects. Exemplarily, surface connection objects and spatial connection objects (air-to-air, ground-to-air, and ground surface) are distinguished, and assigned to spatial straight line rendering and ground rendering considering terrain and earth curvature. For spatial connection objects, only the Cartesian coordinates of two points in three-dimensional space need to be directly connected. For surface objects, such as user trajectories, the influence of terrain data needs to be considered, and the original point position needs to be based on the height of terrain sampling to avoid penetrating the terrain and objects sinking into the ground. For ground connection objects, a real-time coordinate update method is used to convert the distance of the position point from the camera according to the camera coordinates in the three-dimensional space, which is similar to the hierarchical change of the earth tile map with the distance from the camera to the ground. When the level is high, the sampling points of the surface line segment increase, and when the level is low, it decreases accordingly. Thus, the smoothness of the drawing can be ensured and the performance waste can be reduced.
[0037] In some embodiments, obtaining a rendering strategy for a scene object includes: determining a beam object type based on scene configuration information, wherein the beam object type includes a single beam and a cellular beam. A single beam includes a cone beam, a saddle beam, etc. A cellular beam is composed of N beams and is a beam cluster that can perform beam scanning, object merging, vertex merging, etc. Internal objects can be cloned, and materials and vertices can be merged, thereby reducing unnecessary resource waste.
[0038] In some embodiments, obtaining a rendering strategy for a scene object includes: determining a rendering order of the scene objects based on the transparency of the scene objects, rendering non-transparent scene objects first, and then rendering transparent scene objects. Exemplarily, the rendering order of objects in a three-dimensional scene is distinguished according to transparency, rendering non-transparent objects first, and then rendering transparent objects. Non-transparent objects shield other objects, and transparent objects perform color mixing according to transparency.
[0039] In some embodiments, obtaining a rendering strategy for a scene object includes: determining whether the scene object is on the back of the earth in the current viewport; removing the scene object on the back of the earth from a rendering queue, wherein the rendering queue includes a first update queue and a second update queue. Exemplarily, whether a scene object is on the back of the earth can be determined based on the current three-dimensional viewport coordinates. In addition, if a scene object is set to be hidden, it is also removed from the rendering queue, temporarily stored in memory, and not rendered. When terrain is involved, it is also necessary to consider whether the terrain obscures the object, such as icons and text are not obscured by default, and three-dimensional models are obscured by terrain.
[0040] In some embodiments, obtaining a rendering strategy for a scene object includes: determining whether to take optimized rendering measures based on the number of scene objects and the number of satellite trajectories. Optimized rendering measures include Lod optimization, merged object group rendering, object cloning, optimized anti-aliasing, etc. For example, when supporting large data object rendering, objects are merged and grouped. Points, icons, text, and line segment trajectories are merged into a collection class. The three-dimensional model uses vertex and material cloning methods. Lod optimization (based on the distance between the scene camera and the object) switches between using a refined model and a simplified model.
[0041] Step S106: Obtain shader parameters based on the rendering strategy.
[0042] Arrange the rendering strategies of all scene objects, convert them into shader parameters, and pass them to the WebGL shader.
[0043] Step S107: Based on the shader parameters, use the first shader to render the scene objects in the first update queue, and use the second shader to render the scene objects in the second update queue.
[0044] WebGL's shaders include vertex shaders and fragment shaders. The vertex shader contains the vertex color, vertex coordinates, normals, etc. of the model. The fragment shader contains the UV coordinates of the model for color assignment. When lighting is required, such as when the object needs to display a three-dimensional model, you can add light effects in the fragment shader, calculate the reflection and refraction of light, and make the model's material more realistic.
[0045] The shader converts the 3D coordinates into screen coordinates to draw the space link and the ground link. Draw links of different colors and styles according to the business type; generate different vertex information according to the geometric shape, and render points, lines, faces, cones, polyhedrons, etc. In some embodiments, the physical bounding box of each object can also be generated for visibility analysis, object culling and other operations.
[0046] Step S108: output pixels to the screen canvas.
[0047] In some embodiments, it also includes clearing the pixels corresponding to the scene objects in the second update queue in the screen canvas of the current frame. After step S108, the screen canvas is cleared before displaying the next frame. According to factors such as three-dimensional viewing angle information, event calls, and business logic, spatial matrix, projection matrix and other processing are performed, and the screen canvas pixel map of the current frame number is redrawn in the next frame to improve performance. If the hardware performance is not high, the refresh frequency can be appropriately reduced to balance the display and system efficiency. Exemplarily, based on the event-associated object, it is determined whether to delete the object or modify the object attributes within the frame number; based on the configured scene configuration information, such as SPT, APT and other services, the use category of geometric bodies such as beams and links is determined, and redrawing is performed within a certain number of frames.
[0048] Aiming at the demand for rendering satellites, ground stations, communication beams, and inter-satellite and satellite-to-ground communication links for communication and navigation services in satellite navigation enhancement simulation systems, the present invention uses WebGL technology to perform two-dimensional, three-dimensional, and digital displays of various types of service processes such as the global navigation satellite system (GNSS) constellation, satellite navigation system, ground system, and users in the scene. Through WebGL rendering technology, combined with the satellite navigation enhancement full business process, an intuitive two-dimensional, three-dimensional, and digital visualization display is provided, which is conducive to an intuitive, fast, and accurate understanding of the satellite navigation system, improves the dimension and accuracy of system evaluation, reduces the pressure on client hardware configuration, and shortens the project development cycle.
[0049] The present disclosure also provides a chip including a circuit system configured to execute a reference Figure 1 Any process that is public in question.
[0050] Figure 2 2 is a simplified block diagram of a terminal device 200 suitable for implementing an embodiment of the present disclosure. As shown in the figure, the terminal device 200 includes one or more processors 210, one or more memories 220 coupled to the processors 210, and one or more communication modules 240 coupled to the processors 210.
[0051] The communication module 240 is used for two-way communication. The communication module 240 has at least one antenna to facilitate communication. The communication interface may represent any interface necessary for communicating with other network elements.
[0052] Processor 210 may be of any type suitable for the local technology network, and may include, as non-limiting examples, one or more of: a general purpose computer, a special purpose computer, a microprocessor, a digital signal processor (DSP), and a processor based on a multi-core processor architecture. Terminal device 200 may have multiple processors, such as application specific integrated circuit chips, which are driven in time to a clock that synchronizes the main processor.
[0053] The memory 220 may include one or more non-volatile memories and one or more volatile memories. Examples of non-volatile memories include, but are not limited to, read-only memory (ROM) 224, electrically programmable read-only memory (EPROM), flash memory, hard disks, compact disks (CDs), digital video disks (DVDs), and other magnetic and / or optical memories. Examples of volatile memories include, but are not limited to, random access memory (RAM) 222 and other volatile memories that do not persist during a power outage.
[0054] The computer program 230 includes computer executable instructions that are executed by the associated processor 210. The program 230 may be stored in the ROM 224. The processor 210 may perform any suitable actions and processes by loading the program 230 into the RAM 222.
[0055] The embodiment of the present disclosure can be implemented by the program 230, so that the terminal device 200 can execute the reference Figure 1 Any process of the disclosure discussed. The embodiments of the present disclosure may also be implemented by hardware or by a combination of software and hardware.
[0056] In some embodiments, the program 230 may be tangibly contained in a computer-readable medium, which may be contained in the terminal device 200 (e.g., the memory 220) or other storage devices accessible to the terminal device 200. The terminal device 200 may load the program 230 from the computer-readable medium to the RAM 222 for execution. The computer-readable medium may include any type of tangible non-volatile memory, such as ROM, EPROM, flash memory, hard disk, CD, DVD, etc. The program 230 is stored on the computer-readable medium.
[0057] Generally, various embodiments of the present disclosure may be implemented in hardware or dedicated circuits, software, logic, or any combination thereof. Certain aspects may be implemented in hardware, while other aspects may be implemented in firmware or software, which may be executed by a controller, microprocessor, or other computing device. Although various aspects of the embodiments of the present disclosure are shown and described as block diagrams, flow charts, or using some other graphical representations, it should be understood that, as non-limiting examples, the blocks, devices, systems, techniques, or methods described herein may be implemented in hardware, software, firmware, dedicated circuits or logic, general hardware or controllers or other computing devices, or some combination thereof.
[0058] The present disclosure also provides at least one computer program product tangibly stored on a non-transitory computer readable storage medium. The computer program product includes computer executable instructions, such as instructions included in program modules, which are executed in a device on a target real or virtual processor to perform the above-mentioned reference Figure 1 The method 100 is described. Typically, program modules include routines, programs, libraries, objects, classes, components, data structures, etc. that perform specific tasks or implement specific abstract data types. In various embodiments, the functions of program modules can be combined or separated between program modules as needed. Machine executable instructions for program modules can be executed in local or distributed devices. In distributed devices, program modules can be located in local and remote storage media.
[0059] The program code for executing the disclosed method can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer or other programmable data processing equipment so that when the program code is executed by the processor or controller, the function / operation specified in the flow chart and / or block diagram is realized. The program code can be executed completely on the machine as an independent software package, partially on the machine, partially on the machine, partially on a remote machine, partially on a remote machine, or all on a remote machine or server.
[0060] In the context of the present disclosure, computer program codes or related data may be carried by any appropriate carrier to enable a device, apparatus or processor to perform various processes and operations as described above. Examples of carriers include signals, computer readable media, etc.
[0061] The computer readable medium may be a computer readable signal medium or a computer readable storage medium. The computer readable medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared or semiconductor systems, devices or apparatuses, or any suitable combination of the foregoing. More specific examples of computer readable storage media include an electrical connection having one or more conductors, a portable computer floppy disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0062] In addition, although the operations are described in a specific order, this should not be understood as requiring the specific order or sequence shown to be performed, or performing all the operations shown, to obtain the desired result. In some cases, multitasking and parallel processing may be advantageous. Similarly, although several specific implementation details are included in the above discussion, these details should not be interpreted as limitations on the scope of the present disclosure, but can be interpreted as descriptions of features specific to a particular embodiment. Certain features described in the context of a separate embodiment may also be implemented in combination in a single embodiment. On the contrary, the various features described in the context of a single embodiment may also be implemented in multiple embodiments individually or in any suitable sub-combination.
[0063] Although the disclosure has been described in language specific to structural features and / or methodological acts, it should be understood that the disclosure defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.
[0064] It should be fully understood that the use of personally identifiable information should be in accordance with privacy policies and practices generally recognized to meet or exceed industry or requirements for maintaining user privacy. In particular, personally identifiable information data should be managed and processed to minimize the risk of unintentional or unauthorized access or use, and the nature of authorized use should be clearly indicated to users.
Claims
1. A satellite navigation enhanced service rendering method based on WebGL, characterized in that: include: Initialize Digital Earth; Get scene configuration information; Parsing scene objects based on the scene configuration information, wherein the connection relationship between the scene objects includes a first connection relationship and a second connection relationship; Putting the scene object associated with the first connection relationship into a first update queue, and putting the scene object associated with the second connection relationship into a second update queue; Obtaining a rendering strategy for the scene object; Obtaining shader parameters based on the rendering strategy; Based on the shader parameters, rendering the scene objects in the first update queue using a first shader, and rendering the scene objects in the second update queue using a second shader; Output pixels to the screen canvas.
2. The method according to claim 1, characterized in that Also includes: Clear the pixels corresponding to the scene objects in the second update queue in the screen canvas of the current frame.
3. The method according to claim 1, characterized in that The obtaining of the rendering strategy of the scene object comprises: A first material is selected to render the scene objects in the first update queue, and a second material is selected to render the scene objects in the second update queue.
4. The method according to any one of claims 1 to 3, characterized in that The obtaining of the rendering strategy of the scene object comprises: Based on the number of scene objects and the number of satellite tracks, it is determined whether to take optimization rendering measures.
5. The method according to any one of claims 1 to 3, characterized in that The obtaining of the rendering strategy of the scene object comprises: Determine whether the scene object is on the back side of the earth in the current viewport; The scene objects on the back side of the earth are removed from a rendering queue, where the rendering queue includes the first update queue and the second update queue.
6. The method according to any one of claims 1 to 3, characterized in that The obtaining of the rendering strategy of the scene object comprises: The beam object type is determined based on the scene configuration information, and the beam object type includes a single beam and a cellular beam.
7. The method according to any one of claims 1 to 3, characterized in that The obtaining of the rendering strategy of the scene object comprises: Determining whether the scene object is a spatially connected object or a ground-connected object; Different rendering strategies are used for the spatially connected objects and the ground-connected objects.
8. The method according to any one of claims 1 to 3, characterized in that The obtaining of the rendering strategy of the scene object comprises: The rendering order of the scene objects is determined based on the transparency of the scene objects, and the non-transparent scene objects are rendered first, and then the transparent scene objects are rendered.
9. The method according to any one of claims 1 to 3, characterized in that: The parsing of the scene object based on the scene configuration information comprises: The scene configuration information is converted into a data format through a background digital simulation engine and transmitted to a front-end display interface; The scene objects are parsed through the front-end display interface, and the rendering data is sorted based on the WebGL interface.
10. The method according to claim 9, characterized in that The methods for the backend digital simulation engine to transmit data to the frontend display interface include: The data file corresponding to the target scene is split into multiple segments and transmitted to the front-end display interface. The target scene is a scene in which the number of scene objects is greater than a preset number and the step length reaches a preset step length.
11. A terminal device, characterized in that: include: one or more processors; as well as One or more memories coupled to the one or more processors and storing instructions thereon, which, when the instructions are executed individually or collectively by the one or more processors, cause the terminal device to execute the method according to any one of claims 1 to 10.
12. A chip, characterized in that: The method comprises a circuit system configured to perform the method of any one of claims 1-10.
13. A non-transitory computer-readable storage medium storing machine-executable instructions, characterized in that: When the machine executable instructions are executed by one or more processors of a machine, the machine is caused to perform the method of any one of claims 1-10.
14. A computer program product comprising machine executable instructions, characterized in that When the machine executable instructions are executed by one or more processors of a machine, the machine is caused to perform the method of any one of claims 1-10.
Citation Information
Patent Citations
Method for creating three-dimensional scene
CN115311416A
Image rendering method and device, equipment and storage medium
CN115423919A
Map scene rendering method and device and computer readable storage medium
CN117555667A
Image rendering method and device based on GPU computing shader and readable medium
CN118115651A
Validation of Complex Perceptional Systems with Efficient Simulation of Optical Variants
US20230281954A1
Cited By
GEO satellite sign intelligent layout method based on cesium engine
CN120124825A