Map data query method and system and map data processing method

By using off-screen rendering in map data query to obtain target pixel values ​​and convert them into unique identifiers, quickly query map data, solving the problem of low efficiency in map data query in the prior art, improving performance and user experience.

CN119513214APending Publication Date: 2025-02-25HANGZHOU ALICLOUD FEITIAN INFORMATION TECH CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202311084339.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-08-25
Publication Date
2025-02-25

AI Technical Summary

Technical Problem

The existing technology is slow in rendering massive map data, which may even cause browser rendering to crash, which cannot effectively solve the problem of low efficiency in map data query.

Method used

By responding to the data query instruction, the target pixel value of the specified query position on the off-screen rendered map is obtained and converted into a unique identifier of the query object, and then the corresponding query object data is quickly queried.

Benefits of technology

Through the conversion of pixel values ​​and unique identifiers, this method can quickly locate the query object data of the specified query location, improving the performance and efficiency of map data query and data interaction, and improving the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119513214A_ABST
    Figure CN119513214A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a map data query method and system and a map data processing method.The map data query method comprises the steps that in response to a data query instruction, a target pixel value of a specified query position on a map subjected to off-screen rendering is obtained according to the data query instruction, the target pixel value is obtained by converting a unique identifier of a query object at the specified query position in advance; converting the target pixel value into a unique identifier of the query object; and querying query object data corresponding to the unique identifier according to the unique identifier of the query object. According to the method, the pixel value is converted into the unique identifier of the query object, the query object data corresponding to the unique identifier is quickly queried according to the unique identifier, and the query object data of the query position is quickly positioned by utilizing the conversion of the pixel value and the identifier, so that the performance and efficiency of map data query and data interaction are improved, the user experience is improved, and the user experience is improved. And the availability and competitiveness of map application are enhanced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present specification relate to the field of computer technology, and in particular to a map data query method. Background Art

[0002] With the development of Internet technology, browsers have the ability to quickly render large-scale map data. However, with the advent of the big data era, the pressure of rendering massive map data is increasing. This is because in the rendering of map data, the map engine needs to traverse all layers in the map, then traverse all tiles in the layer, and finally traverse all elements in the tile to query the map data of the interactive location, which ultimately leads to slow map response speed and even browser rendering crashes.

[0003] In view of this, there is an urgent need for a map data query method to improve the map data query efficiency. Summary of the invention

[0004] In view of this, an embodiment of this specification provides a map data query method. One or more embodiments of this specification also relate to a map data processing method, a map data query system, a computing device, a computer-readable storage medium and a computer program to solve the technical defects existing in the prior art.

[0005] According to a first aspect of an embodiment of the present specification, a map data query method is provided, comprising: responding to a data query instruction, obtaining a target pixel value of a specified query position on an off-screen rendered map according to the data query instruction, the target pixel value being pre-converted based on a unique identifier of a query object at the specified query position; converting the target pixel value into a unique identifier of the query object; and querying query object data corresponding to the unique identifier according to the unique identifier of the query object.

[0006] According to a second aspect of an embodiment of the present specification, a map data query system is provided, comprising: the server, for providing map data to the client; the client, for receiving a data query instruction, applying the map data query method, and querying corresponding query object data from the map data.

[0007] According to a third aspect of an embodiment of the present specification, a map data processing method is provided, including: determining an object identifier of a target object in a map; converting the object identifier of the target object in the map into a target color; and determining a target pixel value of the target object in the map based on the target color.

[0008] According to a fourth aspect of an embodiment of the present specification, a computing device is provided, comprising: a memory and a processor; the memory is used to store computer executable instructions, and the processor is used to execute the computer executable instructions, which, when executed by the processor, implement the steps of the above-mentioned map data query method, or implement the steps of the above-mentioned map data processing method.

[0009] According to a fifth aspect of the embodiments of this specification, a computer-readable storage medium is provided, which stores computer-executable instructions, which, when executed by a processor, implement the steps of the above-mentioned map data query method or the steps of the above-mentioned map data processing method.

[0010] According to a sixth aspect of the embodiments of this specification, a computer program is provided, wherein when the computer program is executed in a computer, the computer is caused to execute the steps of the above-mentioned map data query method, or implement the steps of the above-mentioned map data processing method.

[0011] A map data query method provided by an embodiment of the present specification obtains a target pixel value of a specified query position on an off-screen rendered map in response to a data query instruction according to the data query instruction, wherein the target pixel value is pre-converted based on a unique identifier of a query object at the specified query position; converts the target pixel value into the unique identifier of the query object; and queries the query object data corresponding to the unique identifier according to the unique identifier of the query object. It can be seen that this method utilizes the conversion between the pixel value of the specified query position and the corresponding query object unique identifier, and can quickly locate the query object data of the specified query position, thereby improving the performance and efficiency of map data query and data interaction, improving the user experience, and enhancing the usability and competitiveness of map applications. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] Figure 1 This is a schematic diagram of a scenario of a map data query system provided by an embodiment of this specification;

[0013] Figure 2 is a flow chart of a map data query method provided by an embodiment of this specification;

[0014] Figure 3 is a process flow chart of a map data query method provided by an embodiment of this specification;

[0015] Figure 4 This is a schematic diagram of an interface operation of a map data query method provided by an embodiment of this specification;

[0016] Figure 5 It is a schematic diagram of the composition of layers, tiles, and elements provided by an embodiment of this specification;

[0017] Figure 6 is a flow chart of a map data processing method provided by an embodiment of this specification;

[0018] Figure 7 is a system block diagram of a map data query system provided by an embodiment of this specification;

[0019] Figure 8 It is a structural block diagram of a computing device provided by an embodiment of this specification. DETAILED DESCRIPTION

[0020] Many specific details are described in the following description to facilitate a full understanding of this specification. However, this specification can be implemented in many other ways than those described herein, and those skilled in the art can make similar generalizations without violating the connotation of this specification, so this specification is not limited to the specific implementation disclosed below.

[0021] The terms used in one or more embodiments of this specification are only for the purpose of describing specific embodiments, and are not intended to limit one or more embodiments of this specification. The singular forms of "a", "said" and "the" used in one or more embodiments of this specification and the appended claims are also intended to include plural forms, unless the context clearly indicates other meanings. It should also be understood that the term "and / or" used in one or more embodiments of this specification refers to and includes any or all possible combinations of one or more associated listed items.

[0022] It should be understood that although the terms first, second, etc. may be used to describe various information in one or more embodiments of this specification, this information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of one or more embodiments of this specification, the first may also be referred to as the second, and similarly, the second may also be referred to as the first. Depending on the context, the word "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining".

[0023] In addition, it should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in one or more embodiments of this specification are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and provide corresponding operation entrances for users to choose to authorize or refuse.

[0024] First, the terms involved in one or more embodiments of this specification are explained.

[0025] GPU: Graphics Processing Unit, a microprocessor used to perform image and graphics related calculations on personal computers, workstations, game consoles and some mobile devices (such as tablets, smartphones, etc.).

[0026] Vector tiles: A technology that presents map data in the form of vector tiles. Unlike traditional raster tiles, vector tiles contain various vector data of the map, such as lines, surfaces, points, etc., which can perform more detailed map rendering, interaction and analysis.

[0027] Elements: Elements are various things represented on the map, including terrain, water systems, buildings, roads, railways, administrative divisions, climate, etc. These elements are the basic elements that make up the map.

[0028] WebGL: Web Graphics Library is a 3D drawing protocol based on the OpenGLES2.0 (Open Graphics Library) web standard for rendering 3D graphics in a browser. WebGL provides developers with a high-performance, scalable visualization rendering technology that can create realistic 3D graphics, such as games, virtual reality, and data visualization.

[0029] With the development of Internet technology, browsers have the ability to quickly render large-scale graphic data and provide high-performance rendering capabilities. Therefore, in recent years, map engines at home and abroad have gradually updated to WebGL rendering, and accordingly, the rendering scale has also risen to a higher level. However, with the advent of the big data era, the pressure on rendering massive data is also increasing. Similarly, users' demand for processing massive data is also increasing. At present, in map data rendering, the map engine needs to traverse all layers in the map, then traverse all tiles in the layer, and finally traverse all elements in the tile to query the map data of the interactive location, resulting in slow map response and even browser rendering crashes.

[0030] In response to the current problem of slow map response speed, the method provided in the embodiments of this specification utilizes the conversion between the pixel value of the specified query location on the map and the corresponding query object unique identifier, which can quickly locate the query object data of the specified query location, thereby improving the performance and efficiency of map data query and data interaction.

[0031] In this specification, a map data query method is provided. This specification also relates to a map data query system, a computing device, and a computer-readable storage medium, which are described in detail one by one in the following embodiments.

[0032] See also Figure 1 , Figure 1 FIG. 1 is a schematic diagram showing a scenario of a map data query system provided according to an embodiment of the present specification. Figure 1 As shown, the map data query system includes: a client and a server.

[0033] The client is used to obtain map data from the server, convert the unique identifier of each query object in the map data to obtain the pixel value of the query object in the map interface, respond to the data query instruction, obtain the target pixel value of the specified query position on the map interface according to the data query instruction, convert the target pixel value into the unique identifier of the query object, and query the query object data corresponding to the unique identifier according to the unique identifier of the query object.

[0034] The server is used to provide map data to the client.

[0035] Specifically, the client receives the user's data query instruction, and uses the map data provided by the server to the client to query the map data. Among them, the user can be understood as a user who browses the map through a browser. The data query instruction can be understood as a query request for one or more query objects at one or more interactive locations in the map interface. The data query instruction may carry the coordinate information of the specified query location on the map interface. The client can be understood as a browser, APP (Application), or web application such as H5 (HyperText Markup Language5, Hypertext Markup Language Version 5) application, or light application (also known as applet, a lightweight application) or cloud application, etc. The server can be understood as a physical server or a cloud server.

[0036] In a specific implementation, when a user uses a browser to browse a map, he or she will perform interactive operations such as clicking. In response to the user's interactive operations, the browser needs to query the query object data of the query object at the interactive location in order to perform subsequent actual rendering and other operations. Therefore, in a possible implementation, the interactive operation can trigger a data query instruction, so that the browser responds to the data query instruction and queries the query object data of the query object at the interactive location in the map data.

[0037] In actual applications, data query instructions are different for different application scenarios. For example, in a geographic map scenario, the data query instruction can be understood as a query request for a certain geographic element, such as a query for a specific subway station in a geographic map; or in a virtual game scenario, the data query instruction can be understood as a query request for a certain element object in the virtual game scene, such as a query for a certain task location in a virtual game map.

[0038] Take the map data query method provided in the embodiment of this specification as an example of applying it to data query on a geographic map: according to the method provided in the embodiment of this specification, a unique identifier of the query object can be generated in advance for the query object in the geographic map, and the unique identifier of the query object can be converted into a pixel value of the location of the query object in the map. Afterwards, when user a browses the geographic map through a browser and clicks on the location of a subway station a in the geographic map with a mouse, the click operation will trigger a query request for the subway station a. The browser receives the query request, which may carry the coordinates of the subway station a in the map. The pixel value of the corresponding pixel point is obtained using the coordinates, and the pixel value is converted to obtain the unique identifier of the subway station a; the unique identifier is used to query the relevant data of the subway station a in the map data.

[0039] In one or more embodiments of the present specification, the query process of the map data query method can pick up the target pixel value of the specified query position through off-screen rendering. Specifically, the off-screen rendering can be implemented based on the processing of a GPU (Graphics Processing Unit). The processing process of converting the target pixel value of the specified query position based on the unique identifier of the query object at the specified query position in advance can be implemented based on the processing of a CPU (Central Processing Unit).

[0040] In one or more embodiments of the present specification, the map data may be map data based on vector tiles. Since vector tiles are in a compressed binary format, after the client obtains the vector tile resources, the parsing and rendering process may be run in real time on the client, thereby ensuring higher rendering quality, achieving dynamic rendering and interactive effects, and giving full play to the advantages of the client based on graphics rendering technology.

[0041] It can be seen from the above application scenarios that according to the map data query system provided in the embodiments of this specification, the client can respond to the user's query request for a certain element in the geographic map by converting the pixel value of the element into a unique identifier of the element, and using the unique identifier to quickly query the relevant data of the element in the geographic map data.

[0042] The following combination Figure 2 , the map data query method is further described. Figure 2 A flowchart of a map data query method provided by an embodiment of the present specification is shown, which specifically includes the following steps.

[0043] Step 202: In response to a data query instruction, a target pixel value of a specified query position on an off-screen rendered map is obtained according to the data query instruction, wherein the target pixel value is obtained in advance by converting a unique identifier of a query object at the specified query position.

[0044] The data query instruction can be understood as a query request for a query object, such as a query request for a specific subway station in a geographic map. Off-screen rendering can be understood as opening a new buffer outside the current screen buffer for rendering operations; specifically, the off-screen rendering map can be turned on after receiving the data query instruction, or before receiving the data query instruction. The rendering timing is set according to the scene needs, and this manual does not limit this.

[0045] The designated query location can be understood as the interactive location corresponding to when the user interacts with the map interface to trigger a data query instruction. For example, when the user uses the mouse to click on a specific subway station in the map interface of the browser, the designated query location is the location of the subway station in the map interface.

[0046] The target pixel value can be understood as the pixel value of the pixel point corresponding to the specified query position.

[0047] The query object can be understood as any one or more elements to be queried in the map, for example, map layers, tiles, features, etc. Using the above example, if the user wants to query a subway station in the map, the query object is the above subway station.

[0048] The unique identifier is the key information used to distinguish each query object in the map data. A unique identifier can be used to uniquely determine a corresponding query object in the map data. The unique identifier can be represented by any characters such as letters and numbers, and the specific method for determining the unique identifier can be set according to the actual application needs. When multiple query objects have a hierarchical relationship, the unique identifiers of the multiple query objects can be represented separately, or they can be combined and represented by separators such as commas according to the hierarchical relationship. This specification does not limit this. For example, if the unique identifier of a query object in the map is 2, 6, 13, it means that the query object is a feature object located in a layer with a layer ID (Identification) of 2, in a tile with a tile ID of 6, and a feature ID of 13.

[0049] Continuing with the geographic map example above, the client may respond to a data query instruction and obtain the pixel value of a pixel at a specified query location on an off-screen rendered geographic map interface according to the data query instruction, where the pixel value is pre-converted based on the unique identifier of the geographic element at the specified query location.

[0050] Specifically, still taking the query of a subway station a in the map as an example, the map data query method is described in detail.

[0051] In actual applications, when a user clicks on subway station a in the map interface, the client responds to the user's data query instruction for subway station a, and obtains the pixel value of the corresponding pixel point of subway station a on the map interface according to the data query instruction. The pixel value is pre-converted based on the unique identifier of subway station a in the map data.

[0052] In one or more embodiments of this specification, picking up in the main rendering interface may cause high latency and low efficiency. To avoid the above problems, one or more embodiments of this specification use off-screen rendering to pick up the target pixel value. The specific implementation method is as follows:

[0053] The step of obtaining a target pixel value of a designated query location on an off-screen rendered map according to the data query instruction includes:

[0054] Rendering a map by off-screen rendering, wherein a pixel value of a specified query position on the off-screen rendered map is a target pixel value;

[0055] The target pixel value of the designated query position on the off-screen rendered map is picked up according to the data query instruction.

[0056] Picking can be understood as the operation of reading the pixel value of a specified query position in graphic interaction.

[0057] Specifically, a new buffer is opened outside the current screen buffer for rendering, and the pixel value corresponding to the specified query position stored in the new buffer is read. It should be noted that since off-screen rendering puts the rendering result into a buffer different from the current screen, the off-screen rendering and the current screen rendering are two rendering environments, and the rendering result of the off-screen rendering is not directly presented on the screen.

[0058] Specifically, still taking the above query of a subway station a in the map as an example, in off-screen rendering, the pixel value corresponding to the position of subway station a in the map interface is read.

[0059] The map data query method provided in the embodiment of this specification renders the map by adopting off-screen rendering, and newly opens up a buffer zone so that picking can be performed without interfering with the main rendering. The pixel value and the unique identifier are converted in the buffer zone, so that the unique identifier of the query object at the query location can be obtained through the pixel value of the query location, and the query object data can be quickly queried.

[0060] In one or more embodiments of the present specification, the method provided in the embodiments of the present specification performs data query based on the user's interactive operation, thereby improving the efficiency of the user's interactive operation in the map interface. For example, when the user performs a click operation in the map interface, the client will obtain the pixel value corresponding to the interactive position corresponding to the click operation, thereby quickly finding the data based on the conversion between the pixel value and the unique identifier of the query object. In this embodiment, in order to accurately obtain the target pixel value of the specified query position, the coordinates of the specified query position are determined based on the interactive position, and the pixel value of the corresponding pixel point is obtained according to the coordinates of the specified query position. The specific implementation method is described as follows:

[0061] The step of responding to the data query instruction and obtaining the target pixel value of the specified query position on the map according to the data query instruction includes:

[0062] Receive user interaction on the map interface;

[0063] Determine, according to the interactive position corresponding to the interactive operation, a data query instruction and a designated query position corresponding to the data query instruction;

[0064] Obtaining the coordinates of the specified query location;

[0065] The target pixel value of the corresponding pixel point is obtained according to the coordinates.

[0066] Among them, interactive operation can be understood as the specific operation of the user operating the software and interface, such as single click, double click, long press, etc.; interactive position can be understood as the specific location of the interactive operation. Coordinates can be understood as a number or a group of numbers that can determine the position of a point in space; pixel point can be understood as the smallest unit that constitutes the map image.

[0067] Specifically, when a user browses a map in a browser and clicks a certain location in the map interface with a mouse, the browser determines the clicked location as a designated query location, obtains the coordinates of the designated query location on the map interface, and obtains the pixel value of the pixel point corresponding to the coordinates based on the coordinates.

[0068] The map data query method provided in the embodiments of the present specification obtains the coordinates of a specified query location on a map through a data query instruction, wherein the data query instruction may carry the coordinate information of the specified query location, so as to accurately obtain the pixel point corresponding to the specified query location based on the coordinate information of the specified query location, and then obtain the pixel value of the pixel point.

[0069] Step 204: Convert the target pixel value into a unique identifier of the query object.

[0070] Specifically, the target pixel value has been converted in advance based on the unique identifier of the query object at the specified query position. The conversion between the target pixel value and the unique identifier can be performed using a mathematical formula or the like, or the unique identifier corresponding to the target pixel value can be determined by a mapping relationship or a lookup table, which is not limited in this specification. Therefore, when converting the target pixel value to the unique identifier, the target pixel value can be converted to the unique identifier of the query object by using a corresponding conversion method according to the conversion method when the unique identifier is converted to the target pixel value.

[0071] In one or more embodiments of the present invention, the unique identifier of the query object is converted into a pixel value in advance, and after obtaining the user's data query instruction, the target pixel value at the query position is obtained, and the target pixel value and the unique identifier are converted to obtain the unique identifier of the query object at the query position. The specific implementation method is as follows:

[0072] The map data query method further includes:

[0073] By passing the unique identifier of the query object to the shader, the shader converts the unique identifier into a pixel value.

[0074] Among them, the shader is a program used to output color and realize image rendering, such as a vertex shader or a fragment shader. In this specification, the target pixel value can be understood as a color.

[0075] The method provided in the embodiment of this specification converts the unique identifier of the query object into a color in advance, so there is a one-to-one correspondence between the color and the unique identifier. Specifically, the unique identifier of the query object can be passed to the shader, so that the shader outputs the corresponding color, that is, the pixel value, thereby achieving the purpose of converting the unique identifier into a pixel value.

[0076] The map data query method provided in the embodiment of this specification passes the unique identifier of the query object to the shader, uses the shader for rendering, and reasonably enables the shader to convert the unique identifier into a pixel value, so as to facilitate the subsequent acquisition of the pixel value of the query position, convert the pixel value and the unique identifier, obtain the unique identifier of the query object at the query position, and quickly complete the query using the unique identifier.

[0077] Step 206: According to the unique identifier of the query object, query the query object data corresponding to the unique identifier.

[0078] The query object data may be understood as the attribute information data of the query object, such as name, scale, etc. For example, when the query object is a certain element object subway station a, the query object data may include the name of subway station a, the route it is located on, etc.

[0079] Specifically, based on the unique identifier of the query object, the query object data corresponding to the unique identifier is queried. It can be understood that the target pixel value at the specified query position is converted to obtain the unique identifier of the query object, and the unique identifier is used as an index to query the corresponding query object data from the storage space used to store map data.

[0080] It should be noted that, according to the method provided in the embodiment of this specification, the query object may be any component element in the map data. When the map data contains components of a hierarchical relationship, the map data query method provided in the embodiment of this specification may be applied to query the elements of any one or more hierarchies, and accordingly, the query object may be any one or more elements in any one or more hierarchies.

[0081] In one or more embodiments of the present description, taking the three-layer material components of layers, tiles and features, which are relatively common in map data, as an example, the query object may be a layer, a tile and / or a feature.

[0082] For example, when the query object is a layer, converting the target pixel value into a unique identifier of the query object includes:

[0083] Convert the target pixel value into a layer identifier of the layer, wherein the layer identifier of the layer is obtained by numerical conversion according to the order of rendering the layer;

[0084] The querying of the query object data corresponding to the unique identifier according to the query object includes:

[0085] According to the layer identifier of the layer, the layer data corresponding to the layer identifier is queried.

[0086] Among them, the layer can be understood as data that divides spatial information according to its geometric characteristics and attributes, such as a vector layer.

[0087] Layer data can be understood as data containing layer information, such as layer name, layer number, etc.

[0088] In one or more embodiments of the present disclosure, the layer identifier of a layer is a unique identifier for each layer. In order to reasonably assign a layer identifier to each layer, the sequence number of the layer rendering order can be used as the layer identifier of each layer. The specific implementation is as follows:

[0089] The layer identifier of the layer is obtained by numerical conversion according to the order in which the layer is rendered.

[0090] In practical applications, a unique number can also be randomly generated and assigned to a layer as a layer identifier. It should be noted that a layer identifier can be generated for the layer as long as the two conditions of uniqueness and number are met.

[0091] For example, if layer a is the second layer to be rendered, then the order value of layer a rendering is 2, and the order value 2 of layer a rendering is used as the layer ID of layer a, that is, the layer ID of layer a is 2; when the user's query object is layer a, the pixel value of the query position corresponding to layer a is converted into the layer ID 2 of layer a; based on the layer ID 2 of layer a, the layer data of layer a corresponding to the layer ID 2 is queried.

[0092] The map data query method provided in the embodiment of this specification can quickly assign a unique layer identifier to each layer by converting the numerical value according to the order of layer rendering, and assign the layer identifier when the layer is rendered, thereby improving the efficiency of generating layer identifiers.

[0093] For another example, when the query object is a tile, converting the target pixel value into a unique identifier of the query object includes:

[0094] Converting the target pixel value into a tile identifier of the tile, wherein the tile identifier of the tile is converted according to a numerical value of a sequence created by the tile;

[0095] The querying of the query object data corresponding to the unique identifier according to the query object includes:

[0096] According to the tile identifier of the tile, the tile data corresponding to the tile identifier is queried.

[0097] Among them, tiles can be understood as map slice files that contain a series of scales and within a certain map range. Map tiles are organized in a pyramid structure, and each tile can be marked by level, row and column number.

[0098] Tile data can be understood as data containing tile information, such as tile level, row and column numbers, etc.

[0099] In one or more embodiments of the present invention, the tile ID of a tile is a unique ID for each tile. In order to reasonably assign a tile ID to each tile, the sequence number of the tile creation order can be used as the tile ID of each tile. The specific implementation is as follows:

[0100] The tile identifier of the tile is obtained by converting the numerical value of the order in which the tile is created.

[0101] In practical applications, a unique number can also be randomly generated and assigned to a tile as a tile identifier; it should be noted that a tile identifier can be generated for a tile as long as the two conditions of uniqueness and number are met.

[0102] For example, tile a is the fifth tile to be rendered, so the order value of tile a rendering is 5, and the order value 5 of tile a rendering is used as the tile identifier of tile a, that is, the tile identifier of tile a is 5; when the user query object is tile a, the pixel value of tile a corresponding to the query position is converted into the tile identifier 5 of tile a; based on the tile identifier 5 of tile a, the tile data of tile a corresponding to the tile identifier 5 is queried.

[0103] The map data query method provided in the embodiment of this specification can quickly assign a unique tile identifier to each tile by converting the tile creation sequence numerically to obtain the tile identifier of the tile, thereby improving the efficiency of generating tile identifiers.

[0104] For another example, when the query object is a feature, converting the target pixel value into a unique identifier of the query object includes:

[0105] Convert the target pixel value into an element identifier of the element, wherein the element identifier of the element is obtained by converting the array subscript of the element;

[0106] The querying of the query object data corresponding to the unique identifier according to the query object includes:

[0107] According to the element identifier of the element, the element data corresponding to the element identifier is queried.

[0108] Among them, elements can be understood as various things represented on the map, including terrain, water systems, buildings, roads, railways, administrative divisions, climate, etc. These elements are the basic elements that constitute the map.

[0109] Feature data can be understood as the data that constitutes the elements. For example, the feature data corresponding to a certain terrain element includes the terrain name, terrain boundary, terrain contour line, projection, scale, and related text, digital annotation and other information data.

[0110] In one or more embodiments of the present invention, the element identifier of an element is a unique identifier of each element. In order to reasonably assign an element identifier to each element, the array subscript of the element can be used as the element identifier of each element. The specific implementation is as follows:

[0111] The element identifier of the element is obtained by converting the array subscript of the element.

[0112] For example, the array subscript of element a is 8, and the array subscript 8 of element a is used as the element identifier of element a, that is, the element identifier of element a is 8; when the query object is element a, the pixel value of element a corresponding to the query position is converted to the element identifier 8 of element a; based on the element identifier 8 of element a, the element data of element a corresponding to the element identifier 8 is queried.

[0113] The map data query method provided in the embodiment of the present specification can quickly assign a unique element identifier to each element by converting the element's array subscript to obtain the element identifier, thereby improving the efficiency of generating element identifiers.

[0114] The following is an exemplary description of the method provided in the embodiment of the specification, which is applied to the query process of the query object of the multi-layer element. Specifically, when the query object includes the query object of the multi-layer element, the response to the data query instruction, according to the data query instruction, obtains the target pixel value of the specified query position on the off-screen rendered map, including:

[0115] In response to the data query instruction, determining a specified query location;

[0116] Determine the current layer element;

[0117] Get the target pixel value of the current layer element at the specified query position on the off-screen rendered map from the map data stored in the buffer;

[0118] The querying of the query object data corresponding to the unique identifier according to the query object includes:

[0119] According to the unique identifier of the query object of the current layer element, query the query object data of the current layer element corresponding to the unique identifier from the buffer, and delete the map data other than the query object data in the current layer element from the buffer;

[0120] After querying the query object data of the current layer element, the method further includes:

[0121] Determine the next layer element of the current layer element, use the next layer element as the updated current layer element, and re-enter the step of determining the current layer element until the query object data of the query object of the bottom layer element in the multiple layers of elements is obtained and stop.

[0122] Among them, elements can be understood as units that make up things, and the query object includes at least two layers of elements, such as the query object includes three layers of elements: layers, tiles, and features; the buffer can be understood as a buffer created by off-screen rendering in the above embodiment; the bottom-level element can be understood as the smallest level element in multiple layers of elements.

[0123] In this embodiment, multiple layers of elements are queried layer by layer, and when the results are obtained at each layer, the content that does not need to be queried further is eliminated, thereby reducing the data in the buffer and improving the query performance.

[0124] In one or more embodiments, the topmost element of the multi-layer elements is a layer, the middle-layer elements are tiles, and the bottom-layer elements are elements. The specific implementation is as follows:

[0125] After the specified query location is determined in response to the data query instruction, the method further includes:

[0126] Determine the current layer element as a layer;

[0127] Get the target pixel value of the layer at the specified query position on the off-screen rendered map from the map data stored in the buffer;

[0128] The querying of the query object data corresponding to the unique identifier according to the query object includes:

[0129] According to the unique identifier of the query object in the layer, query the query object data of the layer corresponding to the unique identifier from the buffer, and delete the layers other than the layer corresponding to the unique identifier in the buffer from the buffer;

[0130] Determine that the next layer element of the current layer element is a tile;

[0131] Obtain the target pixel value of the tile at the specified query position on the off-screen rendered map from the map data stored in the buffer;

[0132] The querying of the query object data corresponding to the unique identifier according to the query object includes:

[0133] According to the unique identifier of the query object in the tile, query the query object data of the tile corresponding to the unique identifier from the buffer, and delete the tiles other than the tile corresponding to the unique identifier in the buffer from the buffer;

[0134] Determining the bottom-level element as a factor;

[0135] Obtain the target pixel value of the feature at the specified query position on the off-screen rendered map from the map data stored in the buffer;

[0136] The querying of the query object data corresponding to the unique identifier according to the query object includes:

[0137] According to the unique identifier of the query object in the element, the query object data of the element corresponding to the unique identifier is queried from the buffer.

[0138] Specifically, taking the query object as a certain element in the map, such as subway station b, and subway station b including three layers of elements, namely, layer, tile, and element, the map data query method is described in detail.

[0139] In response to a query instruction for subway station b sent by a user, determine the query position of subway station b clicked by the user; determine that the current layer element is a layer, create off-screen rendering, and obtain the pixel value of the layer at the query position of subway station b in the layer element on the map from the map data containing subway station b stored in the off-screen rendering buffer, convert the pixel value into a layer identifier of the layer, and query the layer data corresponding to the layer identifier according to the layer identifier of the layer. For example, if the layer identifier of the layer obtained by converting the pixel value is 2, it is queried that the layer corresponding to the layer identifier is layer 2; and delete the map data of other layers in the layer except layer 2 from the above buffer.

[0140] Determine that the next layer element of this layer element of the layer is a tile, take the tile as the current layer element, obtain the pixel value of the tile layer element at the query position of subway b on the map, convert the pixel value of the tile layer element into a tile identifier of the tile, and query the tile data corresponding to the tile identifier according to the tile identifier of the tile. For example, if the tile identifier of the tile obtained by converting the pixel value is 5, it is queried that the tile corresponding to the tile identifier is tile 5; delete the map data of other tiles except tile 5 in the tile from the above buffer.

[0141] Determine the bottom-level element as a feature, take the feature as the current layer element, obtain the pixel value of the feature layer element at the query location of subway b on the map, convert the pixel value of the feature layer element into the feature identifier of the feature, and query the feature data corresponding to the feature identifier based on the feature identifier of the feature. For example, if the feature identifier of the feature obtained by converting the pixel value is 7, the array subscript of the feature corresponding to the feature identifier is 7. Based on the above identifiers, query the feature object with layer 2, tile 5, and feature array subscript 7, that is, the data of subway station b.

[0142] The map data query method provided in the embodiments of this specification can be based on vector data tile rendering technology, combined with the advantages of WebGL rendering, and utilize a three-layer dynamic interaction technology based on layers, tiles, and elements to implement an acceleration solution for real-time query of large-scale vector tile data on the map, thereby solving the problem of low efficiency in querying and interacting with large amounts of data.

[0143] On the one hand, by using layer identifiers, tile identifiers, and feature identifiers, the location of data can be quickly located during the query process, reducing the performance overhead caused by traversing large amounts of data; on the other hand, based on WebGL's high-performance rendering capabilities, pixel values ​​can be quickly obtained through pixel coordinates; converting pixel values ​​into identifiers can greatly improve the efficiency of data query and interaction under multi-layer, multi-tile, and large-scale rendering.

[0144] See also Figure 3 , Figure 3 A flowchart of a processing process of a map data query method provided according to an embodiment of the present specification is shown.

[0145] Step 302: Start.

[0146] Start the map data query process.

[0147] Step 304: Mouse click and move event.

[0148] Specifically, the user uses mouse click and move events to send data query instructions to the client.

[0149] Step 306: Enable off-screen rendering mode.

[0150] Specifically, the client receives a data query instruction and starts the off-screen rendering mode; before starting the off-screen rendering mode, an off-screen rendering target is created. During off-screen rendering, a new rendering target is required so that it can be picked up without interfering with the main rendering.

[0151] The first layer includes steps 308 to 316 .

[0152] Step 308: Switch the material state to layer rendering.

[0153] Specifically, in the first layer, the material state is switched to layer rendering, wherein switching the material state to layer rendering can be understood as determining that the current layer element is a layer in the above embodiment.

[0154] Step 310: Render and pick up the color ID (Identity document).

[0155] Among them, rendering and picking up the color ID can be understood as using a shader to render and read the pixel value of the above-mentioned mouse click position, and converting the pixel value into an ID; the ID can be understood as a unique identifier in the above-mentioned embodiment.

[0156] In practical applications, a layer ID is assigned to each layer in advance. To determine the layer ID, an ID needs to be assigned to each layer. This ID is unique among all layers. This solution uses the sequential numerical value of layer rendering to generate an ID, which can quickly find the layer ID; converting the created ID to color is a preprocessing process in the CPU. The color and ID are one-to-one corresponding. When rendering, the color is used instead of the ID, which is convenient for directly obtaining the color when rendering.

[0157] Using the ID in the fragment shader, the ID can be passed to the fragment shader at rendering time by setting the converted color as a uniform (layers and tiles use this method) or attribute (features use this method) property of the material of the WEBGL fragment shader. This can be achieved by storing the ID in different channels of the RGBA (color space representing Red, Green, Blue and Alpha) pixel value.

[0158] Step 312: Query the corresponding layer through the ID. If no, that is, the corresponding layer does not exist, proceed to step 314; if yes, that is, the corresponding layer is found through the ID, proceed to step 316.

[0159] Execute the picking operation and render the map in the off-screen rendering target. Off-screen rendering can be implemented using FBO (FramebufferObject); FBO is a customizable frame buffer that can store rendering results. When picking, read the corresponding stored buffer color according to the mouse picking position information, and use the layer ID as the pixel value; the coordinates of the mouse event can be used to obtain the pixel value of the corresponding pixel, convert the pixel value into a layer ID, and query the layer through the layer ID.

[0160] Step 314: Exit off-screen rendering and output an empty object.

[0161] If there is no corresponding layer, exit off-screen rendering and output an empty object.

[0162] Step 316: Eliminate the layers other than this ID.

[0163] Eliminate unnecessary rendering content in the layer hierarchy to improve the performance of the next layer rendering.

[0164] It should be noted that because off-screen rendering technology is used, the interface seen by the user is two webgl contexts. The pixel values ​​rendered by the off-screen rendering interface are generated by ID, and the pixel values ​​seen by the user are the actual rendered effect pixel values. The two environments do not affect each other. The only connection is the pixel position relationship, that is, the position information of the mouse interaction. The pixel values ​​mentioned in the embodiments of this specification are not the actual rendered effect pixel values, but the pixel values ​​associated with the ID.

[0165] The second layer includes steps 318 to 326 .

[0166] Step 318: Switch the material state to tile rendering.

[0167] Specifically, in the second layer, switching the material state to tile rendering can be understood as determining in the above embodiment that the next layer element of the current layer element is a tile.

[0168] Step 320: Render and pick up tile color ID.

[0169] In practical applications, a tile ID is assigned to each tile in each layer in advance. To determine the tile ID, an ID needs to be assigned to all tiles in each layer. This ID is unique in the current layer. This solution uses the order in which tiles are created to generate tile IDs to quickly find the tile corresponding to the tile ID.

[0170] Step 322: Query the corresponding tile through the ID. If no, that is, the corresponding tile does not exist, proceed to step 314; if yes, that is, the corresponding tile is found through the ID, proceed to step 326.

[0171] Step 324: Exit off-screen rendering and output an empty object.

[0172] If there is no corresponding tile, exit off-screen rendering and output an empty object.

[0173] Step 326: Remove tiles other than those with this ID.

[0174] For the specific implementation, please refer to the above-mentioned switching of material status to layer rendering, which will not be repeated here.

[0175] The third layer includes steps 328 to 336 .

[0176] Step 328: Switch the material state to feature rendering.

[0177] Specifically, at the third layer, switching the material state to element rendering can be understood as determining the bottom-level element as an element in the above embodiment.

[0178] Step 330: Render and pick up feature color ID.

[0179] In practical applications, a feature ID is pre-assigned to each feature in each tile of each layer to determine the feature object ID. An ID needs to be assigned to the feature object in each tile of each layer. This ID is unique within a single tile. This solution uses the array subscript index of the feature object as the ID. The array subscript can be quickly matched through the ID to find the corresponding feature object.

[0180] Step 332: Use the ID to quickly locate the data index to find the feature object. If not, that is, the corresponding feature does not exist, proceed to step 334; if yes, that is, the corresponding feature is found through the ID, proceed to step 336.

[0181] Step 334: Exit off-screen rendering and output an empty object.

[0182] If there is no corresponding element, exit off-screen rendering and output an empty object.

[0183] Step 336: Exit off-screen rendering mode.

[0184] For the specific implementation, please refer to the above-mentioned switching of material status to layer rendering, which will not be repeated here.

[0185] Step 338: Output layer, tile, feature object and other information.

[0186] Specifically, outputting information such as layers, tiles, and feature objects can be understood as querying the query object data corresponding to the unique identifier in the above embodiment.

[0187] The map data query method provided in the embodiments of the present specification obtains the pixel value of the specified query position on the off-screen rendered map according to the data query instruction, and the pixel value carries the unique identifier of the query object at the specified query position; the pixel value is converted into the unique identifier of the query object, so as to quickly query the query object data corresponding to the unique identifier according to the unique identifier of the query object, and the query object data of the query position is quickly located by utilizing the conversion between the pixel value and the identifier, thereby improving the performance and efficiency of map data query and data interaction, improving the user experience, and enhancing the usability and competitiveness of map applications.

[0188] See also Figure 4 , Figure 4 A schematic diagram of an interface operation of a map data query method provided in an embodiment of this specification is shown.

[0189] Specifically, when a user browses a map in a browser and clicks a certain location in the map interface with a mouse, the browser determines the clicked location as a designated query location, obtains the coordinates of the designated query location on the map interface, and obtains the pixel value of the pixel point corresponding to the coordinates based on the coordinates.

[0190] In order to make the method provided in the embodiments of this specification easier to understand, Figure 5 The diagram shows a composition method of layers, tiles, and elements provided according to an embodiment of the present specification. Specifically, a layer may contain multiple tiles, and a tile may contain multiple elements.

[0191] According to the method provided in the embodiments of this specification, when querying features, the query object includes three layers of elements: layer, tile, and feature. When querying based on the unique identifier of the query object, first query the layer where the query object is located, query the tile where the query object is located in the layer, and query the feature corresponding to the query object in the tile.

[0192] See also Figure 6 , Figure 6 A flowchart of a map data processing method provided in an embodiment of this specification is shown.

[0193] Step 602: Determine the object identifier of the target object in the map.

[0194] The target object may be understood as the query object in the above embodiment; and the object identifier of the target object may be understood as the unique identifier of the query object in the above embodiment.

[0195] For the specific implementation, please refer to the above embodiments, which will not be described in detail here.

[0196] Step 604: Convert the object identifier of the target object in the map into a target color.

[0197] Specifically, converting the object identifier of the target object into the target color is a process of CPU preprocessing, and there is a one-to-one correspondence between color and object identifier, so the object identifier of the target object in the map can be converted into the corresponding target color.

[0198] Step 606: Determine the target pixel value of the target object in the map based on the target color.

[0199] Specifically, by converting the object identifier of the target object into a target color and determining the target pixel value of the target object in the map based on the target color, the object identifier is converted into a pixel value.

[0200] The map data processing method provided in the embodiments of the present specification can convert the object identifier of the target object in the map into the corresponding target color, determine the pixel value based on the target color, and realize that the corresponding target pixel can be determined according to the object identifier of the target object.

[0201] Figure 7 A system block diagram of a map data query system 700 provided according to an embodiment of the present specification is shown. The system may include a server 702 and a client 704 .

[0202] The server 702 is used to provide map data, and the client 704 is used to receive data query instructions from users. The server 702 can interact with the client 704 to search in the map data according to the data query instructions received by the client 704, wherein the client 704 can include multiple ones.

[0203] Optionally, the user may interact with the server 702 through the client 704 to receive data sent by other clients 704 , or send data to other clients 704 , etc.

[0204] In the map data query, the user may send a map data acquisition request to the server 702 through the client 704, and the server 704 pushes the map data to the client with which the communication is established based on the map data acquisition request.

[0205] The client 704 and the server 702 are connected via a network. The network provides a medium for a communication link between the client and the server. The network may include various connection types, such as wired, wireless communication links or optical fiber cables, etc.

[0206] The client 704 can be a browser, an APP (Application), or a web application such as an H5 (HyperText Markup Language 5, the fifth edition of Hypertext Markup Language) application, or a light application (also known as a mini-program, a lightweight application) or a cloud application, etc. The client 704 can be based on the SDK (Software Development Kit) of the corresponding service provided by the server, such as being developed based on the RTC SDK, etc. The client 704 can be deployed in an electronic device and needs to rely on the device to run or some APPs in the device to run, etc. The electronic device can, for example, have a display screen and support information browsing, etc., such as a personal mobile terminal such as a mobile phone, a tablet computer, a personal computer, etc. Various other types of applications can also be configured in the electronic device, such as human-computer dialogue applications, model training applications, text processing applications, web browser applications, shopping applications, search applications, instant messaging tools, mailbox clients, social platform software, etc.

[0207] The server 702 may include servers that provide various services, such as a server that provides communication services to multiple clients, a server for background training that supports models used on the clients, a server that processes data sent by the clients, etc.

[0208] It should be noted that the server 702 can be implemented as a distributed server cluster consisting of multiple servers, or as a single server. The server can also be a server of a distributed system, or a server combined with a blockchain. The server can also be a cloud server for basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery networks (CDN), and big data and artificial intelligence platforms, or an intelligent cloud computing server or intelligent cloud host with artificial intelligence technology.

[0209] In addition, the map data query method provided in the embodiments of this specification is generally executed by the client, but in other embodiments of this specification, the server may also have similar functions to the client, thereby executing the map data query method provided in the embodiments of this specification. In other embodiments, the map data query method provided in the embodiments of this specification may also be executed jointly by the client and the server.

[0210] Figure 8 The block diagram of a computing device 800 according to an embodiment of the present specification is shown. The components of the computing device 800 include but are not limited to a memory 810 and a processor 820. The processor 820 is connected to the memory 810 via a bus 830, and a database 850 is used to store data.

[0211] The computing device 800 also includes an access device 840 that enables the computing device 800 to communicate via one or more networks 860. Examples of these networks include a public switched telephone network (PSTN), a local area network (LAN), a wide area network (WAN), a personal area network (PAN), or a combination of communication networks such as the Internet. The access device 840 may include one or more of any type of network interface (e.g., a network interface card (NIC)) that is wired or wireless, such as an IEEE 802.11 wireless local area network (WLAN) wireless interface, a world-wide interoperability for microwave access (Wi-MAX) interface, an Ethernet interface, a universal serial bus (USB) interface, a cellular network interface, a Bluetooth interface, and a near field communication (NFC).

[0212] In one embodiment of the present specification, the above components of the computing device 800 and Figure 8 Other components not shown in the figure may also be connected to each other, for example, via a bus. It should be understood that Figure 8 The computing device structure block diagram shown is only for the purpose of illustration, and is not intended to limit the scope of this specification. Those skilled in the art can add or replace other components as needed.

[0213] The computing device 800 may be any type of stationary or mobile computing device, including a mobile computer or mobile computing device (e.g., a tablet computer, a personal digital assistant, a laptop computer, a notebook computer, a netbook, etc.), a mobile phone (e.g., a smart phone), a wearable computing device (e.g., a smart watch, smart glasses, etc.), or other types of mobile devices, or a stationary computing device such as a desktop computer or a personal computer (PC). The computing device 800 may also be a mobile or stationary server.

[0214] The processor 820 is used to execute the following computer executable instructions, which, when executed by the processor, implement the steps of the above-mentioned map data query method or the steps of the above-mentioned map data processing method.

[0215] The above is a schematic scheme of a computing device of this embodiment. It should be noted that the technical scheme of the computing device and the technical scheme of the above-mentioned map data query method belong to the same concept, and the details not described in detail in the technical scheme of the computing device can be referred to the description of the technical scheme of the above-mentioned map data query method.

[0216] An embodiment of the present specification further provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the steps of the above-mentioned map data query method or the above-mentioned map data processing method.

[0217] The above is a schematic scheme of a computer-readable storage medium of this embodiment. It should be noted that the technical scheme of the storage medium and the technical scheme of the above-mentioned map data query method belong to the same concept, and the details not described in detail in the technical scheme of the storage medium can be referred to the description of the technical scheme of the above-mentioned map data query method.

[0218] An embodiment of the present specification further provides a computer program, wherein when the computer program is executed in a computer, the computer is caused to execute the steps of the above-mentioned map data query method, or implement the steps of the above-mentioned map data processing method.

[0219] The above is a schematic scheme of a computer program of this embodiment. It should be noted that the technical scheme of the computer program and the technical scheme of the above-mentioned map data query method belong to the same concept, and the details not described in detail in the technical scheme of the computer program can be referred to the description of the technical scheme of the above-mentioned map data query method.

[0220] The above is a description of a specific embodiment of the specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims can be performed in an order different from that in the embodiments and still achieve the desired results. In addition, the processes depicted in the drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0221] The computer instructions include computer program codes, which may be in source code form, object code form, executable files or some intermediate forms, etc. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, USB flash drive, mobile hard disk, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electric carrier signal, telecommunication signal and software distribution medium, etc. It should be noted that the content contained in the computer-readable medium may be appropriately increased or decreased according to the requirements of patent practice. For example, in some regions, according to patent practice, computer-readable media do not include electric carrier signals and telecommunication signals.

[0222] It should be noted that, for the above-mentioned method embodiments, for the sake of simplicity of description, they are all expressed as a series of action combinations, but those skilled in the art should be aware that the embodiments of this specification are not limited by the order of the actions described, because according to the embodiments of this specification, some steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the embodiments of this specification.

[0223] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0224] The preferred embodiments of this specification disclosed above are only used to help explain this specification. The optional embodiments do not describe all the details in detail, nor do they limit the invention to only the specific implementation methods described. Obviously, many modifications and changes can be made according to the content of the embodiments of this specification. This specification selects and specifically describes these embodiments in order to better explain the principles and practical applications of the embodiments of this specification, so that technicians in the relevant technical field can well understand and use this specification. This specification is only limited by the claims and their full scope and equivalents.

Claims

1. A map data query method, comprising: In response to the data query instruction, according to the data query instruction, a target pixel value of a specified query position on the off-screen rendered map is obtained, wherein the target pixel value is converted in advance based on a unique identifier of a query object at the specified query position; Converting the target pixel value into a unique identifier of the query object; According to the unique identifier of the query object, query object data corresponding to the unique identifier is queried.

2. The map data query method according to claim 1, wherein obtaining the target pixel value of the specified query position on the off-screen rendered map according to the data query instruction comprises: Rendering a map by off-screen rendering, wherein a pixel value of a specified query position on the off-screen rendered map is a target pixel value; The target pixel value of the designated query position on the off-screen rendered map is picked up according to the data query instruction.

3. The map data query method according to claim 1, wherein the query object is a layer; The converting the target pixel value into the unique identifier of the query object comprises: Convert the target pixel value into a layer identifier of the layer, wherein the layer identifier of the layer is obtained by numerical conversion according to the order of rendering the layer; The querying of the query object data corresponding to the unique identifier according to the query object includes: According to the layer identifier of the layer, the layer data corresponding to the layer identifier is queried.

4. The map data query method according to claim 1, wherein the query object is a tile; The converting the target pixel value into the unique identifier of the query object comprises: Converting the target pixel value into a tile identifier of the tile, wherein the tile identifier of the tile is converted according to a numerical value of a sequence created by the tile; The querying of the query object data corresponding to the unique identifier according to the query object includes: According to the tile identifier of the tile, the tile data corresponding to the tile identifier is queried.

5. The map data query method according to claim 1, wherein the query object is a feature; The converting the target pixel value into the unique identifier of the query object comprises: Convert the target pixel value into an element identifier of the element, wherein the element identifier of the element is obtained by converting the array subscript of the element; The querying of the query object data corresponding to the unique identifier according to the query object includes: According to the element identifier of the element, the element data corresponding to the element identifier is queried.

6. The map data query method according to any one of claims 1 to 5, wherein the query object comprises a query object of multiple layers of elements; The step of responding to the data query instruction and obtaining the target pixel value of the designated query position on the off-screen rendered map according to the data query instruction includes: In response to the data query instruction, determining a specified query location; Determine the current layer element; Get the target pixel value of the current layer element at the specified query position on the off-screen rendered map from the map data stored in the buffer; The querying of the query object data corresponding to the unique identifier according to the query object includes: According to the unique identifier of the query object of the current layer element, query the query object data of the current layer element corresponding to the unique identifier from the buffer, and delete the map data other than the query object data in the current layer element from the buffer; After querying the query object data of the current layer element, the method further includes: Determine the next layer element of the current layer element, use the next layer element as the updated current layer element, and re-enter the step of determining the current layer element until the query object data of the query object of the bottom layer element in the multiple layers of elements is obtained and stop. 7 . The map data query method according to claim 6 , wherein the topmost element in the multi-layer elements is a layer, the middle-layer elements are tiles, and the bottom-layer elements are features.

8. The map data query method according to claim 1, wherein the step of responding to the data query instruction and obtaining the target pixel value of the specified query position on the off-screen rendered map according to the data query instruction comprises: Receive user interaction on the map interface; Determine, according to the interactive position corresponding to the interactive operation, a data query instruction and a designated query position corresponding to the data query instruction; Obtaining the coordinates of the specified query location; The target pixel value of the corresponding pixel point is obtained according to the coordinates.

9. The map data query method according to claim 1, further comprising: By passing the unique identifier of the query object to the shader, the shader converts the unique identifier into a pixel value.

10. A map data processing method, comprising: Determining the object identity of a target object in the map; Converting an object identifier of a target object in the map into a target color; A target pixel value of a target object in the map is determined based on the target color.

11. A map data query system, comprising: Client and server; The server is used to provide map data to the client; The client is used to receive a data query instruction, apply the map data query method according to any one of claims 1 to 9, and query corresponding query object data from the map data.

12. A computing device comprising: Memory and processor; The memory is used to store computer executable instructions, and the processor is used to execute the computer executable instructions. When the computer executable instructions are executed by the processor, the map data query method according to any one of claims 1 to 9 is implemented, or the steps of the map data processing method according to claim 10 are implemented.

13. A computer-readable storage medium storing computer-executable instructions, wherein the computer-executable instructions, when executed by a processor, implement the map data query method according to any one of claims 1 to 9, or implement the steps of the map data processing method according to claim 10.

Citation Information

Cited By

  • Map generation method and apparatus

    WO2025149820A1