Methods, apparatus, equipment and products for constructing building models in electronic maps
By acquiring and constructing detailed description data for each floor of a building, building floor models separately, and combining them into a building model, the problem of insufficient floor outline description in existing technologies is solved, achieving high realism and real-time construction effects.
Patent Information
- Application Number
- CN202310115343.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-10
- Publication Date
- 2026-01-30
- Estimated Expiration
- 2043-02-10
AI Technical Summary
Existing technologies cannot effectively describe the outline information of each floor of a building when constructing building models in electronic maps, resulting in insufficient geometric description capabilities of the model.
By acquiring floor description data for each floor of the building, floor models are constructed separately and then combined into a building model, including bottom polygon data, top polygon data, and floor height data. The base polygons are scaled and rotated, and combined with rounded corners and splitting techniques, detailed floor features are constructed.
It improves the realism of building models, can describe floor outline information in detail, and reduces downlink traffic requirements, thus achieving the goal of building models in real time.
Smart Images

Figure CN116257919B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates to the technical field of electronic map, and in particular, to a method and device for constructing a building model in an electronic map. BACKGROUND
[0002] In a 3D display mode, the electronic map needs to construct a real-time model of each building in the electronic map to construct a corresponding building model. In the prior art, a single building model is generated after obtaining the contour data and height data of the building. The single building model has poor geometric shape description capability and cannot usually describe the contour information of each floor of the building. SUMMARY
[0003] To solve the above technical problems or at least partially solve the above technical problems, the present disclosure provides a method and device for constructing a building model in an electronic map.
[0004] In a first aspect, the present disclosure provides a method for constructing a building model in an electronic map, comprising:
[0005] obtaining model data of a building to be constructed, the model data comprising floor description data of each floor in the building to be constructed;
[0006] constructing a model according to the floor description data of each floor to obtain the building model.
[0007] In a second aspect, the present disclosure also provides a display method of an electronic map, comprising:
[0008] determining a building to be constructed on the electronic map;
[0009] constructing a building model for the building according to the method for constructing a building model in an electronic map provided by the present disclosure;
[0010] displaying the constructed building model on the electronic map.
[0011] In a third aspect, the present disclosure also provides a device for constructing a building model in an electronic map, comprising:
[0012] a first obtaining module configured to obtain model data of a building to be constructed, the model data comprising floor description data of each floor in the building to be constructed;
[0013] a first constructing module configured to construct a model according to the floor description data of each floor to obtain the building model.
[0014] In a fourth aspect, the present disclosure provides a display device of an electronic map, comprising:
[0015] a second determining module configured to determine a building to be constructed on the electronic map;
[0016] a second constructing module configured to construct a building model for the building using the construction device of the building model in the electronic map provided by the present disclosure;
[0017] a display module configured to display the constructed building model on the electronic map.
[0018] In a fifth aspect, the present disclosure provides a computer readable storage medium storing a computer program, which is executed by a processor to implement any of the above-mentioned construction method of a building model in an electronic map or display method of an electronic map.
[0019] In a fifth aspect, the present disclosure provides a computer program product for implementing any of the above-mentioned construction method of a building model in an electronic map or display method of an electronic map.
[0020] The construction method of a building model in an electronic map provided by the present disclosure includes obtaining model data of a building to be constructed, wherein the model data includes floor description data of each floor in the building to be constructed, and the building to be constructed can be a single-story building or include more than two floors; and constructing a model according to the floor description data of each floor to obtain the building model. When constructing the building model, the building to be constructed is not constructed as a whole, but is split by floors, a floor model is constructed for each floor, and the building model is a combination result of floor models corresponding to all floors. Since a floor model is constructed for each floor, the details of the building can be described, the problem that the geometric shape description capability of the existing single building model is not strong and the contour information of each floor of the building cannot be described can be solved, and the fidelity of the building model can be improved. BRIEF DESCRIPTION OF DRAWINGS
[0021] The above and other features, advantages, and aspects of the present disclosure will become more apparent by describing in detail exemplary embodiments thereof with reference to the attached drawings in which:
[0022] Figure 1 A flowchart of a construction method of a building model in an electronic map provided by the present disclosure;
[0023] Figure 2 and Figure 3 A schematic diagram of a wall surface construction principle provided by an embodiment of the present disclosure;
[0024] Figure 4 A schematic diagram of determining coordinate values of each vertex of the outer contour of the roof on the X-axis and the Y-axis provided by an embodiment of the present disclosure;
[0025] Figure 5 A flowchart of a floor model construction method of a single floor provided by an embodiment of the present disclosure;
[0026] Figure 6 A flowchart of a display method of an electronic map provided by an embodiment of the present disclosure;
[0027] Figure 7 A structural schematic diagram of a building model construction device in an electronic map provided by an embodiment of the present disclosure;
[0028] Figure 8 A structural schematic diagram of a display device of an electronic map provided by an embodiment of the present disclosure;
[0029] Figure 9 A structural schematic diagram of an electronic device provided by an embodiment of the present disclosure. DETAILED DESCRIPTION
[0030] Embodiments of the present disclosure will be described in more detail by referring to the drawings. Although certain embodiments of the present disclosure are shown in the drawings, it is understood that the present disclosure can be implemented in various forms, and should not be construed as being limited to the embodiments set forth herein, but rather, these embodiments are provided so as to more completely and thoroughly understand the present disclosure. It is understood that the drawings and embodiments of the present disclosure are for exemplary purposes only, and are not intended to limit the scope of protection of the present disclosure.
[0031] It is understood that each step recited in the method embodiments of the present disclosure can be executed in different orders, and / or in parallel. In addition, the method embodiments can include additional steps and / or omit the execution of the steps shown. The scope of the present disclosure is not limited in this respect.
[0032] The term “comprising” and variations thereof as used herein are open-ended, that is, “including but not limited to”. The term “based on” is “based, at least in part, on”. The term “one embodiment” means “at least one embodiment”; the term “another embodiment” means “at least one additional embodiment”; the term “some embodiments” means “at least some embodiments”. Related definitions of other terms will be given in the description below.
[0033] It should be noted that the "first", "second", and the like mentioned in the present disclosure are only used to distinguish different devices, modules or units, and are not used to limit the order or interdependence of the functions performed by these devices, modules or units.
[0034] It should be noted that the "one", "multiple" modification mentioned in the present disclosure is illustrative but not restrictive, and those skilled in the art should understand that unless the context clearly indicates otherwise, it should be understood as "one or more".
[0035] As described in the background, in the 3D display mode of the electronic map, real-time model construction needs to be performed on each building in the electronic map to construct the corresponding building model. In the prior art, real-time model construction is usually performed after obtaining the contour data and height data of the building to generate a single building model, such as a cuboid or a cube building model. The above-mentioned single building model has poor geometric shape description capability and usually cannot describe the contour information of each floor of the building.
[0036] Figure 1 A flowchart of a building model construction method in an electronic map is provided for the embodiments of the present disclosure. The building model construction method in the electronic map can be executed by a building model construction device in the electronic map. The device can be a part of the electronic map and can be implemented by software and / or hardware, and can be integrated on any vehicle-mounted device or mobile terminal with computing capability.
[0037] As shown in Figure 1 , the building model construction method in the electronic map includes:
[0038] S110, obtaining model data of a building to be constructed, the model data including floor description data of each floor in the building to be constructed.
[0039] The building to be constructed can include a single floor or more than two floors, and the floor description data is data describing the characteristic information of a single floor. The floor description data includes but is not limited to one or more of the top shape data, the bottom shape data, the floor height data, whether it has a roof, and whether it has a roof.
[0040] The building model data is a data set formed by the floor description data of different floors.
[0041] Optionally, the terminal can obtain the model data of the building to be constructed from the cloud according to the user operation needs.
[0042] S120, constructing a model according to the floor description data of each floor to obtain a building model.
[0043] The specific implementation method of the step can be various, and the present disclosure does not limit it. In one embodiment, the specific implementation method of the step can include: sequentially constructing the floor model corresponding to each floor in ascending order of floor number, and constructing the floor model of a new floor on the floor model constructed in the previous time from the second floor, and repeating the above process to obtain the building model. Illustratively, the floor model corresponding to the first floor is constructed first, then the floor model corresponding to the second floor is constructed on the floor model corresponding to the first floor, and the above process is repeated until the entire building model is constructed. That is, the construction of the floor model and the superposition of the floor model are carried out simultaneously.
[0044] In another embodiment, the specific implementation method of the step can further include: constructing the floor model corresponding to each floor respectively, and sequentially superimposing the floor model corresponding to each floor in ascending order of floor number after the floor model corresponding to all floors is constructed to obtain the entire building model. That is, the floor model is constructed first, and then the floor model is superimposed.
[0045] The above technical solution obtains model data of a building to be constructed, the building to be constructed includes two or more floors, and the model data includes floor description data of each floor. The model is constructed according to the floor description data of each floor to obtain a building model. When the building model is constructed, the building to be constructed is not constructed as a whole, but is split by floor, and a floor model is constructed for each floor. The building model is a combination result of the floor models corresponding to all floors. Since the floor model corresponding to each floor is constructed, the details of the building can be described, the problem that the geometric shape description ability of the existing single building model is not strong and the contour information of each floor of the building cannot be described can be solved, and the fidelity of the building model can be improved.
[0046] Those skilled in the art can understand that in the field of electronic maps, since the purpose of constructing a building model is to display the appearance of a building, the floor model corresponding to each floor needs to include a wall surface, but the floor model corresponding to each floor does not need to include a roof and eaves. In other words, when the floor model is constructed, the wall surface must be constructed, and the roof and eaves are optional.
[0047] Exemplarily, for a building with N floors and an elevator machine room (where N is a positive integer greater than or equal to 2), the elevator machine room is usually located on the top floor, and the projection of the elevator machine room on the ground is smaller than the projection of the top floor on the ground. The elevator machine room can be regarded as an N+1 floor. If the structures of the 1st floor to the Nth floor are the same. When building a building model for the building with the elevator machine room, the floor model of the Nth floor and the N+1th floor both need to include a roof. However, the floor models of the 1st floor to the N-1th floor do not need to include a roof.
[0048] The floor including the roof can be a bottom floor, a top floor or an intermediate floor, and the present application does not limit this.
[0049] There are various methods for constructing a wall surface of a floor model, and the present application does not limit this. Exemplarily, the floor description data of each floor includes bottom surface polygon data, top surface polygon data and floor height data of each floor; and the "model construction according to the floor description data of each floor" in S120 includes: constructing a wall surface of each floor according to the bottom surface polygon data, the top surface polygon data and the floor height data of each floor.
[0050] If each floor is regarded as a three-dimensional geometric structure, the bottom surface polygon data is data describing the polygon shape and / or position of the bottom surface of the three-dimensional geometric structure. Exemplarily, the bottom surface polygon data can include the position coordinates of a plurality of vertices constituting the outer contour of the bottom surface polygon. The top surface polygon data is data describing the polygon shape and / or position of the top surface of the three-dimensional geometric structure. Exemplarily, the top surface polygon data can include the position coordinates of a plurality of vertices constituting the outer contour of the top surface polygon. Alternatively, the top surface polygon data can be calculated based on the bottom surface polygon data and the floor height data.
[0051] If the bottom surface polygon data includes the position coordinates of a plurality of vertices constituting the outer contour of the bottom surface polygon, and the top surface polygon data includes the position coordinates of a plurality of vertices constituting the outer contour of the top surface polygon, the wall surface is constructed by constructing a plurality of wall surface triangles based on the position coordinates of the plurality of vertices constituting the outer contour of the bottom surface polygon and the position coordinates of the plurality of vertices constituting the outer contour of the top surface polygon. The construction of the plurality of wall surface triangles is prior art, and the present application does not repeat it.
[0052] In the prior art, in order to display the shape features of each floor of a building in an electronic map, there is another method of constructing a relatively complex building model including the shape features of each floor in advance, and storing the constructed building model in the cloud. When the terminal electronic map needs to display the building model, the building model is downloaded from the cloud in real time. Although this method can better describe the contour information of each floor of the building, the downlink traffic of downloading the pre-constructed model is too large, and it is impossible to achieve real-time display of the building model on the terminal device. By setting the floor description data of each floor to include the bottom polygon data, the top polygon data and the floor height data of each floor, the work of constructing the model is distributed to the terminal, and the terminal obtains the model data of the building from the cloud as needed, and then constructs the model. Moreover, the model data of the building is re-planned, so that only a small amount of necessary basic data for model construction is obtained from the cloud. In this way, the downlink traffic can be reduced, and the purpose of real-time construction of the building model can be achieved.
[0053] In the above technical solution, the shape, size and other attributes of the bottom polygon and the top polygon can be the same or different. The above technical solution constructs the wall surface of each floor according to the bottom polygon data, the top polygon data and the floor height data of each floor, which can construct the floor model for various types of floors (such as a floor with a cuboid shape, a floor with a top polygon rotated relative to a bottom polygon, a floor with a top polygon offset relative to a bottom polygon, etc.). The constructed floor model can fully reflect the appearance contour features of the floor.
[0054] In one embodiment, the model data further includes at least one reference polygon data on which the building depends, the bottom polygon data of each floor is at least one of a first scaling factor, a first rotation angle and a first offset amount of the bottom polygon of each floor relative to the reference polygon; and the top polygon data of each floor is at least one of a second scaling factor, a second rotation angle and a second offset amount of the top polygon of each floor relative to the reference polygon.
[0055] Optionally, the reference polygon data comprises position coordinates of a plurality of vertices surrounding an outer contour of the reference polygon; the wall surface of each floor is constructed according to the floor bottom surface polygon data, the floor top surface polygon data and the floor height data, comprising: determining position coordinates of a plurality of vertices surrounding an outer contour of the floor bottom surface polygon according to the position coordinates of the plurality of vertices surrounding the outer contour of the reference polygon, and at least one of the first scaling factor, the first rotation angle and the first offset; determining position coordinates of a plurality of vertices surrounding an outer contour of the floor top surface polygon according to the position coordinates of the plurality of vertices surrounding the outer contour of the reference polygon, at least one of the second scaling factor, the second rotation angle and the second offset, and the floor height data; and constructing the wall surface of each floor according to the position coordinates of the plurality of vertices surrounding the outer contour of the floor bottom surface polygon, and the position coordinates of the plurality of vertices surrounding the outer contour of the floor top surface polygon.
[0056] By setting the model data to further comprise at least one reference polygon data relied on by the building, the floor bottom surface polygon data of each floor is at least one of a first scaling factor, a first rotation angle and a first offset of a bottom surface polygon of each floor relative to the reference polygon; and the floor top surface polygon data of each floor is at least one of a second scaling factor, a second rotation angle and a second offset of a top surface polygon of each floor relative to the reference polygon, the model data of the building is further compressed, so as to further reduce the downlink traffic and achieve the purpose of constructing the building model in real time.
[0057] On the basis of the above technical solutions, the reference polygon data further comprises a rounded corner identifier for identifying whether each vertex surrounding the outer contour of the reference polygon is a rounded corner; and the method further comprises: when it is determined according to the rounded corner identifier that a vertex surrounding the outer contour of the reference polygon is a rounded corner, performing rounded corner processing on the corresponding vertices of the floor bottom surface polygon and the floor top surface polygon. Since in practice, there is no edge line between the walls of different orientations of some floors, but a rounded corner is used for transition. Here, the rounded corner processing is to replace the sharp corners of the corresponding vertices of the floor bottom surface polygon and the floor top surface polygon with rounded corners. When constructing the wall surface of the floor, the floor bottom surface polygon and the floor top surface polygon after the rounded corner processing need to be used for construction. Finally, the wall surface of the floor constructed has no edge line at the corresponding position and has a rounded corner feature. In this way, the building without obvious edge lines (such as the floor which can be regarded as a rotating body) can be depicted. In addition, if the roof or eaves of the floor need to be constructed subsequently, the floor bottom surface polygon and the floor top surface polygon after the rounded corner processing need to be used for construction, so that the roof or eaves constructed also has a rounded corner feature.
[0058] On the basis of the above technical solutions, the method further comprises: splitting a vertex of the floor bottom surface polygon and the floor top surface polygon which is not subjected to the rounded corner processing to obtain two sub-vertices, and the two sub-vertices correspond to different wall surface normals respectively.
[0059] wherein the two sub-vertices respectively correspond to different wall normals, means that the two sub-vertices belong to walls of different orientations.
[0060] Figure 2 and Figure 3 is a schematic diagram of constructing a wall surface according to an embodiment of the present disclosure. Referring to Figure 2 , ABCD is a top polygon, and EFGH is a bottom polygon. If, according to the reference polygon data corresponding to the bottom polygon and the top polygon, any vertex does not need to be rounded, i.e., any vertex in the bottom polygon and the top polygon does not need to be rounded, the four vertices of the top polygon are respectively split, and each vertex becomes two sub-vertices after splitting. Referring to Figure 3 , vertex A is split into A1 and A2, vertex B is split into B1 and B2, vertex C is split into C1 and C2, and vertex D is split into D1 and D2. The four vertices of the bottom polygon also need to be split, and each vertex becomes two sub-vertices after splitting. Continue to refer to Figure 3 , vertex E is split into E1 and E2, vertex F is split into F1 and F2, vertex G is split into G1 and G2, and vertex H is split into H1 and H2. For any vertex, the coordinates of the two sub-vertices after splitting are the same, but belong to different walls. Exemplarily, A1 belongs to the A1D1H1E1 wall, and A2 belongs to the A2B1F1E2 wall.
[0061] It should be noted that A1 and A2 are obtained by splitting vertex A, and A1 and A2 have the same coordinates in space, i.e., A1 and A2 coincide in space. In Figure 3 , A1 and A2 are separated by a certain distance in order to help the reader understand the situation that “vertex A is split into A1 and A2”. Other vertices are similar and will not be described here.
[0062] Those skilled in the art can understand that in practice, a light source (such as the sun) illuminates a building at a certain angle. If the walls of different orientations in the building share an edge line, the brightness and darkness of the two walls sharing the edge line can have a large difference, showing a sudden change effect. If the walls of different orientations in the building are connected by a round corner, the walls connected by the round corner often include a transition area from bright to dark, showing a gradual change effect.
[0063] Here, the vertices in the bottom polygon and the top polygon that are not rounded are split, which can facilitate subsequent rendering of the constructed building model, so that the wall surface presents the correct lighting effect.
[0064] It is also emphasized that in constructing the wall surface of the floor, the vertex used can be the vertex before splitting (i.e. the vertex enclosing the outer contour of the bottom polygon and the top polygon) or the vertex after splitting (i.e. the sub-vertex). If the vertex after splitting (i.e. the sub-vertex) is used, since the two sub-vertices of the same vertex after splitting have the same coordinates, in constructing the wall surface, the rationality of forming the wall surface should be considered. For example, the wall surface should not include a degenerate triangle formed by two sub-vertices split from the same vertex and other vertices. For example, see Figure 3 In constructing the wall surface, combinations such as B1B2F1F2 need to be skipped.
[0065] In another embodiment, optionally, the floor description data of each floor includes the bottom polygon data of each floor and the floor height data; and the "model construction according to the floor description data of each floor" in S120 includes: for any floor, taking the bottom polygon as a reference pattern, extending the edges of the reference pattern away from the ground, and controlling the extension height to be equal to the floor height value, thereby obtaining the wall surface of the floor.
[0066] Optionally, the floor description data of each floor further includes wall surface style data and / or wall surface color data. The wall surface style data includes but is not limited to patterns, textures, etc. The wall surface color data includes but is not limited to color and brightness information, etc. After the wall surface of each floor is constructed, the wall surface of each floor is rendered based on the wall surface style data and / or the wall surface color data. This setting can make the wall surface more realistic.
[0067] On the basis of the above technical solutions, in one embodiment, optionally, the floor description data further includes a roof identifier, and the model construction according to the floor description data of each floor further includes: constructing the roof of the floor according to the top polygon data of the floor with the roof identifier. Optionally, the roof is constructed by constructing a roof split triangle based on the position coordinates of the plurality of vertices enclosing the outer contour of the top polygon, thereby obtaining the entire roof. The construction of the roof split triangle is prior art, and the present application does not limit this.
[0068] Optionally, the floor description data of each floor further includes roof style data and / or roof color data. The roof style data includes but is not limited to patterns, textures, etc. The roof color data includes but is not limited to color and brightness information, etc. After the roof of each floor is constructed, the roof of each floor is rendered based on the roof style data and / or the roof color data. This setting can make the roof more realistic.
[0069] In another embodiment, optionally, the floor description data further includes a roof identifier, and the roof of each floor is constructed according to the roof style data and / or the roof color data. This setting can make the roof more realistic.
[0070] Among them, the characteristic data of the eaves refers to the data describing the characteristics of the eaves. For example, the characteristic data of the eaves includes at least one of the following: eaves height data, width data, eaves style data, and eaves color data.
[0071] Optionally, "constructing eaves for floors with eaves identification based on eaves feature data" includes determining the position coordinates of the vertices of the eaves' outer contour shape based on the eaves feature data; and constructing eaves for floors with eaves identification based on the position coordinates of the vertices of the eaves' outer contour shape.
[0072] Optionally, "determining the position coordinates of the vertices of the outer contour shape of the eaves based on the characteristic data of the eaves" includes determining the position coordinates of the vertices of the outer contour shape of the eaves based on the characteristic data of the eaves and the position coordinates of multiple vertices that form the outer contour of the polygonal top surface.
[0073] For example, if the X-axis and Y-axis are set to be parallel to the ground and the Z-axis to be perpendicular to the ground, for each vertex of the top polygon, the angle bisectors at each vertex of the top polygon (here referring to the vertices before splitting) are determined respectively. The width of the eaves is projected onto the aforementioned angle bisectors, and the coordinate values of each vertex of the outer contour shape of the eaves on the X-axis and Y-axis can be obtained. Figure 4 A schematic diagram illustrating the principle of determining the coordinate values of each vertex of the outer contour of a roof eaves on the X and Y axes, as provided in an embodiment of this disclosure. See also... Figure 4 Let ABCD be the top polygon, and ∠BAD have an angle bisector named n. Projecting the width of the eaves onto the angle bisector n yields point K. This is achieved by moving side AB a parallel distance m towards the center of the building. After this movement, the line A'B' containing side AB intersects the angle bisector n at point K. Point K is the vertex forming the outer contour of the eaves. Given the coordinates of point A, we can calculate the X and Y coordinates of K using the distance m. Combining the 2D outline of the eaves with the coordinates of the vertices of the top polygon, we can obtain the Z-axis coordinates of the vertices of the eaves' outer contour. Thus, we can determine the position coordinates of the vertices of the eaves' outer contour.
[0074] Based on the position coordinates of the vertices of the eaves' outer contour shape, eaves are constructed for floors with eaves markings. Specifically, triangulation can be used to obtain the entire eaves in its initial form. Then, style and color data are used to render the entire eaves in its initial form to obtain the entire eaves in its final form.
[0075] Figure 5 A flowchart illustrating a method for constructing a floor model of a single floor as provided in an embodiment of this disclosure. Figure 5 The methods provided can construct floor models for a single floor. For buildings with multiple floors, the process is performed separately for each floor. Figure 5The method provided allows you to obtain floor models for each floor. Combining these floor models in order yields a building model.
[0076] See Figure 5 The methods for constructing building models in this electronic map may include:
[0077] S210. Extract the floor description data of the floors to be constructed from the model data of the building to be constructed.
[0078] The floor description data includes the bottom polygon data, top polygon data, and floor feature data for each floor.
[0079] Optionally, the base polygon data includes the number of vertices, vertex coordinates, vertex fillet identifiers, and whether the base polygon is a convex polygon. The top polygon data includes the number of vertices, vertex coordinates, vertex fillet identifiers, and whether the top polygon is a convex polygon. Alternatively, the base polygon data includes a first scaling factor, a first rotation angle, and a first offset of the base polygon relative to the reference polygon; the top polygon data includes a second scaling factor, a second rotation angle, and a second offset of the top polygon relative to the reference polygon.
[0080] Floor element data includes the floor number in the building, floor height, whether a roof icon needs to be generated, and whether an eaves icon needs to be generated, etc.
[0081] The purpose of setting the bottom polygon data, including whether the bottom polygon is a convex polygon, and the top polygon data, including whether the top polygon is a convex polygon, is to determine how to use the method of dividing triangles to form walls, roofs, or eaves.
[0082] S220. Clean the vertices in the bottom polygon and the top polygon, and remove collinear points.
[0083] In the initial map data processing flow, the raw data may experience accuracy loss after undergoing multiple processing steps on the server, causing points that were not originally collinear to become collinear. For example, three points might appear on a straight line. This step removes the middle point on the same straight line, leaving only two vertices on each line. This setup improves the speed of subsequent building model construction.
[0084] S230. When the rounded corner indicator prompts that rounding is required, round the vertices that need to be rounded.
[0085] S240, Split the vertices that do not need to be rounded.
[0086] S250: Based on the rounded vertices and the split vertices, construct the walls of the floor.
[0087] S260. If the identifier requires the generation of a roof, construct the roof of the floor based on the rounded vertices and the split vertices in the top polygon.
[0088] S270. When it is necessary to generate eaves, the vertex of the outer contour shape of the eaves is determined based on the feature data of the eaves, and the eaves of the floor are constructed based on the vertex of the outer contour shape of the eaves.
[0089] It is important to emphasize that in S250-S260, if the triangulation method is used for construction, it is necessary to avoid using sub-vertices split from the same vertex to construct degenerate triangles.
[0090] The above technical solution proposes a novel method for building model construction, which can solve the problem of the limited shape of existing single buildings, while also describing combined models of complex geometries. It can also achieve the effect of exporting models from design software. Furthermore, from the perspective of downlink traffic, the required building model data size is very small, which is beneficial for achieving the goal of real-time building model construction at the terminal.
[0091] Figure 6 This is a flowchart illustrating a method for displaying an electronic map according to an embodiment of the present disclosure. This method can be executed by an electronic map display device, which can be part of the electronic map and can be implemented using software and / or hardware, and can be integrated into any vehicle-mounted device or mobile terminal with computing capabilities. The method includes:
[0092] S310. Determine the buildings to be constructed on the electronic map.
[0093] S320. The method for constructing building models in an electronic map according to the embodiments of this disclosure constructs building models for buildings.
[0094] S330. Display the constructed building model on the electronic map.
[0095] In the above technical solution, since the building model displayed by the electronic map display method is constructed by the building model construction method in the electronic map provided in the embodiments of this disclosure, it has the same or corresponding beneficial effects as the building model construction method in the electronic map, which will not be elaborated here.
[0096] Based on the same inventive concept, this disclosure also provides a device for constructing building models in an electronic map. This device can execute the steps of any of the electronic map display methods provided in this disclosure, and has the corresponding functional modules and beneficial effects of the method. This device can be implemented using software and / or hardware, and can be integrated into any terminal device with computing capabilities.
[0097] Figure 7 This is a schematic diagram of a device for constructing building models in an electronic map, provided as an embodiment of this disclosure. (Refer to...) Figure 7 The building model construction device in this electronic map includes:
[0098] The first acquisition module 410 is used to acquire model data of the building to be constructed, the model data including floor description data of each floor in the building to be constructed;
[0099] The first construction module 420 is used to construct a model based on the floor description data of each floor to obtain the building model.
[0100] Furthermore, the floor description data for each floor includes the bottom polygon data, top polygon data, and floor height data for each floor;
[0101] The first building module 420 is used for:
[0102] The walls of each floor are constructed based on the bottom polygon data, top polygon data, and floor height data of each floor.
[0103] Furthermore, the model data also includes at least one reference polygon data on which the building depends, wherein the bottom polygon data of each floor is at least one of a first scaling factor, a first rotation angle, and a first offset relative to the reference polygon; and the top polygon data of each floor is at least one of a second scaling factor, a second rotation angle, and a second offset relative to the reference polygon.
[0104] Furthermore, the reference polygon data includes the position coordinates of multiple vertices that enclose the outer contour of the reference polygon;
[0105] The first building module 420 is used for:
[0106] Based on the position coordinates of multiple vertices of the outer contour of the reference polygon, and at least one of the first scaling factor, the first rotation angle, and the first offset, determine the position coordinates of multiple vertices that form the outer contour of the bottom polygon.
[0107] The position coordinates of multiple vertices forming the outer contour of the top surface polygon are determined based on the position coordinates of multiple vertices of the outer contour of the reference polygon, at least one of the second scaling factor, the second rotation angle, and the second offset, and the floor height data.
[0108] The walls of each floor are constructed based on the position coordinates of multiple vertices that form the outer contour of the bottom polygon and the position coordinates of multiple vertices that form the outer contour of the top polygon.
[0109] Furthermore, the reference polygon data also includes a rounded corner identifier for identifying whether each vertex forming the outer contour of the reference polygon is rounded; the device further includes a rounding module, which is used for:
[0110] When it is determined from the rounded corner identifier that there are vertices that form the outer contour of the reference polygon as rounded corners, the corresponding vertices of the bottom polygon and the top polygon are rounded.
[0111] Furthermore, the device also includes a splitting module, which is used for:
[0112] The vertices of the bottom polygon and the top polygon that are not rounded are split to obtain two sub-vertices, and the two sub-vertices correspond to different wall normals.
[0113] Furthermore, the floor description data also includes roof identification, and the first construction module 420, in the process of building the model based on the floor description data of each floor, is further configured to:
[0114] The roof of the floor is constructed based on the top polygon data of the floor with the roof identifier.
[0115] Furthermore, the floor description data also includes eaves identifiers and eaves feature data, and the first construction module 420 is further used for:
[0116] After constructing the walls of each floor, eaves are constructed for the floors with eaves markings based on the eaves feature data.
[0117] Furthermore, the feature data of the eaves includes at least one of the following: eaves height data, width data, style data, and color data.
[0118] Based on the same inventive concept, this disclosure also provides an electronic map display device. This device can execute the steps of any of the electronic map display methods provided in this disclosure, and has the corresponding functional modules and beneficial effects of the method. This device can be implemented using software and / or hardware, and can be integrated into any terminal device with computing capabilities.
[0119] Figure 8 This is a schematic diagram of the structure of an electronic map display device provided in an embodiment of this disclosure. (Refer to...) Figure 8 The display device for the electronic map includes:
[0120] The second determining module 510 is used to determine the building to be constructed on the electronic map;
[0121] The second construction module 520 is used to construct a building model for the building using the building model construction device in the electronic map provided in this embodiment of the disclosure;
[0122] Display module 530 is used to display the constructed building model on the electronic map.
[0123] Figure 9 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present disclosure. It is used to exemplarily illustrate an electronic device for implementing any of the methods for constructing building models in an electronic map or displaying an electronic map in an embodiment of the present disclosure, and should not be construed as a specific limitation on the embodiments of the present disclosure.
[0124] like Figure 9 As shown, the electronic device 700 may include a processor (e.g., a central processing unit, a graphics processor, etc.) 701, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 702 or a program loaded from a storage device 708 into a random access memory (RAM) 703. The RAM 703 also stores various programs and data required for the operation of the electronic device 700. The processor 701, ROM 702, and RAM 703 are interconnected via a bus 704. An input / output (I / O) interface 705 is also connected to the bus 704.
[0125] Typically, the following devices can be connected to I / O interface 705: input devices 706 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 707 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 708 including, for example, magnetic tapes, hard disks, etc.; and communication devices 709. Communication device 709 allows electronic device 700 to communicate wirelessly or wiredly with other devices to exchange data. Although an electronic device 700 with various devices is shown, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively.
[0126] In particular, according to embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device 709, or installed from a storage device 708, or installed from a ROM 702. When the computer program is executed by the processor 701, it can perform the functions defined in any of the electronic map display methods provided in embodiments of this disclosure.
[0127] It should be noted that the computer-readable medium described in this disclosure can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this disclosure, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this disclosure, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.
[0128] In some implementations, the client and server can communicate using any currently known or future-developed network protocol such as HTTP (Hypertext Transfer Protocol), and can interconnect with digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include local area networks (“LANs”), wide area networks (“WANs”), the Internet (e.g., the Internet of Things), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future-developed networks.
[0129] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.
[0130] The aforementioned computer-readable medium carries one or more programs that, when executed by the electronic device, cause the electronic device to:
[0131] Obtain model data of the building to be constructed, the model data including floor description data of each floor in the building to be constructed;
[0132] The building model is obtained by constructing a model based on the floor description data of each floor.
[0133] or,
[0134] Identify the buildings to be constructed on the electronic map;
[0135] A building model is constructed for the building according to the building model construction method in the electronic map provided in this disclosure;
[0136] The constructed building model is displayed on the electronic map.
[0137] In embodiments of this disclosure, computer program code for performing the operations of this disclosure can be written in one or more programming languages or a combination thereof. These programming languages include, but are not limited to, object-oriented programming languages such as Java, Smalltalk, and C++, as well as conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on a computer, partially on a computer, as a standalone software package, partially on a computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0138] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0139] The units described in the embodiments of this disclosure can be implemented in software or hardware. The names of the units are not, in some cases, intended to limit the specific unit.
[0140] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: Field Programmable Gate Arrays (FPGAs), Application-Specific Integrated Circuits (ASICs), Application Standard Products (ASSPs), System-on-Chip (SoCs), Complex Programmable Logic Devices (CPLDs), and so on.
[0141] In the context of this disclosure, a computer-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable medium can be a computer-readable signal medium or a computer-readable storage medium. A computer-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of computer-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0142] The above description is merely a preferred embodiment of this disclosure and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of this disclosure is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features disclosed in this disclosure that have similar functions.
[0143] Furthermore, while the operations are described in a specific order, this should not be construed as requiring these operations to be performed in the specific order shown or in a sequential order. In certain environments, multitasking and parallel processing may be advantageous. Similarly, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of this disclosure. Certain features described in the context of individual embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented individually or in any suitable sub-combination in multiple embodiments.
[0144] Although the subject matter has been described using language specific to structural features and / or methodological logic, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. Rather, the specific features and actions described above are merely illustrative examples of implementing the claims.
Claims
1. A method for constructing a building model in an electronic map, comprising: obtaining model data of a building to be constructed, the model data comprising floor description data of each floor in the building to be constructed and at least one reference polygon data on which the building depends; the floor description data of each floor comprising bottom polygon data, top polygon data and floor height data of each floor; the bottom polygon data of each floor is at least one of a first scaling factor, a first rotation angle and a first offset of a bottom polygon of each floor relative to the reference polygon; the top polygon data of each floor is at least one of a second scaling factor, a second rotation angle and a second offset of a top polygon of each floor relative to the reference polygon; constructing a model according to the floor description data of each floor to obtain the building model; wherein the model construction according to the floor description data of each floor comprises: constructing a wall surface of each floor according to the bottom polygon data, the top polygon data and the floor height data of each floor.
2. The method of claim 1, wherein, the reference polygon data comprises position coordinates of a plurality of vertices of an outer contour of the reference polygon; the construction of the wall surface of each floor according to the bottom polygon data, the top polygon data and the floor height data of each floor comprises: determining position coordinates of a plurality of vertices of an outer contour of the bottom polygon according to the position coordinates of the plurality of vertices of the outer contour of the reference polygon and at least one of the first scaling factor, the first rotation angle and the first offset; determining position coordinates of a plurality of vertices of an outer contour of the top polygon according to the position coordinates of the plurality of vertices of the outer contour of the reference polygon, at least one of the second scaling factor, the second rotation angle and the second offset, and the floor height data; constructing the wall surface of each floor according to the position coordinates of the plurality of vertices of the outer contour of the bottom polygon and the position coordinates of the plurality of vertices of the outer contour of the top polygon.
3. The method of claim 2, wherein, the reference polygon data further comprises a round corner identifier for identifying whether each vertex of the outer contour of the reference polygon is a round corner; the method further comprises: when it is determined according to the round corner identifier that there is a round corner of a vertex of the outer contour of the reference polygon, performing a round corner processing on corresponding vertices of the bottom polygon and the top polygon.
4. The method of claim 3, wherein, the method further comprises: splitting a vertex of the bottom polygon and the top polygon which is not processed by the round corner processing to obtain two sub-vertices, the two sub-vertices respectively corresponding to different wall surface normals.
5. The method of claim 1, wherein, the floor description data further comprises a roof identifier, and the model construction according to the floor description data of each floor further comprises: constructing a roof of a floor with the roof identifier according to the top polygon data of the floor.
6. The method of claim 1, wherein, the floor description data further comprises a roof ridge identifier and feature data of a roof ridge, and the construction of the wall surface of each floor further comprises: constructing a roof ridge of a floor with the roof ridge identifier according to the feature data of the roof ridge.
7. The method of claim 6, wherein, The feature data of the roof includes at least one of height data, width data, style data and color data of the roof.
8. A display method of an electronic map, comprising: determining a building to be constructed on the electronic map; constructing a building model for the building according to the method of any one of claims 1-7; displaying the constructed building model on the electronic map.
9. A construction device of a building model in an electronic map, comprising: a first obtaining module, configured to obtain model data of a building to be constructed, the model data including floor description data of each floor in the building to be constructed and at least one reference polygon data on which the building depends; the floor description data of each floor including bottom polygon data, top polygon data and floor height data of each floor; the bottom polygon data of each floor being at least one of a first scaling factor, a first rotation angle and a first offset of a bottom polygon of each floor relative to the reference polygon; the top polygon data of each floor being at least one of a second scaling factor, a second rotation angle and a second offset of a top polygon of each floor relative to the reference polygon; a first constructing module, configured to construct a model according to the floor description data of each floor to obtain the building model; wherein the model construction according to the floor description data of each floor includes: constructing a wall surface of each floor according to the bottom polygon data, the top polygon data and the floor height data of each floor.
10. A display device of an electronic map, comprising: a second determining module, configured to determine a building to be constructed on the electronic map; a second constructing module, configured to construct a building model for the building using the construction device of a building model in an electronic map according to claim 9; a display module, configured to display the constructed building model on the electronic map.
11. An electronic device comprising: a memory and a processor, the memory is configured to store executable instructions of the processor; the processor is configured to read the executable instructions from the memory and execute the executable instructions to implement the construction method of a building model in an electronic map according to any one of claims 1-7 or the display method of an electronic map according to claim 8.
12. A computer program product, configured to execute the construction method of a building model in an electronic map according to any one of claims 1-7 or the display method of an electronic map according to claim 8.
Citation Information
Patent Citations
Architectural drawing-based automatic building modeling method
CN108363867A