Method, device and electronic equipment for rendering a building block in an electronic map

By using multi-level filtering logic to determine the target floor and match the label content, the problem of misalignment between the building name and visual location in the 3D display mode is solved, achieving fast and accurate building location and improving the user experience of map applications.

CN122115661APending Publication Date: 2026-05-29NAVINFO

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
NAVINFO
Filing Date
2026-02-04
Publication Date
2026-05-29

AI Technical Summary

Technical Problem

In 3D display mode, the names of buildings are misaligned with their visual locations, making it difficult for users to quickly and accurately locate target buildings, especially in high-density urban areas, which may lead to navigation path errors.

Method used

Through multi-level filtering logic, the target building is determined based on the road information and building attribute information around the visible building block. The label content is determined based on the point of interest data, so that the label content is accurately matched with the target building and the label content changes with the viewpoint.

Benefits of technology

It achieves accurate matching between the marked content and the target building in a 3D scene, eliminating visual misalignment. Users can quickly and intuitively locate buildings, reduce misoperation, and improve the user experience of map applications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122115661A_ABST
    Figure CN122115661A_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a rendering method and device of a building block in an electronic map and an electronic device. The method comprises: in a three-dimensional display mode, determining a candidate road corresponding to a visible building block according to map data; determining a candidate floor of the visible building block according to the candidate road; selecting a target floor in the candidate floor according to attribute information of the candidate floor; determining identification content of the visible building block according to point of interest data; and rendering the identification content based on the target floor. The method is used to realize accurate matching of the identification content of the visible building block and the target floor, eliminate visual errors in a three-dimensional scene, and facilitate a user to quickly locate the visible building block according to the identification content.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of electronic map technology, and in particular to a method, apparatus and electronic device for rendering building blocks in an electronic map. Background Technology

[0002] With the development of autonomous driving technology and high-precision navigation, users have significantly increased their requirements for the accuracy of map information. In map applications, the display of building blocks is key information for users to quickly locate target locations and understand spatial relationships.

[0003] In related technologies, the names of relevant points of interest are displayed in building blocks. However, in 3D display mode, changes in viewing angle can easily lead to visual misalignment between the names and building blocks, making it difficult for users to quickly associate specific buildings with their names. Summary of the Invention

[0004] This application provides a method, apparatus, and electronic device for rendering building blocks in an electronic map, which can achieve accurate matching between the identification content of visible building blocks and the target building, eliminate visual errors in three-dimensional scenes, and facilitate users to quickly locate visible building blocks based on the identification content.

[0005] In a first aspect, embodiments of this application provide a method for rendering building blocks in an electronic map, comprising:

[0006] In 3D display mode, candidate roads corresponding to visible building blocks are determined based on map data;

[0007] Based on the candidate roads, determine the candidate floor plans for the visible building blocks;

[0008] Select the target floor from the candidate floor areas based on their attribute information;

[0009] Based on the point of interest data, determine the labeling content for visible building blocks;

[0010] Render signage content based on the target floor plan.

[0011] In one possible implementation, determining candidate floor plans of visible building blocks based on candidate roads includes: selecting a target road from the candidate roads based on the road's grade and number of lanes; and designating floor plans of visible building blocks facing the target road as candidate floor plans.

[0012] In one possible implementation, selecting a target road from the candidate roads based on the candidate road's classification and number of lanes includes:

[0013] The importance score of the candidate roads is determined based on their grade and number of lanes.

[0014] The target road is selected from the candidate roads based on the importance score.

[0015] In one possible implementation, selecting a target floor from the candidate floor plans based on their attribute information includes:

[0016] Based on the importance score of the candidate floors, the candidate floors are traversed to obtain the floors to be processed.

[0017] Determine whether the attribute information of the floor to be processed meets the rendering conditions;

[0018] If the conditions are not met, return to the step of executing the steps based on the importance score of the candidate floor, traverse the candidate floors, and obtain the steps of the floor to be processed.

[0019] If the conditions are met, the floor to be processed will be designated as the target floor.

[0020] In one possible implementation, the attribute information includes: face width and orientation visibility attributes;

[0021] Determine whether the attribute information of the floor to be processed meets the rendering conditions, including:

[0022] If the width of the candidate floor is greater than the preset width and the orientation visibility attribute is the preset attribute, the candidate floor is determined to meet the rendering conditions.

[0023] If the width of the candidate floor is not greater than the preset width, or the orientation visibility attribute is not a preset attribute, the candidate floor is determined not to meet the rendering conditions.

[0024] In one possible implementation, the identification content of visible building blocks is determined based on point-of-interest data, including:

[0025] Identify the associated points of interest (POIs) for visible buildings within the POI data;

[0026] The primary interest point is determined based on the master-child relationship between related interest points;

[0027] Based on the name of the main point of interest, determine the labeling content for the visible building blocks.

[0028] In one possible implementation, the rendering of signage content based on the target floor includes:

[0029] Determine the display direction and rendering area based on the signage content, the width and height of the target floor;

[0030] The label content is rendered based on the display orientation and rendering area.

[0031] In one possible implementation, the identifier content includes a name; the identifier content is rendered according to the display orientation and rendering area, including:

[0032] The display scene is determined based on the system time;

[0033] When the display scene is a nighttime display scene, render a name with a halo effect based on the display direction and rendering area.

[0034] Secondly, embodiments of this application provide a rendering apparatus for building blocks in an electronic map, the apparatus comprising:

[0035] The road determination module is used to determine candidate roads corresponding to visible building blocks based on map data in 3D display mode;

[0036] The candidate floor area determination module is used to determine the candidate floor areas of visible building blocks based on the candidate roads;

[0037] The target floor determination module is used to select the target floor from the candidate floors based on the attribute information of the candidate floors.

[0038] The label content determination module is used to determine the label content of visible building blocks based on point-of-interest data;

[0039] The rendering module is used to render signage content based on the target floor.

[0040] Thirdly, embodiments of this application provide an electronic device, including: a memory and a processor; the memory stores computer-executable instructions; the processor executes the computer-executable instructions stored in the memory, causing the processor to perform the first aspect and / or various possible implementations of the first aspect as described above.

[0041] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the first aspect and / or various possible implementations of the first aspect.

[0042] Fifthly, embodiments of this application provide a computer program product, including a computer program that, when executed by a processor, implements the first aspect and / or various possible implementations of the first aspect.

[0043] The rendering method, apparatus, electronic device, storage medium, and program product for building blocks in electronic maps provided in this application embodiment, in a 3D display mode, determines candidate building surfaces for visible building blocks based on candidate roads corresponding to the visible building blocks, selects target building surfaces from the candidate building surfaces based on the attribute information of the candidate building surfaces, determines the label content based on point of interest data, and renders the label content on the target building surface. Through multi-level filtering using candidate roads and attribute information, the target building surface is obtained, ensuring that a suitable target building surface for rendering is selected even in complex environments. The label content of the visible building blocks is determined based on point of interest data, and the label content is rendered based on the target building surface, aligning the label content with the target building surface. This achieves precise matching between the label content of the visible building blocks and the target building surface. In the displayed map page, if the viewing angle changes, causing changes in the display position and orientation of the visible building blocks, the label content changes accordingly, eliminating visual misalignment in 3D scenes. This facilitates users in quickly and intuitively locating visible building blocks in a 3D display mode. In navigation scenarios, users can accurately identify location points based on the label content, reducing misoperation and improving the user experience of map applications. Attached Figure Description

[0044] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.

[0045] Figure 1 This is a schematic diagram showing the names of building blocks in related technologies;

[0046] Figure 2 A flowchart illustrating the method for rendering building blocks in the electronic map provided in this application. Figure 1 ;

[0047] Figure 3 A comparative diagram showing the rendering of building block names using related technologies and the rendering of building block names in this application;

[0048] Figure 4 A schematic diagram of the identification content of the rendered building blocks provided in this application. Figure 1 ;

[0049] Figure 5 A schematic diagram of the identification content of the rendered building blocks provided in this application. Figure 2 ;

[0050] Figure 6 A schematic diagram of the identification content of the rendered building blocks provided in this application. Figure 3 ;

[0051] Figure 7 A flowchart illustrating the method for rendering building blocks in the electronic map provided in this application. Figure 2 ;

[0052] Figure 8A schematic diagram of the structure of the rendering device for building blocks in the electronic map provided in this application;

[0053] Figure 9 A schematic diagram of the structure of the electronic device provided in this application.

[0054] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation

[0055] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.

[0056] Application scenario of this application: With the development of autonomous driving technology and high-precision navigation, users' requirements for the accuracy of map information have significantly increased. In map applications, the display of building blocks is key information for users to quickly locate target positions and understand spatial relationships. Related technologies display the names of relevant points of interest within building blocks, such as... Figure 1 As shown; however, in 3D display mode, changes in viewing angle can easily lead to visual misalignment between names and building blocks. In high-density urban areas, this visual misalignment makes it difficult for users to quickly associate specific buildings with their names, potentially leading to misjudgment of location or even incorrect navigation paths. Figure 1 In the meantime, one might mistakenly believe that Company Y is located inside the ABC Building.

[0057] The technical concept of this application is as follows: Based on the floor plan of a visible building block, and using multi-level filtering logic based on the surrounding road information and building attribute information, suitable target floors for rendering are selected in complex environments. The label content of the visible building block is determined based on point of interest data, and the label content is rendered according to the target floor, so that the label content is aligned with the target floor. This achieves accurate matching between the label content of the visible building block and the target floor. In the displayed map page, if the viewing angle changes, causing the display position and orientation of the visible building block to change, the label content will change accordingly, eliminating visual misalignment in 3D scenes. This allows users to quickly and intuitively locate visible buildings in 3D display mode. In navigation scenarios (including but not limited to human driving scenarios, intelligent driving scenarios, high-precision navigation scenarios, and ordinary navigation scenarios), users can accurately identify location points based on the label content, reducing misoperation and improving the user experience of map applications.

[0058] The technical solution of this application and how the technical solution of this application solves the above-mentioned technical problems are described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will now be described with reference to the accompanying drawings.

[0059] Figure 2 This is a flowchart illustrating the building rendering method in the electronic map provided in this application. This method can be applied to electronic devices, such as vehicle-mounted devices and mobile terminals. Figure 2 As shown, the methods for rendering building blocks in electronic maps include:

[0060] S201. In 3D display mode, determine the candidate roads corresponding to the visible building blocks based on map data.

[0061] The 3D display mode refers to displaying some map elements as 3D models on the current map page; the current map page can be a normal navigation page, a lane-level navigation page, or a map browsing page.

[0062] Map data describes the spatial location, geometric shape, and other attribute information of geographic features (buildings, roads, mountains, water systems, etc.); a building block is a three-dimensional model of one or more buildings; visible building blocks are those displayed on the current map page, that is, the building blocks displayed on the current map page and visible to the user.

[0063] Candidate roads are roads near the visible building blocks; there are multiple candidate roads; for example, roads within the area where the visible building blocks are located.

[0064] Based on map data and view parameters of the current map page, determine the visible building blocks under the current map page. There must be at least one visible building block. For each visible building block, determine the candidate roads within the area where the visible building block is located based on the location information of the visible building block.

[0065] The view parameters include viewport center point coordinates, viewport size, zoom level, map angle, and map direction. The viewport center point coordinates, viewport size, and zoom level are used to determine the geographic range to be displayed, and the buildings within that geographic range are the visible buildings. The map angle and map direction are used to determine the floor and angle of the visible buildings facing the user.

[0066] Optionally, based on the location information of the visible building blocks and the preset distance, the area where the visible building blocks are located is determined in the map data, and the roads within the area are selected as candidate roads; the value of the preset distance can be set according to actual needs; this application embodiment does not limit the preset distance.

[0067] For example, with a preset distance of 100 meters, candidate roads within 100 meters of the visible building block are obtained, centered on the outer boundary of the visible building block.

[0068] Optionally, based on the location information of the visible building blocks, the first preset number of roads closest to the visible building blocks are selected from the map data, and the selected roads are used as candidate roads; the value of the first preset number can be set according to actual needs, for example, the first preset number can be 5, or the first preset number can be 7; the embodiments of this application do not limit the first preset number.

[0069] Optionally, for each visible building block, the height of each visible building block is obtained. If the height is less than a preset height, the visible building block is removed. If the height of a visible building block is too low, the visible building block is directly filtered out and does not participate in the subsequent process.

[0070] S202. Based on the candidate roads, determine the candidate floor plans for the visible building blocks.

[0071] The visible building block includes multiple floor plans, and the candidate floor plan is a part of these multiple floor plans, serving as an alternative floor plan for rendering; the number of candidate floor plans is at least one.

[0072] In one possible approach, if the number of candidate roads is less than or equal to a second preset number, for each candidate road, the visible floor facing that candidate road is taken as the candidate floor.

[0073] In one possible approach, if the number of candidate roads is not less than a second preset number, then a second preset number of target roads are selected from the multiple candidate roads based on the level and number of lanes of the candidate roads. The target roads are the candidate roads with higher levels and more lanes among the multiple candidate roads; that is, for multiple candidate roads, the candidate roads with higher levels are selected first, and when the levels of multiple candidate roads are the same, the candidate roads with more lanes are selected first.

[0074] For each target road, the visible building blocks facing the target road are selected as candidate building blocks; the value of the second preset number can be set according to the requirements, and the second preset number is less than the first preset number; for example, the second preset number is 3. This application embodiment does not limit the second preset number.

[0075] S203. Select the target floor from the candidate floors based on the attribute information of the candidate floors.

[0076] The attribute information includes: geometric information and / or orientation visibility attributes; the target floor is one of the candidate floors used for rendering.

[0077] In one possible approach, the attribute information includes geometric information; the area of ​​the candidate floor is determined based on the geometric information of the candidate floor, and the target floor is selected from the candidate floor based on the area, for example, the candidate floor with the largest area is selected as the target floor.

[0078] In one possible approach, the attribute information includes an orientation visibility attribute; based on the orientation visibility attribute of the candidate floor, it is determined whether the candidate floor is visible, and the candidate floor whose orientation visibility attribute indicates visibility is taken as the target floor; if none of the candidate floors are visible, then no content is rendered for the visible floor block.

[0079] In one possible approach, the attribute information includes geometric information and orientation visibility attribute; the area of ​​the candidate floor is determined based on the geometric information of the candidate floor, and whether the candidate floor is visible is determined based on the orientation visibility attribute of the candidate floor. The candidate floor with an area that reaches the preset rendering area and an orientation visibility attribute indicating visibility is selected as the target floor; if the area of ​​any candidate floor does not reach the preset rendering area, or if any candidate floor is not visible, then the visible floor block is not marked with content rendering.

[0080] S204. Based on the point of interest data, determine the identification content of the visible building blocks.

[0081] The data on points of interest includes the type, name, and relationship information of the points of interest; the identifier content is the characteristic content of the visible buildings, which serves to mark the visible buildings.

[0082] In one possible approach, the main point of interest corresponding to the visible building block is determined based on the type and relationship information of the points of interest, and the name of the main point of interest is used as the identifier of the visible building block.

[0083] The identification content includes at least one of the following: the name of the main point of interest, the appearance texture, and the advertising push data. In practical applications, all main points of interest have corresponding names, some main points of interest have appearance textures, such as large buildings and landmark buildings; some main points of interest have advertising push data, such as landmark buildings and commercial buildings that have placed advertisements.

[0084] In one possible approach, based on the type and relationship information of the points of interest, the main point of interest corresponding to the visible building block is determined, the name and appearance texture of the main point of interest are obtained, and the name and appearance texture of the main point of interest are used as the identification content of the visible building block.

[0085] It should be noted that the target floor is the floor facing the road, therefore the target floor is the side elevation of the visible building block.

[0086] In one possible approach, the main point of interest corresponding to the visible building block is determined based on the type and relationship information of the points of interest. The name and advertising data of the main point of interest are then obtained, and the name and advertising data of the main point of interest are used as the identifier content of the visible building block. The advertising data can be text and image data or advertising animation.

[0087] In one possible approach, the main point of interest corresponding to the visible building block is determined based on the type and relationship information of the point of interest, and the name, appearance texture, and advertising push data of the main point of interest are obtained.

[0088] S205. Render the signage content based on the target floor.

[0089] Specifically, the rendering strategy is determined based on the target floor and the signage content, and the signage content is rendered on the target floor according to the rendering strategy.

[0090] It should be noted that when displaying the marker content on the target floor, aligning the marker content with the visible building blocks, the marker content will move with the target floor as the view parameters on the current map page change. For example, if the view parameters change the viewing direction, the angle between the normal vector of the target floor and the viewing direction will change, and the marker content will be rendered on the target floor, causing the orientation of the marker content to change accordingly.

[0091] In one possible approach, the identification content includes a name; the display direction is determined based on the size of the target floor, the arrangement direction of the name (horizontal or vertical) is determined according to the display direction, and the name is rendered on the target floor according to the arrangement direction of the name, so that users can see it on the current map page: the name of the building block is displayed on the target floor of the visible building block.

[0092] Optionally, the identifier includes a name and determines the number of characters in the name. If the number of characters exceeds the preset number, it indicates that the name is too long, and the visible block is removed without proceeding with the subsequent process. The preset number of characters can be set according to actual needs.

[0093] Optionally, the identification content includes a name, which is rendered in a vertical arrangement, such as in the center or left of the target floor. If the width of the target floor is greater than its height, it can be rendered in a horizontal arrangement, such as in the center or left of the target floor.

[0094] In practical applications, the rendering area of ​​the name is kept at a certain distance from the boundary of the target floor. For example, there is a display distance of one character between the rendering area and the boundary of the target floor, which creates a white space visual effect and improves the aesthetics.

[0095] For example, such as Figure 3 As shown, related technologies display building names in the form of points of interest. In a 3D scene, changes in the pitch or horizontal view can cause the name to not match the actual building well, resulting in visual misalignment and making it impossible to accurately and intuitively locate the building based on its name. The embodiments of this application render the building name on the target floor. In a 3D scene, the name is always displayed on the target floor regardless of changes in the pitch or horizontal view, avoiding the problem of visual misalignment. The rendering method proposed in this application can accurately reflect the building name, making it easy for users to quickly, accurately, and intuitively locate the building in 3D display mode.

[0096] In one possible approach, the identifier includes a name and an appearance texture; alternatively, the name and appearance texture are merged to obtain a target texture; for example, the appearance texture is used as the background and the name as the foreground, and the target texture is obtained by merging; the target texture is then rendered on the target floor.

[0097] Optionally, an appearance map is rendered on the target floor, a display area is defined above the visible floor block, and a name is rendered in the display area; or, an appearance map is rendered on the target floor, and a name is rendered on the top floor of the visible floor block.

[0098] When the label includes both the name and the appearance texture, users can view the name and actual appearance of the visible building blocks on the current map page.

[0099] In one possible approach, the identification content includes the name and ad push data; the name is rendered on the target floor, a display area is defined above the visible building, and ad push data is rendered in the display area; or, an appearance texture is rendered on the target floor, and ad push data is rendered on the top floor of the visible building, so that users can view the name of the visible building and the corresponding ad push on the current map page.

[0100] In one possible approach, the identifier includes a name, appearance texture, and advertising push data. The name and appearance texture are merged to obtain a target texture, which is then rendered on the target floor. The advertising push data is displayed in the display area above the visible floor block or on the top floor of the visible floor block.

[0101] Optionally, the visible building blocks can be rendered based on a first preset color, which can be blue, gray, or other colors. In addition, when the identification content includes a name, the rendering area corresponding to the name can be rendered according to a second preset color, for example, the name is displayed in a blue rendering area.

[0102] The building rendering method in the electronic map provided in this application embodiment, in 3D display mode, determines candidate building surfaces of visible buildings based on candidate roads corresponding to the visible buildings, selects target building surfaces from the candidate building surfaces based on the attribute information of the candidate building surfaces, determines the label content based on point of interest data, and renders the label content on the target building surface. Through multi-level filtering using candidate roads and attribute information, the target building surface is obtained, ensuring that a suitable target building surface for rendering is selected even in complex environments. The label content of the visible building is determined based on point of interest data, and the label content is rendered based on the target building surface, aligning the label content with the target building surface. This achieves precise matching between the label content of the visible building and the target building surface. In the displayed map page, if the viewing angle changes, causing changes in the display position and orientation of the visible building, the label content changes accordingly, eliminating visual misalignment in 3D scenes. This facilitates users in quickly and intuitively locating visible buildings in 3D display mode. In navigation scenarios, users can accurately identify location points based on the label content, reducing misoperation and improving the user experience of map applications.

[0103] In some embodiments, determining candidate floor plans of visible blocks based on candidate roads includes: selecting a target road from the candidate roads based on the grade and number of lanes of the candidate roads; and selecting floor plans of visible blocks facing the target road as candidate floor plans.

[0104] Among them, the road grade is used to define the function and importance of the road. For example, expressways and highways are the first grade, main roads are the second grade, and secondary roads are the third grade; the number of lanes of a road is the number of lanes included in the road.

[0105] Specifically, if the number of candidate roads is less than or equal to the second preset number, all candidate roads are used as target roads; if the number of candidate roads is greater than the second preset number, the second preset number of target roads are selected from the candidate roads according to their grade and number of lanes; if the grade of the target road is higher than the grade of the unselected candidate roads, or if the grade of the target road is the same as the grade of the unselected candidate roads, the number of lanes of the target road is higher than the number of lanes of the unselected candidate roads; the floors of visible building blocks facing the target roads are used as candidate floors.

[0106] In the above embodiments, the target road is determined according to the grade and number of lanes of the candidate road, and the building facing the target road is used as the candidate building. This makes the display direction of the signage content match the road environment of the visible building blocks, which makes it easier for users to intuitively locate visible building blocks in complex road networks.

[0107] In some embodiments, selecting a target road from candidate roads based on the candidate road's grade and number of lanes includes: determining the importance score of the candidate roads based on their grade and number of lanes; and selecting a target road from the candidate roads based on the importance score.

[0108] The importance score reflects the importance of the candidate road. The higher the road grade and the more lanes, the higher the importance score. In practical applications, roads with higher importance scores have more traffic or faster speeds.

[0109] Specifically, for each candidate road, a corresponding grade score is determined based on the road's grade; the higher the grade, the higher the grade score. The grade score and the number of lanes are weighted and summed using a first preset weight and a second preset weight to obtain an importance score. The sum of the first preset weight and the second preset weight is 1, and the first preset weight is greater than the second preset weight. This means that the grade of the candidate road is an important consideration, while the number of lanes is a secondary consideration. Candidate roads with higher grades are selected first, and if the grades are the same, candidate roads with more lanes are selected first.

[0110] The specific values ​​of the first preset weight and the second preset weight can be set according to actual needs, and this application embodiment does not limit them.

[0111] Multiple candidate roads are sorted in descending order of importance score to obtain a candidate road sequence. The second preset number of target roads ranked first in the candidate road sequence are then selected.

[0112] Optionally, the importance score of a candidate road can be determined based on its grade and the floor width facing the candidate road.

[0113] The higher the grade of the candidate road and the wider the building width facing the candidate road, the greater the importance score of the candidate road.

[0114] Specifically, for each candidate road, a corresponding grade score is determined based on the road's grade, and a width score is determined based on the floor width facing the candidate road. The grade score and width score are weighted and summed using a first preset weight and a third preset weight to obtain an importance score. The sum of the first preset weight and the third preset weight is 1, and the first preset weight is greater than the third preset weight, meaning that the grade of the candidate road is an important consideration, while the floor width facing the candidate road is a secondary consideration. This prioritizes selecting candidate roads with higher grades. If the grades are the same, the candidate road with the wider corresponding floor width is then prioritized.

[0115] In the above embodiments, the importance score of the candidate roads is determined by combining the level and number of lanes of the candidate roads, and the target road is selected according to the importance score, which improves the accuracy of the target road selection in complex road environments. Subsequently, the building surface facing the target road is used as the candidate building surface, so that the display direction of the sign content matches the road environment of the visible building block, making it easier for users to intuitively locate the visible building block.

[0116] In some implementations, the target floor is selected from the candidate floors based on their attribute information. This includes: traversing the candidate floors according to their corresponding importance scores to obtain the floor to be processed; determining whether the attribute information of the floor to be processed meets the rendering conditions; if not, returning to the step of traversing the candidate floors according to their corresponding importance scores to obtain the floor to be processed; if it meets the conditions, the floor to be processed is selected as the target floor.

[0117] Among them, the importance score of the candidate building is the importance score of the target road (the target road that the candidate building faces).

[0118] Specifically, the candidate floors are traversed in descending order of their importance scores, and the traversed candidate floors are treated as floors to be processed; that is, candidate floors with higher importance scores are traversed first.

[0119] Obtain the attribute information of the floor to be processed, determine whether the attribute information meets the rendering conditions, and if the attribute information of the floor to be processed does not meet the rendering conditions, remove the floor to be processed and return to the execution: according to the order of the importance scores of the candidate floors from high to low, perform a loop traversal to continue to determine whether the next candidate floor meets the rendering conditions.

[0120] If the attribute information of the floor to be processed does not meet the rendering conditions, then the floor to be processed will be used as the target floor, and the loop traversal process will end.

[0121] For example, multiple candidate floors are identified as candidate floor f1, candidate floor f2, and candidate floor f3. The process is traversed according to the importance score of each candidate floor. The first floor to be processed, f1, is obtained. The attribute information of f1 is obtained, and it is determined whether the attribute information of f1 meets the rendering conditions. If not, f1 is removed. The process is then repeated, and the second floor to be processed, f2, is obtained. The attribute information of f2 is obtained, and it is determined whether the attribute information of f2 meets the rendering conditions. If it does, f2 is selected as the target floor.

[0122] In some embodiments, the attribute information includes the width of the floor. The attribute information satisfies the rendering conditions and can be a width greater than a preset width. The width of the floor to be processed is obtained from the map data. If the width of the floor to be processed is greater than the preset width, the floor to be processed is taken as the target floor.

[0123] In some embodiments, the attribute information includes: width and orientation visibility attributes; determining whether the attribute information of the floor to be processed meets the rendering conditions includes: if the width of the candidate floor is greater than the preset width and the orientation visibility attribute is a preset attribute, determining that the candidate floor meets the rendering conditions; if the width of the candidate floor is not greater than the preset width, or the orientation visibility attribute is not a preset attribute, determining that the candidate floor does not meet the rendering conditions.

[0124] The "Orientation Visibility" attribute indicates whether the floor to be processed is visible under the current map page's view parameters.

[0125] Optionally, the dot product between the normal vector of the floor to be processed and the view direction vector of the current map page is determined, the dot product is normalized, and the orientation visibility attribute is determined based on the normalized dot product; for example, if the normalized dot product belongs to a preset interval, the orientation visibility attribute is determined to be a preset attribute, and if the normalized dot product does not belong to the preset interval, the orientation visibility attribute is determined to be a preset attribute.

[0126] The preset interval can be set according to actual needs. For example, the preset interval can be [0, 0.5]. When the normalized dot product is 0, the normal vector of the candidate floor is parallel to the viewing direction vector, and all candidate floors are visible. When the normalized dot product is 0.5, the angle between the normal vector of the candidate floor and the viewing direction vector is 60 degrees. The candidate floor has a certain tilt angle relative to the viewing direction, but most areas of the candidate floor are visible.

[0127] It should be noted that if the normalized dot product does not belong to the preset range, it means that the candidate floor has a large tilt angle relative to the line of sight, and the visible area of ​​the candidate floor is small. In order to save hardware resources, the label content is not rendered on the candidate floor.

[0128] Specifically, if the width of a candidate floor is greater than the preset width, and the orientation visibility attribute of the candidate floor is the preset attribute, then the candidate floor is determined to meet the rendering conditions, and the candidate floor is selected as the target floor. The preset width can be set according to specific needs; for example, the preset width can be 5 meters. If the width of a candidate floor is not greater than the preset width, or the orientation visibility attribute of the candidate floor is not the preset attribute, then the candidate floor is determined to meet the rendering conditions, and the candidate floor is removed.

[0129] In the above embodiments, the candidate floor and orientation visibility attributes are combined to determine whether the candidate floor meets the rendering conditions. Through multi-level filtering, the target floor suitable for rendering the signage content is selected in complex environments, thereby improving the display effect of the signage content.

[0130] In some embodiments, determining the identifier content of a visible building block based on point-of-interest (POI) data includes: determining the associated POIs of the visible building block in the POI data; determining the primary POI based on the master-child relationship of the associated POIs; and determining the identifier content of the visible building block based on the name of the primary POI.

[0131] Points of Interest (POIs) are specific locations with unique names and attributes. On a map page, POIs are locations that can be searched and navigated to. In practical applications, POI data can be obtained through Geographic Information Systems (GIS).

[0132] Specifically, the building blocks of visible blocks are identified, and the associated interest points that intersect with the building blocks are identified in the point of interest data. That is, the associated interest points belonging to the building blocks are identified, and all associated interest points belong to the visible building blocks.

[0133] Determine the master-child relationship attribute of the associated interest point. If the master-child relationship attribute is the master attribute, then the associated interest point is taken as the master interest point of the visible building block. If the master-child relationship attribute is the child attribute, then obtain the master attribute associated with the child attribute and take the interest point corresponding to the master attribute as the master interest point of the visible building block.

[0134] In the attributes of the main point of interest, obtain the name of the main point of interest; optionally, use the name of the main point of interest as the identifier of the visible building block; optionally, obtain the appearance texture associated with the main point of interest, and use the name and appearance texture of the main point of interest as the identifier of the visible building block; optionally, obtain the advertising push data associated with the main point of interest, and use the name and advertising push data of the main point of interest as the identifier of the visible building block; optionally, obtain the appearance texture and advertising push data associated with the main point of interest, and use the name, appearance texture, and advertising push data of the main point of interest as the identifier of the visible building block.

[0135] In the above embodiments, filtering by the master-child relationship of points of interest solves the problem of chaotic labeling content when multiple points of interest coexist, ensuring the uniqueness and accuracy of the labeling content, and significantly improving the accuracy and reliability of map page display.

[0136] In some embodiments, rendering signage content based on a target floor includes: determining a display direction and a rendering area based on the signage content, the width and height of the target floor; and rendering the signage content based on the display direction and the rendering area.

[0137] Among them, the width is the horizontal width of the target floor, and the height is the vertical height of the target floor.

[0138] Specifically, if the width of the surface is not greater than the height of the surface, the display direction is determined to be vertical; if the width of the surface is greater than the height of the surface, the display direction is determined to be horizontal.

[0139] Optionally, the identifier includes a name, and the rendering area is adaptively determined in the target floor based on the number of characters, width, and height of the name, ensuring that the rendering area can accommodate the name and does not exceed the boundary of the target floor.

[0140] Optionally, after adaptively determining the rendering area in the target floor based on the number of characters, width, and height of the name, the display font size of the name is determined based on the size of the rendering area and the number of characters in the name. If the display font size is smaller than the preset minimum font size, it means that the display font size is too small, and the name is not rendered in the target floor.

[0141] It should be noted that if the displayed font size is too small, the readability of the displayed name may be poor. In order to save hardware resources, the name will not be rendered in the target floor. That is to say, the rendering area and the displayed font size are adaptively determined according to the number of characters, width and height of the name, to ensure that the rendering area is within the target floor (the name is within the target floor and does not exceed the target floor area), and to ensure that the displayed font size is within the readable range (the displayed font size is greater than or equal to the preset minimum font size and less than the preset maximum font size), so as to avoid the problem of the displayed font size being too small and difficult to read, and the display font size being too large and causing visual impact.

[0142] If the display orientation is vertical, a vertical rendering area that can accommodate the name is determined on the target floor. If the display orientation is horizontal, a horizontal rendering area that can accommodate the name is determined on the target floor. The rendering area is located in the center of the target floor or in the upper left position of the target floor. The name is rendered in the rendering area according to the display orientation.

[0143] There is a certain distance between the rendering area and the boundary of the target floor, so that when the label content is displayed on the target floor, there is a certain amount of white space. For example, the rendering area and the edge of the target floor are set to have a distance corresponding to a preset number of characters (such as 0.5 or 1 character).

[0144] For example, the width is greater than the height, the display direction is horizontal, the rendering area is located in the upper left position of the target floor, and the name is rendered in the rendering area, such as... Figure 4 As shown, the names are displayed in order from left to right.

[0145] For example, the width of the surface is no greater than the height, the display direction is vertical, the rendering area is located in the upper left position of the target floor, and the name is rendered in the rendering area, such as... Figure 5 As shown, the names are displayed in order from top to bottom.

[0146] Optionally, the identification content includes a name and advertising push data. Based on the name, the width and height of the target floor, a rendering area corresponding to the name is determined in the target floor, and a rendering area corresponding to the advertising push data is determined in the top floor. The name is rendered in the rendering area corresponding to the name, and the advertising push data is rendered in the rendering area corresponding to the advertising push data.

[0147] Optionally, the identification content includes a name and an appearance texture. Based on the name, the width and height of the target floor, the rendering area corresponding to the name is determined in the target floor. The appearance texture is rendered in the first layer of the target floor, and the name is rendered in the rendering area in the second layer of the target floor. The second layer is above the first layer, so that the appearance texture of the part of the name is obscured.

[0148] In the above embodiments, the display direction and rendering area are adaptively determined based on the label content, the width and height of the target floor, realizing dynamic adaptation between the label content display and the shape of the target floor. This ensures that the label content is fully displayed within the rendering area, improves the accuracy of map display, and makes it easier for users to intuitively locate visible buildings in 3D display mode, thus enhancing the user experience of map viewing.

[0149] In some embodiments, the identifier content includes a name; rendering the identifier content according to the display orientation and rendering area includes: determining the display scene according to the system time; when the display scene is a nighttime display scene, rendering a name with a halo effect according to the display orientation and rendering area.

[0150] Among them, rendering names with a bloom effect gives the names a glowing display effect.

[0151] Specifically, the system time is the current time. Based on the system time and a preset time interval, the display scenario is determined to be either a daytime display scenario or a nighttime display scenario. For example, if the system time is within the preset time interval, the display scenario is determined to be a nighttime display scenario; if the system time is not within the preset time interval, the display scenario is determined to be a daytime display scenario.

[0152] In nighttime display scenarios, names with halo effects are rendered based on the display direction and rendering area, such as... Figure 6 As shown.

[0153] Optionally, in a nighttime display scenario, the current map page is rendered using a night mode, and a name with a halo effect is rendered based on the display direction and rendering area. By using a night mode to render the current map page, the color saturation of the current map page is reduced, the background is darkened, and a name with a halo effect is rendered, so that the display effect of the current map page matches the actual nighttime scene, thus improving the display effect.

[0154] In the above embodiment, the system time determines whether it is a nighttime display scene. In the nighttime display scene, the name with a halo effect is rendered to highlight the identification content of the visible building blocks, improve the readability of the identification content, and enhance the aesthetics.

[0155] In a specific example, such as Figure 7 As shown, the building rendering method in the electronic map is applied to the building rendering system, which includes a data layer, a data compilation layer, an algorithm processing layer, and a rendering engine. The data layer stores map data, including point-of-interest (POI) data, building data, and road data. The algorithm processing layer determines candidate roads for visible building pairs based on the building and road data; it then determines candidate building faces for the visible buildings based on the candidate roads; and finally, it selects the target building face from the candidate building faces based on their attribute information—that is, it determines the suitable target building face for rendering based on the attribute information of the roads and building faces. The data compilation layer determines the identifier content of the visible building blocks based on the POI data. The rendering engine renders the identifier content on the target building face.

[0156] The building rendering method in the electronic map provided in this application embodiment, in 3D display mode, determines candidate building surfaces of visible buildings based on candidate roads corresponding to the visible buildings, selects target building surfaces from the candidate building surfaces based on the attribute information of the candidate building surfaces, determines the label content based on point of interest data, and renders the label content on the target building surface. Through multi-level filtering using candidate roads and attribute information, the target building surface is obtained, ensuring that a suitable target building surface for rendering is selected even in complex environments. The label content of the visible building is determined based on point of interest data, and the label content is rendered based on the target building surface, aligning the label content with the target building surface. This achieves precise matching between the label content of the visible building and the target building surface. In the displayed map page, if the viewing angle changes, causing changes in the display position and orientation of the visible building, the label content changes accordingly, eliminating visual misalignment in 3D scenes. This facilitates users in quickly and intuitively locating visible buildings in 3D display mode. In navigation scenarios, users can accurately identify location points based on the label content, reducing misoperation and improving the user experience of map applications.

[0157] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0158] Figure 8 A schematic diagram of the structure of the rendering device for building blocks in the electronic map provided in this application, as shown below. Figure 8 As shown, the building rendering device 80 in the electronic map provided in this embodiment includes:

[0159] The road determination module 801 is used to determine candidate roads corresponding to visible building blocks based on map data in 3D display mode.

[0160] The candidate floor area determination module 802 is used to determine the candidate floor areas of visible building blocks based on the candidate roads;

[0161] The target floor determination module 803 is used to select the target floor from the candidate floors based on the attribute information of the candidate floors;

[0162] The identifier content determination module 804 is used to determine the identifier content of visible building blocks based on point of interest data;

[0163] Rendering module 805 is used to render signage content based on the target floor.

[0164] In one possible implementation, the candidate floor determination module 802 is used to select the target road from the candidate roads according to the grade and number of lanes of the candidate roads; and to take the floors facing the target road in the visible building blocks as candidate floors.

[0165] In one possible implementation, the candidate road surface determination module 802 is used to determine the importance score of the candidate road based on the level and number of lanes of the candidate road; and select the target road from the candidate roads based on the importance score.

[0166] In one possible implementation, the target floor determination module 803 is used to traverse the candidate floors according to the importance score of the candidate floors to obtain the floor to be processed.

[0167] Determine whether the attribute information of the floor to be processed meets the rendering conditions;

[0168] If the conditions are not met, return to the step of executing the steps based on the importance score of the candidate floor, traverse the candidate floors, and obtain the steps of the floor to be processed.

[0169] If the conditions are met, the floor to be processed will be designated as the target floor.

[0170] In one possible implementation, the attribute information includes: width and orientation visibility attributes; the target floor determination module 803 is used to determine that the candidate floor meets the rendering conditions if the width of the candidate floor is greater than the preset width and the orientation visibility attribute is the preset attribute; if the width of the candidate floor is not greater than the preset width, or the orientation visibility attribute is not the preset attribute, the candidate floor does not meet the rendering conditions.

[0171] In one possible implementation, the identification content determination module 804 is used to determine the associated points of interest of the visible building blocks in the point of interest data; determine the main point of interest based on the master-child relationship of the associated points of interest; and determine the identification content of the visible building blocks based on the name of the main point of interest.

[0172] In one possible implementation, the label content determination module 804 is used to determine the display direction and rendering area based on the label content, the width and height of the target floor, and to render the label content based on the display direction and rendering area.

[0173] In one possible implementation, the identifier content includes a name; the identifier content determination module 804 is used to determine the display scene based on the system time; when the display scene is a nighttime display scene, a name with a halo effect is rendered based on the display direction and rendering area.

[0174] The rendering device for building blocks in the electronic map provided in this embodiment can execute the rendering method for building blocks in the electronic map provided in the above method embodiment. Its implementation principle and technical effect are similar, and will not be described in detail here.

[0175] Figure 9 A schematic diagram of the structure of the electronic device provided in this application. Figure 9 As shown, the electronic device 90 provided in this embodiment includes at least one processor 901 and a memory 902. Optionally, the device 90 further includes a communication component 903. The processor 901, memory 902, and communication component 903 are connected via a bus.

[0176] In a specific implementation, at least one processor 901 executes computer execution instructions stored in memory 902, causing at least one processor 901 to perform the above-described method.

[0177] The specific implementation process of processor 901 can be found in the above method embodiments, and its implementation principle and technical effect are similar. It will not be repeated here.

[0178] In the above embodiments, it should be understood that the processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in this invention can be directly implemented by a hardware processor, or implemented by a combination of hardware and software modules within the processor.

[0179] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage device.

[0180] The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of illustration, the buses shown in the accompanying drawings are not limited to a single bus or a single type of bus.

[0181] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described method.

[0182] This application also provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the above-described method.

[0183] The aforementioned readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The readable storage medium can be any available medium accessible to a general-purpose or special-purpose computer.

[0184] An exemplary readable storage medium is coupled to a processor, enabling the processor to read information from and write information to the readable storage medium. Of course, the readable storage medium can also be a component of the processor. The processor and the readable storage medium can reside in an Application Specific Integrated Circuit (ASIC). Alternatively, the processor and the readable storage medium can exist as discrete components in the device.

[0185] The division of units is merely a logical functional division; in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.

[0186] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0187] In addition, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.

[0188] If a function is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0189] Those skilled in the art will understand that all or part of the steps of the above-described method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments; and the aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.

[0190] Finally, it should be noted that other embodiments of the invention will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This invention is intended to cover any variations, uses, or adaptations of the invention that follow the general principles of the invention and include common knowledge or customary techniques in the art not disclosed herein, and is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of the invention is limited only by the appended claims.

Claims

1. A method for rendering building blocks in an electronic map, characterized in that, include: In 3D display mode, candidate roads corresponding to visible building blocks are determined based on map data; Based on the candidate roads, determine the candidate floor plans for the visible building blocks; Based on the attribute information of the candidate floors, select the target floor from the candidate floors; Based on the point of interest data, determine the identification content of the visible building blocks; The signage content is rendered based on the target floor.

2. The method according to claim 1, characterized in that, The step of determining the candidate floor plan of the visible building block based on the candidate road includes: The target road is selected from the candidate roads based on their grade and number of lanes. The floors in the visible building blocks that face the target road are selected as candidate floors.

3. The method according to claim 2, characterized in that, The step of selecting a target road from the candidate roads based on their grade and number of lanes includes: The importance score of the candidate road is determined based on its grade and number of lanes. Based on the importance score, the target road is selected from the candidate roads.

4. The method according to claim 1, characterized in that, The step of selecting a target floor from the candidate floor areas based on the attribute information of the candidate floor areas includes: Based on the importance scores of the candidate floors, the candidate floors are traversed to obtain the floors to be processed; Determine whether the attribute information of the floor to be processed meets the rendering conditions; If the conditions are not met, return to the step of traversing the candidate floors according to their importance scores to obtain the floors to be processed. If the conditions are met, the floor to be processed will be designated as the target floor.

5. The method according to claim 4, characterized in that, The attribute information includes: width and orientation visibility attributes; Determining whether the attribute information of the floor to be processed meets the rendering conditions includes: If the width of the candidate floor is greater than the preset width, and the orientation visibility attribute is the preset attribute, then the candidate floor is determined to meet the rendering conditions. If the width of the candidate floor is not greater than the preset width, or the orientation visibility attribute is not a preset attribute, the candidate floor is determined not to meet the rendering conditions.

6. The method according to any one of claims 1 to 5, characterized in that, The step of determining the identifier content of the visible building blocks based on point-of-interest data includes: Identify the associated points of interest (POIs) of the visible building blocks from the POI data; Based on the master-child relationship of the associated interest points, determine the primary interest point; Based on the name of the main point of interest, determine the identification content of the visible building blocks.

7. The method according to any one of claims 1 to 5, characterized in that, The rendering of the signage content based on the target floor includes: The display direction and rendering area are determined based on the content of the label and the width and height of the target floor. The identification content is rendered according to the display orientation and the rendering area.

8. The method according to claim 7, characterized in that, The identifier content includes a name; rendering the identifier content according to the display orientation and the rendering area includes: The display scene is determined based on the system time; When the display scene is a nighttime display scene, the name with a halo effect is rendered according to the display direction and the rendering area.

9. A device for rendering building blocks in an electronic map, characterized in that, The device includes: The road determination module is used to determine candidate roads corresponding to visible building blocks based on map data in 3D display mode; The candidate floor plan determination module is used to determine the candidate floor plans of the visible building blocks based on the candidate roads; The target floor determination module is used to select a target floor from the candidate floor areas based on the attribute information of the candidate floor areas; The identification content determination module is used to determine the identification content of the visible building blocks based on the point of interest data; The rendering module is used to render the signage content based on the target floor.

10. An electronic device / computer-readable storage medium / computer program product, characterized in that, The electronic device includes: a processor, and a memory communicatively connected to the processor; the memory stores computer-executable instructions; the processor executes the computer-executable instructions stored in the memory to implement the method as described in any one of claims 1 to 8; The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, are used to implement the method as described in any one of claims 1 to 8; The computer program product includes computer execution instructions that, when executed by a processor, implement the method as described in any one of claims 1 to 8.