Three-dimensional wall generation method, device, computer equipment and storage medium

By building multi-connected closed areas on the front end and performing grid processing, the problem of long data transmission time in traditional 3D Boolean operations is solved, and more efficient 3D wall generation is achieved.

CN114581597BActive Publication Date: 2025-08-22JIULING (JIANGSU) DIGITAL INTELLIGENT TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202011376398.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-11-30
Publication Date
2025-08-22
Estimated Expiration
2040-11-30

AI Technical Summary

Technical Problem

Traditional 3D Boolean computing method takes time to pass data in front and back when editing walls and doors and windows, resulting in poor real-time user interaction.

Method used

By obtaining the three-dimensional grid data of the walls and doors and windows to be processed, the outer enclosure shell is determined and a multi-connected enclosed area is constructed, and the grid is directly processed at the front end to generate a three-dimensional wall.

Benefits of technology

During the process of editing geometric shapes or locations of walls and doors and windows, data transmission at the front and back ends is avoided, which improves the real-time data interaction and the efficiency of three-dimensional wall generation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114581597B_ABST
    Figure CN114581597B_ABST
Patent Text Reader

Abstract

This application relates to a three-dimensional wall generation method, apparatus, computer device, and storage medium. The method comprises: obtaining a wall surface to be processed and doors and windows to be processed corresponding to the wall surface; obtaining three-dimensional mesh data corresponding to the doors and windows to be processed, and determining the outer concave hulls corresponding to the doors and windows to be processed based on the three-dimensional mesh data; constructing a multiply connected closed region based on the wall surface to be processed and the outer concave hulls; and meshing the wall surface to be processed using the multiply connected closed region to obtain a three-dimensional wall. This method can improve the efficiency of three-dimensional wall acquisition.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a three-dimensional wall generation method, apparatus, computer equipment, and storage medium. Background Art

[0002] In architectural modeling software, three-dimensional Boolean operations are performed based on the geometric models of walls and doors and windows. This is of great significance for the overall display of walls and doors and windows, editing of wall geometric data, calculation of engineering quantities, model authenticity, and model aesthetics.

[0003] In traditional technology, three-dimensional Boolean operations between walls and doors and windows are generally completed through commercial or open source geometric algorithm libraries.

[0004] However, relying on a third-party backend library, data transmission between the front and back ends takes time. When a large number of walls, doors and windows are edited, the real-time performance of front-end user interaction is poor. Summary of the Invention

[0005] Based on this, it is necessary to provide a method, device, computer equipment and storage medium that can improve the efficiency of three-dimensional wall generation in order to address the above technical problems.

[0006] A three-dimensional wall generation method, the method comprising:

[0007] Obtain the wall surface to be processed and the doors and windows to be processed corresponding to the wall surface to be processed;

[0008] Obtaining three-dimensional mesh data corresponding to the doors and windows to be processed, and determining the outer concave hull corresponding to the doors and windows to be processed based on the three-dimensional mesh data;

[0009] Construct a multi-connected closed area based on the wall to be processed and the surrounding concave shell;

[0010] The three-dimensional wall is obtained by meshing the wall surface to be processed through multi-connected closed areas.

[0011] In one embodiment, after obtaining the three-dimensional mesh data corresponding to the doors and windows to be processed, the method further includes:

[0012] Determine corresponding three-dimensional grid data points according to the three-dimensional grid data;

[0013] Determine a bounding box area based on three-dimensional grid data points;

[0014] Determine the inclusion relationship between the wall to be processed and the doors and windows to be processed based on the bounding box area;

[0015] When the wall to be processed includes doors and windows to be processed, a step of determining outer concave shells corresponding to the doors and windows to be processed according to the three-dimensional grid data is performed.

[0016] In one embodiment, determining corresponding three-dimensional grid data points based on the three-dimensional grid data includes:

[0017] Get the wall plane corresponding to the wall to be processed;

[0018] Calculate the projection data of the three-dimensional grid data on the wall plane;

[0019] The three-dimensional grid data points corresponding to the three-dimensional grid data are determined according to the projection data.

[0020] In one embodiment, constructing a multiply connected closed region based on the wall surface to be processed and the surrounding concave hull includes:

[0021] Determine the outer boundary based on the wall to be processed;

[0022] Determine the inner boundary based on the outer concave hull;

[0023] Construct a multiply connected closed region based on the outer and inner boundaries.

[0024] In one embodiment, meshing the wall surface to be processed by multiply connected closed regions to obtain a three-dimensional wall includes:

[0025] The multi-connected closed area is meshed based on the triangulation principle to obtain the mesh area;

[0026] Obtain the reference wall to be processed corresponding to the wall to be processed;

[0027] Determine a reference grid area corresponding to the grid area on the reference wall to be processed;

[0028] Generate 3D walls based on mesh areas and reference mesh areas.

[0029] In one embodiment, generating a three-dimensional wall according to a grid area and a reference grid area includes:

[0030] Determine corresponding data pairs according to the corresponding positions of the grid area and the reference grid area;

[0031] Generate side grid areas based on the lines connecting the corresponding data pairs;

[0032] Based on the boundary representation principle of three-dimensional entities, three-dimensional walls are generated for the grid area, reference grid area and side grid area.

[0033] In one embodiment, generating a three-dimensional wall for a grid area, a reference grid area, and a side grid area based on a boundary representation principle of a three-dimensional entity includes:

[0034] Get the existing wall corresponding to the wall to be processed;

[0035] The grid area, reference grid area, and side grid area are treated as newly added walls;

[0036] Based on the boundary representation principle of three-dimensional entities, existing walls and newly added walls are processed to generate three-dimensional walls.

[0037] A three-dimensional wall generation device, comprising:

[0038] An acquisition module is used to acquire the wall surface to be processed and the doors and windows to be processed corresponding to the wall surface to be processed;

[0039] A determination module is used to obtain three-dimensional mesh data corresponding to the doors and windows to be processed, and determine the outer surrounding concave hull corresponding to the doors and windows to be processed based on the three-dimensional mesh data;

[0040] A construction module is used to construct a multi-connected closed area based on the wall surface to be processed and the outer surrounding concave shell;

[0041] The processing module is used to mesh the wall surface to be processed through multi-connected closed areas to obtain a three-dimensional wall.

[0042] A computer device includes a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the method of any of the above embodiments when executing the computer program.

[0043] A computer-readable storage medium stores a computer program, which implements the steps of the method of any of the above embodiments when executed by a processor.

[0044] The above-described 3D wall generation method, apparatus, computer device, and storage medium obtain a wall surface to be processed and the doors and windows to be processed corresponding to the wall surface; obtain 3D mesh data corresponding to the doors and windows to be processed, and determine the corresponding outer concave hulls based on the 3D mesh data; construct a multiply connected closed region based on the wall surface to be processed and the outer concave hulls; and mesh the wall surface to be processed using the multiply connected closed regions to obtain a 3D wall. During the geometric shape or position editing process for the wall surface to be processed and the doors and windows to be processed, no front-end and back-end data transfer is required, improving the real-time nature of data interaction and, in turn, the efficiency of 3D wall generation. BRIEF DESCRIPTION OF THE DRAWINGS

[0045] Figure 1 A diagram showing an application environment of a three-dimensional wall generation method according to an embodiment;

[0046] Figure 2 Schematic diagram of a process for generating a three-dimensional wall in one embodiment;

[0047] Figure 3 A schematic diagram of a left wall and a right wall provided in one embodiment;

[0048] Figure 4 A schematic diagram of a three-dimensional wall is provided in one embodiment;

[0049] Figure 5 A schematic diagram of a three-dimensional wall generation process provided in one embodiment;

[0050] Figure 6 is a structural block diagram of a three-dimensional wall generating device in one embodiment;

[0051] Figure 7 FIG. 1 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION

[0052] In order to make the purpose, technical solutions and advantages of this application more clear, the following further describes this application in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.

[0053] The three-dimensional wall generation method provided in this application can be applied to Figure 1 In the application environment shown. The terminal 102 communicates with the server 104 via a network. The server 104 obtains the wall surface to be processed and the doors and windows to be processed corresponding to the wall surface to be processed; obtains the three-dimensional mesh data corresponding to the doors and windows to be processed, and determines the outer concave shell corresponding to the doors and windows to be processed based on the three-dimensional mesh data; constructs a multi-connected closed area based on the wall surface to be processed and the outer concave shell; and meshes the wall surface to be processed through the multi-connected closed area to obtain a three-dimensional wall body. Further, the server 104 sends the obtained three-dimensional wall body to the terminal 102 and displays it on the terminal 102. The terminal 102 can be, but is not limited to, various personal computers, laptops, smart phones, tablet computers and portable wearable devices, and the server 104 can be implemented as an independent server or a server cluster consisting of multiple servers.

[0054] In one embodiment, Figure 2 As shown, a three-dimensional wall generation method is provided, which is applied to Figure 1 Taking the server 104 in the example as an example, the following steps are included:

[0055] Step 202: Obtain the wall surface to be processed and the doors and windows to be processed corresponding to the wall surface to be processed.

[0056] Boolean operations can be performed between the walls to be processed and the doors and windows to be processed. Specifically, the wall is expressed as a hexahedron surrounded by six walls, including the left wall, the right wall, the bottom wall, the top wall, the starting end wall, and the ending end wall. The division of the left wall and the right wall is based on the starting point to the end point vector of the wall. The left wall and the right wall are bounded three-dimensional space planes, denoted as wfl and wfr respectively. Figure 3 As shown, Figure 3 A schematic diagram of a left wall and a right wall provided in one embodiment.

[0057] Step 204 : Acquire the three-dimensional mesh data corresponding to the door and window to be processed, and determine the outer concave hull corresponding to the door and window to be processed according to the three-dimensional mesh data.

[0058] The 3D mesh data corresponds to the doors and windows to be processed, specifically the 3D model data of the doors and windows to be processed. In one embodiment, the server can read the 3D mesh data corresponding to the doors and windows to be processed from a component library, and the 3D mesh data can specifically be triangulated mesh geometry data. Triangulated mesh data is a polygonal mesh composed entirely of triangles and is used to simulate the surfaces of complex objects, such as buildings. Compared to general polygonal meshes, operations on triangulated mesh data are easier and more accurate in computers.

[0059] Step 206: construct a multiply connected closed region based on the wall to be processed and the outer surrounding concave hull.

[0060] A multiply connected closed region is a plane containing multiple simply connected regions. A simply connected region is one in which a simple closed curve is drawn, and the interior of the closed curve always belongs to G. Specifically, the server can map the wall to be processed and the surrounding concave hull onto the same plane to obtain a multiply connected closed region.

[0061] Step 208 : Meshing the wall surface to be processed by multiply connected closed regions to obtain a three-dimensional wall.

[0062] Among them, grid processing refers to the process of processing multi-connected closed areas into a mesh structure.

[0063] The above-mentioned 3D wall generation method obtains a wall surface to be processed and the doors and windows to be processed corresponding to the wall surface; obtains 3D mesh data corresponding to the doors and windows to be processed, and determines the corresponding outer concave hulls based on the 3D mesh data; constructs multiply connected closed regions based on the wall surface to be processed and the outer concave hulls; and meshes the wall surface to be processed using the multiply connected closed regions to obtain the 3D wall. During the geometric shape or position editing process for the wall surface to be processed and the doors and windows to be processed, no front-end and back-end data transfer is required, which improves the real-time nature of data interaction and, in turn, the efficiency of 3D wall generation.

[0064] In one embodiment, after obtaining the three-dimensional grid data corresponding to the doors and windows to be processed, the method further includes: determining the corresponding three-dimensional grid data points based on the three-dimensional grid data; determining the bounding box area based on the three-dimensional grid data points; determining the inclusion relationship between the wall surface to be processed and the doors and windows to be processed based on the bounding box area; when the wall surface to be processed contains the doors and windows to be processed, executing the step of determining the outer enclosing concave shell corresponding to the doors and windows to be processed based on the three-dimensional grid data.

[0065] The bounding box region is the region obtained by processing the three-dimensional grid data points using the bounding box algorithm. The bounding box algorithm is an algorithm for finding the optimal bounding space for a discrete set of points. The basic idea is to approximate complex geometric objects with a slightly larger geometric body with simpler characteristics (called a bounding box). Specifically, the server calculates the AABB bounding box based on the acquired three-dimensional grid data point pt, and the result is ptBox. The server then compares the bounding box region with the wall region corresponding to the wall to be processed, specifically comparing the inclusion relationship between the wall region and the bounding box region. If the comparison result shows that the wall to be processed contains the bounding box region, then it is determined that the step of processing the wall to be processed based on the doors and windows to be processed can be performed. Otherwise, it indicates that the step of processing the wall to be processed based on the doors and windows to be processed cannot be performed. That is, if the server determines that wfl does not contain ptBox, then no Boolean operation is required between the wall and the window. If wfl contains ptBox, then a Boolean operation is required between the wall and the window, and the step of determining the outer concave hull corresponding to the doors and windows to be processed based on the three-dimensional grid data can be continued.

[0066] In the above embodiment, after obtaining the doors and windows to be processed and the wall surface to be processed, the inclusion relationship between the two is first determined. Then, based on the determined inclusion relationship, whether to continue subsequent processing is determined again. Before subsequent processing, the data is first verified, thereby ensuring the accuracy of subsequent processing and the accuracy of data transferred to subsequent steps, reducing the occurrence of errors and further improving data processing efficiency.

[0067] In one embodiment, determining corresponding three-dimensional grid data points based on three-dimensional grid data includes: obtaining a wall plane corresponding to a wall surface to be processed; calculating projection data of the three-dimensional grid data on the wall plane; and determining three-dimensional grid data points corresponding to the three-dimensional grid data based on the projection data.

[0068] The wall plane may be a plan view corresponding to the wall to be processed. The server then projects the acquired three-dimensional mesh data onto the corresponding wall plane to obtain projection data of the mesh data on the wall plane, and then obtains the three-dimensional mesh data based on the projection data.

[0069] In one specific embodiment, during the 3D interactive modeling of doors and windows, or during the loading of wall and door and window data models, 3D Boolean operations on walls, doors, and windows are required. The server reads the triangulated mesh geometry data of the doors and windows to be processed from the component library and calculates the 3D mesh data points for the doors and windows to be processed based on the triangulated mesh geometry data. The server obtains the wall surface corresponding to the wall surface wfl to be processed and projects it onto the wall plane where wfl is located to obtain the 3D mesh data points. The calculated results are recorded as the point set pt = {p1, p2…pn}.

[0070] In the above embodiment, three-dimensional grid data is converted into three-dimensional grid data points by performing projection processing. Since the projection processing method is simple, easy to implement and highly accurate, it can improve the calculation efficiency while ensuring the calculation accuracy, and provide reliable and accurate data points for subsequent calculation processes, further improving the accuracy and efficiency of data processing.

[0071] In one embodiment, constructing a multiply connected closed region based on a wall to be processed and an outer surrounding concave hull includes: determining an outer boundary based on the wall to be processed; determining an inner boundary based on the outer surrounding concave hull; and constructing a multiply connected closed region based on the outer boundary and the inner boundary.

[0072] Specifically, when the server determines that wfl contains ptBox, it continues to calculate the outer concave hull of pt ptcl = {pl1, pl2...pln}, and uses wfl as the outer boundary and ptcl as the inner boundary to form a multiply connected space polygon pgl, and uses the obtained multiply connected space polygon pgl as the multiply connected closed area.

[0073] In one embodiment, a three-dimensional wall is obtained by meshing a wall surface to be processed using multi-connected closed regions, including: meshing the multi-connected closed regions based on the triangulation principle to obtain a mesh region; obtaining a reference wall surface to be processed corresponding to the wall surface to be processed; determining a reference mesh region corresponding to the mesh region on the reference wall surface to be processed; and generating a three-dimensional wall based on the mesh region and the reference mesh region.

[0074] Specifically, the server triangulates the multiply connected closed region pgl to form a triangular mesh meshhl with holes, which then generates a mesh region. The mesh region meshhl is then projected onto the plane of wfr to form a triangular mesh meshhr, which is used as a reference mesh region. Furthermore, the server generates a 3D wall based on the mesh region and the reference mesh region.

[0075] In one embodiment, a three-dimensional wall is generated based on a grid area and a reference grid area, including: determining corresponding data pairs based on the relative positions of the grid area and the reference grid area; generating side grid areas based on the connection lines of the corresponding data pairs; and generating a three-dimensional wall for the grid area, the reference grid area, and the side grid area based on the boundary representation principle of a three-dimensional entity.

[0076] In one embodiment, a three-dimensional wall is generated for a grid area, a reference grid area, and a side grid area based on the boundary representation principle of a three-dimensional entity, including: obtaining an existing wall surface corresponding to the wall surface to be processed; using the grid area, the reference grid area, and the side grid area as a newly added wall surface; and processing the existing wall surface and the newly added wall surface based on the boundary representation principle of a three-dimensional entity to generate a three-dimensional wall.

[0077] Specifically, the server obtains the corresponding points of pgl and pgr to form corresponding data pairs, and connects the points of the corresponding data pairs to form the side mesh area of ​​the window opening and records it as meshh. Then, meshh and meshr are used as the new left and right walls of the wall. Based on the boundary representation of the three-dimensional entity, meshh, meshh, and other existing faces of the wall are combined to form a three-dimensional wall after Boolean operation, such as Figure 4 As shown, Figure 4 A schematic diagram of a three-dimensional wall is provided in one embodiment.

[0078] In a specific embodiment, Figure 5 As shown, Figure 5 A schematic diagram of a three-dimensional wall generation process is provided in an embodiment. Figure 5 Specifically, the server reads the triangulated mesh geometry data corresponding to the door and window to be processed from the component library. The server calculates the projection of the door and window 3D mesh data points onto the plane containing the wfl. The result is recorded as the point set pt = {p1, p2…pn}. The AABB bounding box of pt is calculated as ptBox. If wfl does not contain ptBox, the server determines that no Boolean operation is required between the wall and the door and window. If wfl does contain ptBox, the server performs the 3D Boolean operation according to the following process.

[0079] Step 1: The server calculates the outer concave hull of pt ptcl = {pl1, pl2…pln}.

[0080] Step 2: Use wfl as the outer boundary and ptcl as the inner boundary to form a multi-connected space polygon pgl.

[0081] Step 3: triangulate pgl to form a triangular mesh meshl with holes.

[0082] Step 4, project meshl onto the plane where wfr is located to form a triangulated meshr.

[0083] Step 5: Connect the points corresponding to pgl and pgr to form the side mesh of the window opening, denoted as meshh.

[0084] Step 6, meshl and meshr are the new left and right walls.

[0085] Step 7: Based on the boundary representation of the three-dimensional entity, meshl, meshr, meshh and other existing faces of the wall together constitute the three-dimensional wall after Boolean operation.

[0086] Through the above embodiment, the position editing of walls and windows can be performed offline without the need for front-end and back-end data transmission, which improves the real-time nature of the interaction during the geometric shape editing or position editing of walls, doors and windows.

[0087] It should be understood that although Figure 2 as well as Figure 5 The steps in the flowchart are shown in sequence as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified in this document, there is no strict order restriction for the execution of these steps, and these steps can be executed in other orders. In addition, Figure 2 as well as Figure 5 At least part of the steps may include multiple steps or multiple stages. These steps or stages are not necessarily performed at the same time, but can be performed at different times. The order of execution of these steps or stages is not necessarily one by one, but can be performed in turn or alternately with other steps or at least part of the steps or stages in other steps.

[0088] In one embodiment, Figure 6 As shown, a three-dimensional wall generation device is provided, comprising:

[0089] An acquisition module 602 is used to acquire a wall surface to be processed and doors and windows to be processed corresponding to the wall surface to be processed;

[0090] Determination module 604, for obtaining three-dimensional mesh data corresponding to the door and window to be processed, and determining the outer concave hull corresponding to the door and window to be processed based on the three-dimensional mesh data;

[0091] A construction module 606 is used to construct a multi-connected closed region based on the wall surface to be processed and the outer surrounding concave hull;

[0092] The processing module 608 is used to mesh the wall surface to be processed through multi-connected closed regions to obtain a three-dimensional wall.

[0093] In one embodiment, the three-dimensional wall generation device also includes a judgment module, which is used to determine the corresponding three-dimensional grid data points based on the three-dimensional grid data; determine the bounding box area based on the three-dimensional grid data points; determine the inclusion relationship between the wall surface to be processed and the doors and windows to be processed based on the bounding box area; when the wall surface to be processed contains the doors and windows to be processed, execute the step of determining the outer enclosing concave shell corresponding to the doors and windows to be processed based on the three-dimensional grid data.

[0094] In one embodiment, the judgment module is further used to obtain a wall plane corresponding to the wall to be processed; calculate projection data of the three-dimensional grid data on the wall plane; and determine three-dimensional grid data points corresponding to the three-dimensional grid data based on the projection data.

[0095] In one embodiment, the construction module 606 is further configured to determine an outer boundary based on the wall to be processed; determine an inner boundary based on the outer concave hull; and construct a multiply connected closed region based on the outer boundary and the inner boundary.

[0096] In one embodiment, the processing module 608 is also used to mesh the multi-connected closed area based on the triangulation principle to obtain a grid area; obtain the reference wall surface to be processed corresponding to the wall surface to be processed; determine the reference grid area corresponding to the grid area on the reference wall surface to be processed; and generate a three-dimensional wall based on the grid area and the reference grid area.

[0097] In one embodiment, the processing module 608 is further used to determine corresponding data pairs based on the relative positions of the grid area and the reference grid area; generate side grid areas based on the connection lines of the corresponding data pairs; and generate three-dimensional walls for the grid area, the reference grid area, and the side grid area based on the boundary representation principle of the three-dimensional entity.

[0098] In one embodiment, the processing module 608 is also used to obtain an existing wall surface corresponding to the wall surface to be processed; use the grid area, reference grid area and side grid area as new wall surfaces; and process the existing wall surfaces and the new wall surfaces based on the boundary representation principle of the three-dimensional entity to generate a three-dimensional wall body.

[0099] The specific limitations of the 3D wall generation device can be found in the limitations of the 3D wall generation method described above and will not be further elaborated here. Each module in the 3D wall generation device described above can be implemented in whole or in part via software, hardware, or a combination thereof. Each of these modules can be embedded in or independent of a processor in a computer device in hardware form, or stored in a computer device memory in software form, allowing the processor to call and execute the corresponding operations of each module.

[0100] In one embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as follows: Figure 7As shown. The computer device includes a processor, a memory, and a network interface connected via a system bus. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of the operating system and computer program in the non-volatile storage medium. The database of the computer device is used to store building data to be processed. The network interface of the computer device is used to communicate with an external terminal via a network connection. When the computer program is executed by the processor, a three-dimensional wall generation method is implemented.

[0101] Those skilled in the art will understand that Figure 7 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.

[0102] In one embodiment, a computer device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and when the processor executes the computer program, the following steps are implemented: obtaining a wall surface to be processed and doors and windows to be processed corresponding to the wall surface to be processed; obtaining three-dimensional mesh data corresponding to the doors and windows to be processed, and determining the outer concave shells corresponding to the doors and windows to be processed based on the three-dimensional mesh data; constructing a multiply connected closed area based on the wall surface to be processed and the outer concave shells; and meshing the wall surface to be processed using the multiply connected closed area to obtain a three-dimensional wall body.

[0103] In one embodiment, when the processor executes the computer program, the following steps are further implemented: determining corresponding three-dimensional grid data points based on the three-dimensional grid data; determining a bounding box area based on the three-dimensional grid data points; determining the inclusion relationship between the wall surface to be processed and the doors and windows to be processed based on the bounding box area; when the wall surface to be processed contains the doors and windows to be processed, executing the step of determining the outer enclosing concave shell corresponding to the doors and windows to be processed based on the three-dimensional grid data.

[0104] In one embodiment, when the processor executes the computer program, it further implements the following steps: obtaining a wall plane corresponding to the wall to be processed; calculating projection data of the three-dimensional grid data on the wall plane; and determining three-dimensional grid data points corresponding to the three-dimensional grid data based on the projection data.

[0105] In one embodiment, when the processor executes the computer program, the processor further implements the following steps: determining an outer boundary based on the wall to be processed; determining an inner boundary based on the outer concave hull; and constructing a multiply connected closed region based on the outer boundary and the inner boundary.

[0106] In one embodiment, when the processor executes the computer program, it further implements the following steps: meshing the multi-connected closed area based on the triangulation principle to obtain a mesh area; obtaining a reference wall surface to be processed corresponding to the wall surface to be processed; determining a reference mesh area corresponding to the mesh area on the reference wall surface to be processed; and generating a three-dimensional wall based on the mesh area and the reference mesh area.

[0107] In one embodiment, when the processor executes the computer program, the following steps are further implemented: determining corresponding data pairs based on the relative positions of the grid area and the reference grid area; generating side grid areas based on the connection lines of the corresponding data pairs; and generating three-dimensional walls for the grid area, the reference grid area, and the side grid area based on the boundary representation principle of the three-dimensional entity.

[0108] In one embodiment, when the processor executes the computer program, it also implements the following steps: obtaining an existing wall surface corresponding to the wall surface to be processed; using the grid area, the reference grid area, and the side grid area as a newly added wall surface; and processing the existing wall surface and the newly added wall surface based on the boundary representation principle of the three-dimensional entity to generate a three-dimensional wall body.

[0109] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the following steps are implemented: obtaining a wall surface to be processed and doors and windows to be processed corresponding to the wall surface to be processed; obtaining three-dimensional mesh data corresponding to the doors and windows to be processed, and determining the outer surrounding concave hulls corresponding to the doors and windows to be processed based on the three-dimensional mesh data; constructing a multiply connected closed area based on the wall surface to be processed and the outer surrounding concave hull; and meshing the wall surface to be processed using the multiply connected closed area to obtain a three-dimensional wall body.

[0110] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented: determining corresponding three-dimensional grid data points based on the three-dimensional grid data; determining a bounding box area based on the three-dimensional grid data points; determining the inclusion relationship between the wall surface to be processed and the doors and windows to be processed based on the bounding box area; when the wall surface to be processed contains the doors and windows to be processed, executing the step of determining the outer enclosing concave shell corresponding to the doors and windows to be processed based on the three-dimensional grid data.

[0111] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented: obtaining a wall plane corresponding to the wall to be processed; calculating projection data of the three-dimensional grid data on the wall plane; and determining three-dimensional grid data points corresponding to the three-dimensional grid data based on the projection data.

[0112] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented: determining an outer boundary based on the wall to be processed; determining an inner boundary based on the outer concave hull; and constructing a multiply connected closed region based on the outer boundary and the inner boundary.

[0113] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented: meshing the multi-connected closed area based on the triangulation principle to obtain a mesh area; obtaining a reference wall surface to be processed corresponding to the wall surface to be processed; determining a reference mesh area corresponding to the mesh area on the reference wall surface to be processed; and generating a three-dimensional wall based on the mesh area and the reference mesh area.

[0114] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented: determining corresponding data pairs based on the relative positions of the grid area and the reference grid area; generating side grid areas based on the connection lines of the corresponding data pairs; and generating three-dimensional walls for the grid area, the reference grid area, and the side grid area based on the boundary representation principle of a three-dimensional entity.

[0115] In one embodiment, when the computer program is executed by the processor, the following steps are also implemented: obtaining an existing wall surface corresponding to the wall surface to be processed; using the grid area, the reference grid area, and the side grid area as a newly added wall surface; and processing the existing wall surface and the newly added wall surface based on the boundary representation principle of the three-dimensional entity to generate a three-dimensional wall body.

[0116] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiment methods can be implemented by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application may include at least one of non-volatile and volatile memory. Non-volatile memory may include read-only memory (ROM), magnetic tape, floppy disk, flash memory or optical memory, etc. Volatile memory may include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM).

[0117] The technical features of the above embodiments can be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0118] The above embodiments merely represent several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present invention. It should be noted that a person skilled in the art could make various modifications and improvements without departing from the spirit of the present application, all of which fall within the scope of protection of the present application. Therefore, the scope of protection of the present patent application shall be determined by the appended claims.

Claims

1. A three-dimensional wall generation method, characterized in that: The method comprises: Obtaining a wall surface to be processed and doors and windows to be processed corresponding to the wall surface to be processed; Acquire three-dimensional mesh data corresponding to the door and window to be processed, and determine the outer surrounding concave shell corresponding to the door and window to be processed according to the three-dimensional mesh data; Constructing a multi-connected closed area according to the wall surface to be processed and the outer surrounding concave shell; The three-dimensional wall is obtained by meshing the wall surface to be processed through the multi-connected closed area, including: meshing the multi-connected closed area based on the triangulation principle to obtain a grid area; obtaining a reference wall surface to be processed corresponding to the wall surface to be processed; determining a reference grid area corresponding to the grid area on the reference wall surface to be processed; determining a corresponding data pair according to the relative positions of the grid area and the reference grid area; generating a side grid area according to the connection line of the corresponding data pair; obtaining an existing wall surface corresponding to the wall surface to be processed; using the grid area, the reference grid area and the side grid area as a newly added wall surface; and processing the existing wall surface and the newly added wall surface based on the boundary representation principle of a three-dimensional entity to generate a three-dimensional wall.

2. The method according to claim 1, characterized in that After obtaining the three-dimensional grid data corresponding to the doors and windows to be processed, the method further includes: determining corresponding three-dimensional grid data points according to the three-dimensional grid data; Determine a bounding box area based on the three-dimensional grid data points; Determining the inclusion relationship between the wall to be processed and the doors and windows to be processed according to the bounding box area; When the wall surface to be processed includes the doors and windows to be processed, a step of determining the outer surrounding concave shell corresponding to the doors and windows to be processed according to the three-dimensional grid data is performed.

3. The method according to claim 2, characterized in that The determining of corresponding three-dimensional grid data points according to the three-dimensional grid data includes: Obtaining the wall plane corresponding to the wall to be processed; Calculating projection data of the three-dimensional grid data on the wall plane; A three-dimensional grid data point corresponding to the three-dimensional grid data is determined according to the projection data.

4. The method according to claim 1, wherein The step of constructing a multi-connected closed area based on the wall surface to be processed and the outer surrounding concave shell includes: determining an outer boundary based on the wall surface to be processed; determining an inner boundary based on the outer enclosing concave hull; A multiply connected closed region is constructed according to the outer boundary and the inner boundary.

5. A three-dimensional wall generation device, characterized in that: The device comprises: An acquisition module, configured to acquire a wall surface to be processed and doors and windows to be processed corresponding to the wall surface to be processed; a determination module, configured to obtain three-dimensional mesh data corresponding to the door and window to be processed, and determine an outer concave shell corresponding to the door and window to be processed based on the three-dimensional mesh data; A construction module, configured to construct a multi-connected closed area based on the wall surface to be processed and the outer surrounding concave shell; A processing module is used to mesh the wall surface to be processed through the multi-connected closed area to obtain a three-dimensional wall; the processing module is specifically used to mesh the multi-connected closed area based on the triangulation principle to obtain a grid area; obtain a reference wall surface to be processed corresponding to the wall surface to be processed; determine the reference grid area corresponding to the grid area on the reference wall surface to be processed; determine a corresponding data pair according to the relative positions of the grid area and the reference grid area; generate a side grid area according to the connection line of the corresponding data pair; obtain an existing wall surface corresponding to the wall surface to be processed; use the grid area, the reference grid area and the side grid area as a newly added wall surface; and process the existing wall surface and the newly added wall surface based on the boundary representation principle of a three-dimensional entity to generate a three-dimensional wall.

6. The device according to claim 5, characterized in that It also includes a judgment module, which is used to determine the corresponding three-dimensional grid data points based on the three-dimensional grid data; determine the bounding box area based on the three-dimensional grid data points; determine the inclusion relationship between the wall surface to be processed and the doors and windows to be processed based on the bounding box area; when the wall surface to be processed contains the doors and windows to be processed, execute the step of determining the outer enclosing concave shell corresponding to the doors and windows to be processed based on the three-dimensional grid data.

7. The device according to claim 6, characterized in that The judgment module is further used to obtain the wall plane corresponding to the wall surface to be processed; calculate the projection data of the three-dimensional grid data on the wall plane; and determine the three-dimensional grid data points corresponding to the three-dimensional grid data according to the projection data.

8. The device according to claim 5, characterized in that The construction module is further used to determine the outer boundary based on the wall to be processed; determine the inner boundary based on the outer concave hull; and construct a multi-connected closed area based on the outer boundary and the inner boundary.

9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 4 are implemented.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 4 are implemented.

Citation Information

Patent Citations

  • Indoor three-dimensional model automatic reconstruction method and system with structural semantics

    CN110009727A