Sunlight house roof display method, device, equipment and storage medium

By simplifying the operation process, users can quickly generate sunroom roofs that include skeleton models and grid models, solving the problems of complex operation and low efficiency in existing technologies, and realizing efficient sunroom roof design.

CN116822023BActive Publication Date: 2026-08-25HANGZHOU QUNHE INFORMATION TECHNOLOGIES CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310779767.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-06-28
Publication Date
2026-08-25
Estimated Expiration
2043-06-28

AI Technical Summary

Technical Problem

Existing technologies are complex, difficult, and inefficient in generating 3D models of sunrooms, and secondary modifications are difficult, requiring complex line operations and professional knowledge.

Method used

By responding to the selection of roof unit templates and the addition of setting areas, the view of the roof unit is displayed in the display interface, and a 3D model based on the roof dataset, including a skeleton model and a grid model, is generated, simplifying the operation process.

Benefits of technology

It enables quick and easy generation of sunroom roof designs, with high operational efficiency. Users can complete complex roof designs without professional knowledge, and secondary modifications are supported.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116822023B_ABST
    Figure CN116822023B_ABST
Patent Text Reader

Abstract

The present disclosure provides a sunlight house roof display method, device, equipment and storage medium. The specific implementation scheme is: in response to the selection operation of the roof unit template and the addition operation of the setting area, the first view of the first roof unit corresponding to the selection operation is displayed in the setting area of the display interface, and the first roof unit is one of the roof unit set, and the roof unit set is a set of roof units contained in the display interface; in response to the model generation operation, a three-dimensional model of the target roof is displayed on the display interface, the three-dimensional model of the target roof includes a skeleton model and a grid model arranged on the skeleton model, and the three-dimensional model of the target roof is obtained based on the roof data set, and the roof data in the roof data set is the related data of the roof unit in the roof unit set. The user can quickly and conveniently add the roof unit to complete the generation of the sunlight house target roof, and the interface operation is simple and the operation efficiency is high.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of sunroom technology, and in particular to methods, devices, equipment and storage media for displaying sunroom rooftops. Background Technology

[0002] A sunroom, also known as a glass room, is a fully transparent, non-traditional building constructed with glass and a metal frame. Due to its excellent light transmission, sunrooms have become increasingly popular in the construction industry in recent years, often found in detached houses, restaurants, greenhouses, exhibition halls, or enclosed terraces. During the design phase, how to quickly generate a 3D model of the sunroom based on user needs has gradually become a research hotspot. Summary of the Invention

[0003] This disclosure provides a method, apparatus, equipment, and storage medium for displaying sunroom rooftops.

[0004] According to one aspect of this disclosure, a method for displaying the roof of a sunroom is provided, comprising: in response to a selection operation on a roof unit template and an addition operation on a setting area, displaying a first view of a first roof unit corresponding to the selection operation in the setting area of ​​the display interface, wherein the first roof unit is a roof unit in a roof unit set, and the roof unit set is a collection of roof units contained in the display interface; in response to a model generation operation, displaying a three-dimensional model of a target roof in the display interface, wherein the three-dimensional model of the target roof includes a skeleton model and a grid model set on the skeleton model, and the three-dimensional model of the target roof is obtained based on a roof dataset, wherein the roof data in the roof dataset is the relevant data of the roof units in the roof unit set.

[0005] According to another aspect of this disclosure, a sunroom roof display is provided, comprising: a first display unit, configured to display a first view of a first roof unit corresponding to the selection operation in the setting area of ​​the display interface in response to a selection operation of a roof unit template and an addition operation of a setting area, wherein the first roof unit is a roof unit in a roof unit set, and the roof unit set is a collection of roof units contained in the display interface; and a second display unit, configured to display a three-dimensional model of a target roof in response to a model generation operation, wherein the three-dimensional model of the target roof includes a skeleton model and a grid model set on the skeleton model, and the three-dimensional model of the target roof is obtained based on a roof dataset, wherein the roof data in the roof dataset is the relevant data of the roof units in the roof unit set.

[0006] According to another aspect of this disclosure, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform any of the methods described in the embodiments of this disclosure.

[0007] According to another aspect of this disclosure, a non-transitory computer-readable storage medium is provided storing computer instructions, wherein the computer instructions are used to cause the computer to perform any of the methods according to embodiments of this disclosure.

[0008] According to another aspect of this disclosure, a computer program product is provided, including a computer program that, when executed by a processor, implements any of the methods according to embodiments of this disclosure.

[0009] The sunroom roof display method, apparatus, device, and storage medium provided in this disclosure, in response to a selection operation on a roof unit template and an addition operation on a setting area, displays a first view of a first roof unit corresponding to the selection operation in the setting area of ​​the display interface. The first roof unit is a roof unit within a roof unit set, which is a collection of roof units included in the display interface. In response to a model generation operation, a three-dimensional model of the target roof is displayed on the display interface. The three-dimensional model of the target roof includes a skeleton model and a grid model set on the skeleton model. The three-dimensional model of the target roof is obtained based on a roof dataset, where the roof data is the relevant data of the roof units in the roof unit set. When generating a sunroom roof, users can quickly and easily add roof units and directly generate a target roof containing a skeleton model and a grid model through the model generation operation, completing the design of the sunroom roof. This interface is simple to operate and highly efficient.

[0010] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description

[0011] The accompanying drawings are provided to better understand this solution and do not constitute a limitation of this disclosure. Wherein:

[0012] Figure 1 This is a schematic diagram of the system structure of the sunroom roof display method according to the embodiments of this disclosure;

[0013] Figure 2 This is a schematic diagram of a method for displaying the roof of a sunroom according to an embodiment of the present disclosure;

[0014] Figure 3 This is a schematic diagram of a first view provided according to an embodiment of the present disclosure;

[0015] Figure 4 This is a schematic diagram of a three-dimensional model of a target roof provided according to an embodiment of the present disclosure;

[0016] Figure 5 This is a schematic diagram of a three-dimensional model of a roof unit set prior to a roof merging operation, according to an embodiment of the present disclosure.

[0017] Figure 6 This is a schematic diagram of a three-dimensional model of a synthetic roof provided according to an embodiment of the present disclosure;

[0018] Figure 7 This is a schematic diagram of a method for generating a three-dimensional model of a target roof according to an embodiment of the present disclosure;

[0019] Figure 8 This is a schematic diagram of a frame model of a flat roof according to an embodiment of the present disclosure;

[0020] Figure 9 This is a schematic diagram of a sloping roof skeleton model provided according to an embodiment of the present disclosure;

[0021] Figure 10 This is a schematic diagram of a frame model of a gable roof according to an embodiment of the present disclosure;

[0022] Figure 11 This is a schematic diagram of a method for generating a raster model according to an embodiment of the present disclosure;

[0023] Figure 12 This is a flowchart illustrating a method for displaying the roof of a sunroom according to an embodiment of the present disclosure;

[0024] Figure 13 This is a schematic diagram of a sunroom rooftop display device according to an embodiment of the present disclosure;

[0025] Figure 14 This is a block diagram of an electronic device used to implement the sunroom roof display method according to embodiments of the present disclosure. Detailed Implementation

[0026] The exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments to aid understanding, and should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope of this disclosure. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.

[0027] This disclosure provides a method, apparatus, electronic device, and storage medium for displaying the roof of a sunroom. Specifically, the sunroom roof display method of this disclosure can be executed by an electronic device, which can be a terminal or a server. The terminal can be a smartphone, tablet, laptop, smart voice interaction device, smart home appliance, wearable smart device, aircraft, smart vehicle terminal, etc. The terminal can also include a client, which can be an audio client, video client, browser client, instant messaging client, or mini-program, etc. The server can be an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (CDN), and big data and artificial intelligence platforms.

[0028] In related technologies, when generating a 3D model of a sunroom, taking a gable roof as an example, a 2D drawing of the roof needs to be drawn on the foundation first. Then, by stretching, a cubic structure of the roof is formed. Then, the edges of the cubic structure are compressed to obtain the frame of the gable roof. Next, the frame needs to be manually generated into a skeleton model of the roof. Then, cover plates are manually set for each skeleton axis of the frame, and the main beams and secondary beams for forming the glass grid are manually set in each skeleton surface. Then, the model for generating the glass area is set. That is, the grid model needs to be manually generated step by step on the skeleton model.

[0029] However, the above method requires complex line operations to construct the roof of the sunroom. The operation is complicated, difficult and inefficient. In addition, since each step is generated based on the result of the previous step, if a second modification is needed, the above steps need to be repeated, so the second modification is difficult.

[0030] To address at least one of the aforementioned problems, this disclosure provides a method, apparatus, device, and storage medium for displaying a sunroom roof. In response to a selection operation on a roof unit template and an addition operation to a setting area, a first view of a first roof unit corresponding to the selection operation is displayed in the setting area of ​​the display interface. The first roof unit is one roof unit from a roof unit set, which is a collection of roof units included in the display interface. In response to a model generation operation, a three-dimensional model of the target roof is displayed on the display interface. The three-dimensional model of the target roof includes a skeleton model and a grid model set on the skeleton model. The three-dimensional model of the target roof is obtained based on a roof dataset, where the roof data is the relevant data of the roof units in the roof unit set. When generating a sunroom roof, users can quickly and easily add roof units and directly generate a target roof containing a skeleton model and a grid model through the model generation operation, completing the design of the sunroom roof. This interface is simple to use and highly efficient.

[0031] The embodiments of this disclosure will be described in detail below with reference to the accompanying drawings.

[0032] Figure 1 This is a schematic diagram of the system structure applying the sunroom roof display method according to embodiments of this disclosure. Please refer to... Figure 1 The system includes a terminal 110 and a server 120, etc.; the terminal 110 and the server 120 are connected via a network, such as a wired or wireless network.

[0033] The terminal 110 can be used to display a graphical user interface. This terminal interacts with the user through the graphical user interface, for example, by downloading and installing a corresponding client, by calling and running a corresponding mini-program, or by logging into a website and presenting a corresponding graphical user interface. In this embodiment, the terminal 110 can display an interactive interface for generating a sunroom roof. In response to a selection operation on a roof unit template and an addition operation to a setting area, a first view of a first roof unit corresponding to the selection operation is displayed in the setting area of ​​the display interface. The first roof unit is a roof unit in a roof unit set, and the roof unit set is the collection of roof units included in the display interface. In response to a model generation operation, a three-dimensional model of the target roof is displayed on the display interface. The three-dimensional model of the target roof includes a skeleton model and a grid model set on the skeleton model. The three-dimensional model of the target roof is obtained based on a roof dataset, where the roof data is the relevant data of the roof units in the roof unit set. The server 120 can be used to obtain the three-dimensional model of the target roof based on the roof dataset.

[0034] It should be noted that although the example given is of server 120 obtaining a 3D model of the target roof based on a roof dataset, in other embodiments, obtaining the 3D model of the target roof based on the roof dataset can also be performed by terminal 110, or by terminal 110 and server 120 in collaboration. Furthermore, the application can be an application installed on a desktop computer, an application installed on a mobile terminal, or a mini-program embedded in an application.

[0035] It should be noted that the above application scenarios are shown only to facilitate understanding of the spirit and principles of this disclosure, and the embodiments of this disclosure are not limited in any way. On the contrary, the embodiments of this disclosure can be applied to any applicable scenario.

[0036] The following is a detailed description. It should be noted that the order of description of the following embodiments is not intended to limit the priority of the embodiments.

[0037] Figure 2 This is a schematic diagram of a method for displaying the roof of a sunroom according to an embodiment of the present disclosure; Figure 3 This is a schematic diagram of a first view provided according to an embodiment of the present disclosure; Figure 4 This is a schematic diagram of a three-dimensional model of a target roof provided according to an embodiment of the present disclosure.

[0038] Please refer to Figures 1 to 3 This disclosure provides a method 200 for displaying the roof of a sunroom, including the following steps S201 to S202.

[0039] In step S201, in response to the selection operation of the roof unit template and the addition operation of the setting area, the first view of the first roof unit corresponding to the selection operation is displayed in the setting area of ​​the display interface, and the first roof unit is a roof unit in the roof unit set, and the roof unit set is the collection of roof units contained in the display interface.

[0040] In step S202, in response to the model generation operation, a three-dimensional model of the target roof is displayed on the display interface. The three-dimensional model of the target roof includes a skeleton model and a grid model set on the skeleton model. The three-dimensional model of the target roof is obtained based on the roof dataset, and the roof data in the roof dataset is the relevant data of the roof units in the roof unit set.

[0041] The roof unit template can provide templates for a variety of simple roofs, such as flat roof unit templates (the roof has a flat surface), pitched roof unit templates (the roof has a sloping surface), gable roof unit templates (the roof includes two sloping surfaces, which are gable-shaped when viewed from the side), flat-pitched roof unit templates (the roof includes a flat surface and a sloping surface connected to the flat surface), and so on.

[0042] Users can select the appropriate template to draw the corresponding type of roof unit. The selection operation for the roof unit template can be one of the various roof unit templates mentioned above.

[0043] After selecting the roof unit template, the user can add the area to the settings. For example, the user can draw the area to be added to the roof in the display interface. This area can be a rectangle or a polygon, etc.

[0044] Taking a gable roof unit as an example, the user can first select the gable roof unit template by selecting the gable roof unit template, and then draw a rectangular area (i.e., the setting area) on the display interface by adding the rectangular area. The display interface can then show the first view of the first roof unit within this rectangular area.

[0045] The first view can be a two-dimensional plan view of the first roof unit, such as a top view.

[0046] It is understandable that users can add multiple roof units to the display interface through multiple addition operations, thus obtaining a roof unit set. For example... Figure 3 As shown, after selecting the gable roof unit template, the user can first add the first roof unit 310 by drawing the outermost rectangular frame 310 (shown by solid lines), displaying the top view (i.e., the first view). In the figure, the solid line 311 in the first roof unit 310 is the connecting line between the two sloping surfaces of the gable. Then, a second addition operation can be performed (drawing the outermost rectangular frame 320 (shown by dashed lines), displaying the top view (i.e., the second view) of the second roof unit 320. In the figure, the dashed line 321 in the second roof unit 320 is the connecting line between the two sloping surfaces of the gable). Figure 3 As shown, the display interface can show views of all the roof units added by the user, such as a top view.

[0047] It is understandable that if the user adds only the first roof unit 310 and the second roof unit 320 in the display interface, then the first roof unit 310 and the second roof unit 320 can constitute a roof unit set. That is, each time the user performs an add operation, the roof unit set will be increased by one roof unit.

[0048] Of course, this embodiment takes the example of two roof units added by the user being both gable-shaped. In other embodiments, the roof units in the roof unit set can also be other types, such as flat roofs, pitched roofs, etc. Of course, the roof unit set can also contain different types of roof units.

[0049] It is understandable that after a user selects a roof unit template (e.g., a flat roof template), before obtaining a selection operation for other roof unit templates (e.g., a pitched roof template), by default, all roof units to be added in the add operation are the roof unit of the selected roof template (flat roof template). After obtaining a selection operation for other roof unit templates (e.g., a pitched roof template), by default, all roof units to be added in the subsequent add operation are the other roof templates (pitched roof templates) selected by the user.

[0050] Additionally, upon receiving a model generation operation, such as clicking the model generation button, a 3D model of the target roof can be displayed on the screen. For example... Figure 4 As shown, the 3D model of the target roof may include a skeleton model 410 and a grid model 420. Additionally, Figure 4 The foundation is also shown.

[0051] The skeleton model 410 may include a skeleton axis 411 for forming the target roof, which may be the main load-bearing beam of the roof. It is understood that the skeleton axis can divide the roof into multiple skeleton surfaces, and the grid model 420 is positioned on top of the skeleton axis and covers each skeleton surface. It is understood that the grid model 420 includes main beams 421, secondary beams 422, and mounting plates 423. For a skeleton surface (complete plane), the main beams 421 and secondary beams 423 intersect horizontally and vertically, dividing the skeleton surface into multiple sub-regions. Each sub-region can be used to install a mounting plate 423, which may be a glass plate to achieve a lighting effect.

[0052] In this embodiment, corresponding roof data can be generated for each roof unit drawn by the user. The roof data is used to represent the relevant parameters of that roof unit. The roof data of all roof units in the roof unit set can constitute a roof dataset. The 3D model of the target roof can be obtained based on this roof dataset. The specific implementation method will be described in the following embodiments.

[0053] It is understood that in this embodiment, users only need to select the roof unit template and draw a simple setting area to generate a complex composite roof for the sunroom that meets the user's requirements. Compared with the method of generating a 3D roof model step by step through complex line operations in related technologies, this method is simple to operate, less difficult, does not require professional knowledge of sunroom roof generation, is easy to learn, has a simple and friendly interface, and has high generation efficiency.

[0054] In addition, due to the simple and user-friendly interface, users can quickly modify the target roof by changing the size parameters and type of the drawing settings area.

[0055] Figure 5This is a schematic diagram of a three-dimensional model of a roof unit set before the roof merging operation, according to an embodiment of this disclosure; please refer to... Figures 2 to 5 In some embodiments, the display interface includes a first area and a second area; the step S201 of displaying a first view of the first roof unit corresponding to the selection operation in the setting area of ​​the display interface may include: displaying a first view of the first roof unit corresponding to the selection operation in the setting area of ​​the first area; and displaying a three-dimensional model of the first roof unit in the second area.

[0056] It is understood that both the first and second regions are at least part of the display interface, and they can be side by side or partially overlap.

[0057] Users can add settings in the first area, which is where users can draw their settings. All settings areas drawn by users through adding settings can be displayed in the first area.

[0058] Taking the first area as an example, which displays the first view of the first roof unit (i.e., the top view), the second area can be used to display the three-dimensional model of the first roof unit.

[0059] For example, Figure 3 The first roof unit 310 and the second roof unit 320 are drawn in the figure, as shown below. Figure 5 The diagram shows the 3D models 510 and 520 of the first and second roof units, respectively. It's important to understand that the 3D models displayed in the second area are not the final structures; they represent the 3D models of all roof units in the user-defined set before merging. These models can be simplified wireframe diagrams, excluding detailed structures such as glass grids. This simplified diagram format requires less computation and allows users to easily see the effect of the roof units they added to their designated areas.

[0060] In this embodiment, by displaying the first view of the first roof unit while simultaneously displaying its 3D model, users can intuitively see each roof unit in their added roof unit set, along with a simplified rendering, resulting in a better user experience.

[0061] Additionally, it can be understood that before step S201, the foundation can be added by area selection, for example, by drawing a rectangular area and using this rectangular area as the foundation. This rectangular area can be displayed in the first area, allowing the entire sunroom to be displayed from above in the first area. Furthermore, the corresponding second area can display a 3D model of the foundation (such as...). Figure 4 and Figure 5The system can display not only the roof units but also the underlying foundation structure. The foundation refers to the ground structure at the bottom of the sunroom roof. The foundation can be displayed as a cube or similar shape, and then the roof units are drawn on the rectangular area corresponding to the foundation.

[0062] Figure 6 This is a schematic diagram of a three-dimensional model of a synthetic roof according to an embodiment of this disclosure; please refer to... Figure 6 In some embodiments, method 200 further includes: in response to the roof merging operation, displaying a three-dimensional model of the synthetic roof 610 in a second region, the three-dimensional model of the synthetic roof 610 being obtained based on synthetic data of the synthetic roof, and the synthetic data being related data of the synthetic roof obtained by merging the roof unit set based on the roof dataset, and the synthetic data being used to obtain a three-dimensional model of the target roof.

[0063] It is understandable that the roof merging operation can be a click operation on the roof merging button. The roof merging operation can be an intermediate preview step provided before the model generation operation.

[0064] Figure 5 This could be the content displayed in the second area before the roof merging operation is completed, that is, the display of each roof in the roof unit set. It can be understood that at this time, each roof is independent of the others. Figure 6 The second area displays the structure of a composite roof 610 generated after the roof merging operation is completed.

[0065] Alternatively, the 3D model of the synthesized roof 610 can also be a wireframe sketch of the synthesized roof, without including detailed structures such as glass grids. This 3D model allows users to easily observe whether the merged roof units meet their expected requirements.

[0066] It is understandable that when generating the 3D model of the synthetic roof 610, the synthetic data of the merged synthetic roof can be obtained first based on the roof dataset containing the roof data of each roof unit, and then the 3D model of the synthetic roof can be obtained using the synthetic data. In addition, if a model generation operation is detected after the roof compositing operation is detected, the 3D model of the target roof can be obtained directly using the synthetic data of the synthetic roof.

[0067] In this embodiment, since the final generated target roof includes a skeleton model and a grid model, the structure is relatively complex and the generation time is relatively long. By merging the roofs, the simplified roof shape after merging can be viewed, which makes it convenient for users to observe whether the merging result meets the expected requirements and make timely modifications, thereby improving the generation efficiency of the target roof's 3D model.

[0068] Figure 7This is a schematic diagram of a method for generating a three-dimensional model of a target roof according to an embodiment of the present disclosure; please refer to... Figure 7 In some embodiments, displaying a three-dimensional model of the target roof on the display interface in step S202 includes the following steps S701 to S704.

[0069] Step S701: Based on the roof dataset, determine the synthetic data of the synthetic roof, and the synthetic data is the relevant data of the synthetic roof obtained by merging the roof unit set.

[0070] Step S702: Based on the synthetic data, determine the skeleton data of the target roof. The skeleton data includes a skeleton axis dataset corresponding to the skeleton axis set of the target roof and a skeleton surface dataset corresponding to the skeleton surface set of the target roof.

[0071] Step S703: Generate a skeleton model based on the skeleton axis position determination rules and skeleton data.

[0072] Step S704: Generate a raster model based on the raster division rules and skeleton data.

[0073] This embodiment is a detailed description of a method for obtaining a 3D model of a target roof from a roof dataset. It can be understood that each time a user adds a roof unit, the roof data of that roof unit can be obtained simultaneously.

[0074] Roof data can include roof lines, roof line angles, roof height, reference planes, etc. For example... Figure 5 As shown, taking the first roof unit 510 as an example, its roof lines may include lines 511, 512, 513, 514, 515, 516, and 517 as illustrated. The angle of the roof line is the inclination angle α of the roof surface. The roof height is H, and the reference plane is the horizontal plane where line 518 is located.

[0075] When the user draws the setting area, the roof height H can also be set at the same time. Parameters such as the roof line and the angle of the roof line can be calculated based on the size of the setting area, the roof height, and the roof unit template selected by the user.

[0076] Step S701: Based on the roof parameters of each roof unit in the roof unit set, a roof parameter set can be obtained. When calculating the 3D model of the target roof, the roof units can be merged according to the roof dataset to obtain the composite roof and the corresponding composite data.

[0077] In one possible embodiment, step S701, which determines the synthetic data of the synthetic roof based on the roof dataset, may include: sending the roof dataset to the server; receiving the synthetic data sent by the server, wherein the synthetic data is obtained by the server performing Boolean operations on the roof unit set based on the topology dataset, the topology dataset is determined by the server based on the roof dataset, and the topology data in the topology dataset is used to characterize the topological structure of the roof units in the roof unit set.

[0078] In this embodiment, the method for displaying the roof of the sunroom can be executed by a terminal. After obtaining the roof dataset, the terminal can send the roof dataset to the server, and the server can obtain the synthetic data of the synthetic roof based on the roof dataset.

[0079] Specifically, the server can first determine the topology dataset corresponding to the roof unit set based on the roof dataset. The topology data in the topology dataset is used to characterize the topology of the roof units in the roof unit set.

[0080] It is understandable that, for each roof unit, after receiving its roof data, the server can first convert the roof data into topological data that can represent the independent and complete 3D geometry of that roof unit. The topological data can be represented by the topological structure of the roof unit using boundary representation (Brep). Boundary representation includes: Shell, Edges, Faces, and Vertices. The Shell represents the roof unit, the Edges represent all the roof lines within the roof unit, the Faces represent the surfaces enclosed by the roof lines, and the Vertices represent the intersections between the roof lines.

[0081] By iterating through each roof data point, the topology data of all roof units can be obtained, thus creating a topology dataset.

[0082] After the server determines the topology dataset, it can also perform Boolean operations on the roof unit set based on the topology dataset to obtain synthetic data.

[0083] It is understandable that Boolean operations are used to obtain the composite data of the merged roof, which can also be represented using boundary representation. Specifically, Boolean operations can be Boolean union operations, to... Figure 5 and 6For example, the Boolean union operation can first determine the intersection line between the first roof unit 510 and the second roof unit 520, then determine the intersection surface based on the intersection line, and then use the intersection surface to determine whether the sub-units after the roof unit is divided by the intersection surface need to be retained, thus obtaining the merged composite roof 610. The server can return the composite data of the composite roof to the terminal, so that the terminal can display the three-dimensional model of the composite roof based on the composite data. In addition, the terminal can also generate a three-dimensional model of the target roof based on the composite data of the composite roof.

[0084] It is understandable that Boolean operations require a large amount of computation. Processing them through a server can reduce the performance requirements of the terminal and improve versatility and processing speed.

[0085] Additionally, the file type for the composite roof can be Curve3dOnSurfaces, which is generated by Boolean union operations. This type may not be supported by the terminal. Therefore, the Curve3dOnSurfaces type can be converted to the LineSeg3d and Circle3d types supported by the front end, depending on the actual situation.

[0086] In another embodiment, the step S701 of determining the synthetic data of the synthetic roof based on the roof dataset may include: determining the topology dataset corresponding to the roof unit set based on the roof dataset, wherein the topology data in the topology dataset is used to characterize the topology of the roof units in the roof unit set; and performing Boolean operations on the roof unit set based on the topology dataset to obtain the synthetic data.

[0087] In this embodiment, step S701 can be executed by a terminal. Specifically, the terminal can first determine the topology dataset corresponding to the roof unit set based on the roof dataset. The topology data in the topology dataset is used to characterize the topology structure of the roof units in the roof unit set.

[0088] It is understood that, for each roof unit, the terminal can convert the roof data into topological data that can represent an independent, complete three-dimensional geometry of that roof unit. The representation method of the topological data can refer to the boundary representation (Brep) method in the above embodiment.

[0089] By iterating through each roof data point, the topology data of all roof units can be obtained, thus creating a topology dataset.

[0090] After determining the topology dataset, Boolean operations can be performed on the roof unit set based on the topology dataset to obtain synthetic data.

[0091] It is understandable that the composite data of the merged roof is obtained through Boolean operations, and this composite data can also be represented using boundary representation. Specifically, the Boolean operation can be a Boolean union operation, and the process of the Boolean union operation can also refer to the process of performing the Boolean union operation through the server in the above embodiment.

[0092] It is understood that in this embodiment, the merging of roof unit sets can be achieved by relying on the terminal, thereby enabling the terminal to generate and display the sunroom roof offline, which is applicable to offline scenarios.

[0093] In some embodiments, before performing Boolean operations on the roof unit set, the method may further include: constructing a bottom surface for each roof unit in the roof unit set and adding relevant data of the bottom surface to the topology dataset to update the topology dataset.

[0094] After obtaining the synthetic data, the method may further include: removing the relevant data of the bottom surface after Boolean operation from the synthetic data to update the synthetic data.

[0095] As is understandable, Boolean operations are typically performed on solids. Roofs usually don't have a bottom surface, so before performing Boolean operations, a bottom surface can be constructed for each roof unit based on a reference plane, allowing each roof unit to become an independent solid unit. For example, the location of the reference plane can be the location of the bottom surface. After constructing the bottom surface, its data can be added to the topology data of the corresponding roof unit, thereby updating the topology dataset.

[0096] Additionally, after performing Boolean operations to obtain the composite data for the roof, previously added base surfaces can be removed. This is because the base surfaces may change after Boolean operations. If the base surfaces change, their related data needs to be removed from the composite data. Conversely, if the base surfaces do not change after Boolean operations, their original related data can be removed from the composite data, resulting in a composite roof without a base surface, and its corresponding composite data not including base surface data. Furthermore, some shared edges and collinear edges in the composite roof can be merged, and redundant points and lines can be removed.

[0097] This embodiment uses the addition and deletion of the bottom surface at the terminal as an example. When the server generates composite data, Boolean operations can also be performed using the above-mentioned method of adding and deleting the bottom surface. In this embodiment, the addition and deletion of the bottom surface can achieve the synthesis of roof units, which is beneficial to the accuracy of the synthesis result.

[0098] Step S702: The skeleton data of the target roof can be obtained based on the synthetic data. The skeleton data may include a skeleton axis dataset and a skeleton surface dataset.

[0099] It is understandable that the synthetic data contains relevant data for the entire synthetic roof, and it is necessary to obtain the skeleton axis dataset for each skeleton axis used to generate the target roof, as well as the skeleton surface dataset for each skeleton surface used to generate the target roof.

[0100] Continue to refer to Figure 5 Each of lines 511 to 517 can serve as a reference for a skeleton axis, and the plane enclosed by the skeleton axis can serve as a skeleton surface.

[0101] It is understood that the target roof may include at least one skeleton axis and at least one skeleton surface. The relevant data of these skeleton axes constitute a skeleton axis dataset, and the relevant data of these skeleton surfaces constitute a skeleton surface dataset. The skeleton data includes skeleton axis data and skeleton surface data.

[0102] In one possible embodiment, determining the skeleton data of the target roof based on the synthetic data in step S702 may include: determining a skeleton axis dataset corresponding to the skeleton axis set of the target roof and an initial skeleton surface dataset corresponding to the initial skeleton surface set of the target roof based on the synthetic data; merging the vertical skeleton surfaces in the skeleton surface set with the vertical foundation skeleton surfaces in the foundation; and updating the initial skeleton surface set based on the merged vertical skeleton surfaces to obtain the skeleton surface set of the target roof, and updating the initial skeleton surface dataset to obtain the skeleton surface dataset corresponding to the skeleton surface set.

[0103] When generating the 3D model of the target roof, it is mainly necessary to use the relevant data of each skeleton axis (skeleton axis dataset) and the relevant data of each skeleton surface (skeleton surface dataset) of the target roof.

[0104] After obtaining the synthesized data at the terminal, you can first recursively (traverse) the Shell to get all the edges and faces. Edges can be constructed as skeleton axis data, and faces can be constructed as skeleton face data. Each skeleton axis (such as...) Figure 6 The solid lines representing the roofline (i.e., the skeleton axis set) in the middle roof section 610 can form a skeleton axis dataset. The individual skeleton surfaces in the initial skeleton surface (such as...) Figure 6 The skeleton surface data of each plane of the roof section 610 (i.e., the initial skeleton surface set) can constitute the initial skeleton surface dataset.

[0105] Iterate through the vertical skeleton surfaces (vertical surfaces) in the initial skeleton surface set and the vertical foundation skeleton surfaces (vertical surfaces) in the foundation. Perform a Boolean union operation on several adjacent vertical skeleton surfaces to merge them into one elevation, and store the merged information in the skeleton surface data of each skeleton surface.

[0106] like Figure 6As shown, the top can be a composite roof 610, the bottom cuboid structure can be a foundation 620, the vertical skeleton surface 611 is the vertical surface among the various skeleton surfaces, and the vertical foundation skeleton surface 621 is the vertical surface in the foundation. By traversing each skeleton surface, the vertical skeleton surface 611 is found, and then the vertical foundation skeleton surface 621 adjacent to the vertical skeleton surface 611 in the foundation is found. Since both surfaces are vertical, they can be merged into one plane. Therefore, the vertical skeleton surface 611 and the vertical foundation skeleton surface 621 can be merged to obtain the merged vertical skeleton surface. The original source of the skeleton surface is recorded in the merged vertical skeleton surface to facilitate subsequent secondary modifications.

[0107] Since the relevant data changes after the vertical skeleton surfaces are merged, the initial skeleton surface dataset can be updated to obtain the skeleton surface dataset, and the initial skeleton surface set can be updated to obtain the skeleton surface set.

[0108] Of course, in some embodiments, the shape of the synthesized roof may be more complex. Therefore, between steps S701 and S702, the small faces and edges in the synthesized data can be processed first. That is, the small faces and edges that may exist in the synthesized data can be filtered out so that when generating the three-dimensional model of the target roof, the data of these faces and edges are filtered out, so that small faces and edges are not generated.

[0109] Since vertical surfaces in a roof typically do not require a grid model, in this embodiment, merging the synthesized vertical skeleton surfaces in the roof and the facade skeleton surfaces in the foundation can make the subsequently generated skeleton and grid models more accurate.

[0110] Step S703 generates a skeleton model. The rule for determining the position of the skeleton axes is a general method, which means that the specific position of each skeleton axis can be obtained through the skeleton data and the positional relationship between the skeleton axis and the connected skeleton surfaces. For example, whether it is a side beam, front beam, or ridge beam in the skeleton model. Then, the skeleton model is generated based on the parameters of the beams corresponding to the specific positions of each skeleton axis, such as... Figure 4 The skeleton model 410 in the middle.

[0111] In one possible embodiment, step S703, which generates a skeleton model based on the skeleton axis position determination rule and skeleton data, may include: determining a first skeleton surface connected to a first skeleton axis in the skeleton axis set; determining the category of the first skeleton axis based on the first skeleton surface data corresponding to the first skeleton surface in the skeleton surface dataset and the skeleton axis position determination rule; generating a three-dimensional model of the first skeleton axis based on the first skeleton axis data corresponding to the first skeleton axis in the skeleton axis dataset and the category of the first skeleton axis; and generating a skeleton model based at least on the three-dimensional model of the first skeleton axis.

[0112] For each skeleton axis in the skeleton axis set obtained in step S702, taking this skeleton axis as the first skeleton axis as an example, the first skeleton surface connected to the first skeleton axis can first be obtained through the skeleton axis dataset and the skeleton surface dataset. It can be understood that "connected" means that an edge constituting the first skeleton surface is the first skeleton axis, that is, the first skeleton surface and the first skeleton axis are set adjacent to each other. Of course, there can be multiple skeleton surfaces connected to the first skeleton axis. Here, we take the first skeleton surface as an example; the processing method for other adjacent skeleton surfaces is the same as that for the first skeleton surface, and will not be repeated here.

[0113] After obtaining the first skeleton surface, the first skeleton surface data corresponding to the first skeleton surface can be determined from the skeleton surface dataset. Then, the category of the first skeleton axis can be determined based on the first skeleton surface data and the skeleton axis position (one of the skeleton axis position determination rules).

[0114] The rules for determining the position of the frame axis can be industry-standard, such as rules for determining the position between the frame axis and the frame surface. However, the rules will differ depending on the type of roof unit, i.e., the roof unit template selected by the user. For example... Figure 8 This is a schematic diagram of a frame model of a flat roof according to an embodiment of the present disclosure; please refer to... Figure 8 The figure shows the frame structure of a flat-roofed sunroom including a foundation frame. When the user selects a flat-roofed roof unit template, for the frame axis 811, its adjacent frame surface 810 is a plane, and in the reference plane of the roof, the category of the frame axis 811 can be determined as a side beam.

[0115] Figure 9 This is a schematic diagram of a sloping roof frame model according to an embodiment of the present disclosure; please refer to... Figure 9 The diagram shows the skeletal structure of a sloping roof sunroom, including the foundation frame. When the user selects a sloping roof unit template, skeletal axis 911 is located in the roof's reference plane 920, and its adjacent skeletal surface 910 is sloping; therefore, skeletal axis 911 is a front beam. For skeletal axis 912, its connected skeletal surface 910 is sloping, and this skeletal axis 912 is at the highest point of the roof; therefore, skeletal axis 912 is classified as a wall beam. Similarly, if skeletal axis 913 is not horizontal, it can be determined that this skeletal axis is a side beam.

[0116] Figure 10 This is a schematic diagram of a gable roof frame model according to an embodiment of this disclosure; please refer to... Figure 10The diagram illustrates a sunroom frame model including the foundation. When the user selects a gable roof unit template, if frame axis 1001 is horizontal and its two adjacent frame surfaces 1010 and 1020 are sloped, then frame axis 1001 is classified as a ridge beam. If frame axis 1002 is not horizontal, then frame axis 1002 is classified as a sloping beam. If frame axis 1003 is in the roof's reference plane and its adjacent frame surface 1020 is sloped, then frame axis 1003 is classified as a front beam.

[0117] It is understandable that the rules for determining the positional relationship between the frame axis and its corresponding frame surface may differ for different types of roofs. Therefore, the above only briefly lists the rules for determining the position of the frame axis in a few types of roof units. Based on these rules, the category of the frame axis can be determined.

[0118] Then, based on the first skeleton axis data and its category, a 3D model of the first skeleton axis can be generated. It can be understood that the first skeleton axis data includes the coordinates of its two endpoints. Furthermore, for each skeleton axis in the roof, due to the different skeleton surfaces associated with each axis, the weight-bearing capacity and other aspects will differ. Different categories of skeleton axes have different requirements for cross-sectional shape and size, therefore, their displayed shape in the 3D model will also differ.

[0119] The skeleton axis data only provides the coordinates of the line segment where the skeleton axis is located. Therefore, when generating the skeleton model, it is necessary to first determine the category of the skeleton axis, and then determine the shape of the beam to be generated based on the category, so as to obtain the model of the skeleton axis. The skeleton model can be generated by combining the models of all skeleton axes in the skeleton axis set.

[0120] In this embodiment, the category of the skeleton axis can be determined by relying on skeleton data and skeleton axis position determination rules, and then the three-dimensional model of the skeleton axis can be obtained. The skeleton model can be obtained based on the three-dimensional model of each skeleton axis.

[0121] Step S704 generates a grid model within the 3D model of the target roof. The grid division rules can include data such as the spacing between main beams and the spacing between secondary beams. Based on the grid division rules and the skeleton data, a grid model can be obtained, such as... Figure 4 The raster model 420 in the text.

[0122] Figure 11 This is a schematic diagram of a method for generating a raster model according to an embodiment of the present disclosure; please refer to... Figure 11 In one possible embodiment, the step S704 of generating a raster model based on raster division rules and skeleton data may include the following steps S1101 to S1103.

[0123] Step S1101: Based on the skeleton axis dataset and the skeleton surface dataset, determine the cover plate cover label of each skeleton axis in the skeleton axis set and the boundary setting label of the mounting plate corresponding to each skeleton axis.

[0124] Step S1102: Based on the raster division rules and the skeleton surface dataset, determine the raster data of each skeleton surface in the skeleton surface set.

[0125] Step S1103: Generate a raster model based on raster data, cover label, and boundary setting label.

[0126] Understandable, such as Figure 4 As shown, depending on the design requirements of the sunroom, different frame axes may require cover plates, while others may not. Therefore, it is necessary to determine whether each frame axis in the frame axis set requires a cover plate, i.e., to determine the cover plate cover label for each frame axis.

[0127] In addition, since mounting plates (such as glass plates) need to be installed in the grid, and the mounting plates have thickness, if the size of the mounting plates is exactly the same as the size of the grid, the mating surfaces (at the skeleton axis) of the two mounting plates cannot fit completely, or interference may occur. Therefore, it is also necessary to determine the boundary setting labels of the two mounting plates, that is, whether the mounting plates need to be expanded outward or shrunken inward at the position of the skeleton axis.

[0128] In one possible embodiment, step S1101, which determines the cover plate covering label of each skeleton axis in the skeleton axis set and the boundary setting label of the mounting plate corresponding to each skeleton axis based on the skeleton axis dataset and the skeleton surface dataset, may include: for the second skeleton surface in the skeleton surface set, determining the angular relationship between the second skeleton surface and the third skeleton surface, and the second skeleton axis in the skeleton axis set that connects the second skeleton surface and the third skeleton surface, wherein the third skeleton surface is the skeleton surface in the skeleton surface set that is adjacent to the second skeleton surface; and determining the cover plate covering label of the second skeleton axis and the boundary setting label of the mounting plate corresponding to the second skeleton axis based on the angular relationship between the second skeleton surface and the third skeleton surface.

[0129] By traversing each skeleton surface in the skeleton surface set, taking the second skeleton surface as an example, we can first determine the skeleton surfaces adjacent to the second skeleton surface, such as the third skeleton surface. At the same time, we can determine the skeleton axis located between the second and third skeleton surfaces, i.e., the second skeleton axis. Then, by judging the angular relationship between the second and third skeleton surfaces, we can determine the cover plate covering label of the second skeleton axis and the boundary setting label of its corresponding mounting plate, which is conducive to generating an accurate 3D model of the target roof.

[0130] In one embodiment, determining the cover plate covering label of the second skeleton shaft and the boundary setting label of the mounting plate corresponding to the second skeleton shaft based on the angular relationship between the second skeleton surface and the third skeleton surface may include: when the angle between the second skeleton surface and the third skeleton surface is a positive angle, determining the cover plate covering label of the second skeleton shaft as a first cover plate label, and determining the boundary setting label of the mounting plate corresponding to the second skeleton shaft as a first boundary label. The first cover plate label is used to indicate that the second skeleton shaft is covered by a cover plate, and the first boundary label is used to indicate that the boundary of the mounting plate corresponding to the second skeleton shaft is an outwardly expanding boundary.

[0131] like Figure 4 The angle between the two frame surfaces on both sides of the frame shaft 412 is a positive angle, meaning the target roof forms a convex angle at the frame shaft 412. Therefore, a cover plate 414 needs to be provided to cover the frame shaft 412; the cover plate label is designated as the first cover plate label, indicating that the frame shaft 412 needs to be covered. Furthermore, the mounting plates on both sides of the frame shaft 412 need to be extended outwards at the position of the frame shaft 412 so that the two mounting plates can be aligned. The boundary label of the mounting plate corresponding to the frame shaft is designated as the first boundary label, indicating that the boundary of the mounting plate needs to be extended outwards.

[0132] Alternatively, in another embodiment, determining the cover plate covering label of the second skeleton shaft and the boundary setting label of the mounting plate corresponding to the second skeleton shaft based on the angular relationship between the second skeleton surface and the third skeleton surface may further include: when the angle between the second skeleton surface and the third skeleton surface is a concave angle, determining the cover plate covering label of the second skeleton shaft as a second cover plate label, and determining the boundary setting label of the mounting plate corresponding to the second skeleton shaft as a second boundary label; the second cover plate label is used to indicate that the second skeleton shaft is not covered by a cover plate, and the second boundary label is used to indicate that the boundary of the mounting plate corresponding to the second skeleton shaft is an inward boundary.

[0133] like Figure 4 The angle between the two frame surfaces on both sides of the frame shaft 413 is a concave angle, meaning the target roof forms a concave angle at the frame shaft 413. In this case, it is not necessary to install a cover plate for the frame shaft 413; the cover plate label is the second cover plate label, indicating that the frame shaft 413 does not need to be covered with a cover plate. Furthermore, the mounting plates on both sides of the frame shaft 413 need to be recessed at the position of the frame shaft 413 to ensure alignment and avoid interference. The boundary label for the mounting plate corresponding to the frame shaft is the second boundary label, indicating that the boundary of the mounting plate needs to be recessed.

[0134] By judging the angle between two skeleton surfaces connected by the skeleton axis as described above, it is necessary to expand outward when it is an external angle and to shrink inward when it is an internal angle. Furthermore, when adjacent surfaces are internal angles, it is not necessary to generate a cover plate model (i.e., cover plate) with a common axis, which can help improve the accuracy of the generated target roof model.

[0135] In some embodiments, determining the grid data of each skeleton surface in the skeleton surface set based on the grid division rules and the skeleton surface dataset in step S1102 may include: determining the grid data of the fourth skeleton surface in the skeleton surface set based on the grid division rules; the grid data of the fourth skeleton surface includes the main beam data of the first main beam set on the fourth skeleton surface, the secondary beam data of the first secondary beam set on the fourth skeleton surface, and the sub-region data of multiple sub-regions for installing the mounting plate divided by the first main beam and the first secondary beam.

[0136] Grid division rules can include whether grids need to be set and the preset spacing between main and secondary beams when setting grids, such as... Figure 4 In this design, the main beam 421 can be a longitudinally extending beam within a frame surface, and the secondary beam 422 can be a transversely extending beam within the same frame surface (of course, in different definitions, the main beam can also be a transverse beam, and the secondary beam a longitudinal beam). Each frame surface can have at least one main beam and at least one secondary beam, which can divide the frame surface into multiple sub-regions, each of which can have a mounting plate installed.

[0137] Specifically, a starting skeleton surface can be selected from the skeleton surface set. Taking the fourth skeleton surface as an example, the main beam data (line segment coordinates, etc.) of the first main beam (the main beam in the fourth skeleton surface) and the secondary beam data (line segment coordinates, etc.) of the first secondary beam (the secondary beam in the fourth skeleton surface) can be determined based on the preset main and secondary beam spacing. Then, the sub-region data of the multiple sub-regions divided by the first main beam and the first secondary beam can be calculated, thereby obtaining the raster data of the fourth skeleton surface. Then, the raster data of all skeleton surfaces can be obtained by traversing the skeleton surface set, thus obtaining the raster model.

[0138] In some embodiments, to improve the aesthetics of the sunroom, the alignment of main beams or secondary beams in adjacent frame surfaces can be maintained. The method may further include: for a fifth frame surface adjacent to a fourth frame surface in the frame surface set, where the connecting line between the fourth and fifth frame surfaces intersects with a first main beam, determining the main beam data of a second main beam disposed on the fifth frame surface based on the first main beam, so that the first main beam is aligned with the second main beam.

[0139] For example, after determining the raster data of the fourth skeleton surface, the adjacent skeleton surfaces of the fourth skeleton surface, such as the fifth skeleton surface, can be traversed. Then, the main beam data (first main beam) of the fourth skeleton surface can be transformed into the coordinate system of the fifth skeleton surface and used as the reference for generating the main beam (second main beam) of the fifth skeleton surface, thus achieving the effect of aligning the first main beam and the second main beam at the boundary.

[0140] It's understandable that the fourth frame surface can have its own first coordinate system, and the fifth frame surface can have its own second coordinate system. Assuming the frame axis between the fourth and fifth frame surfaces is the third frame axis, the line connecting the fourth and fifth frame surfaces represents the location of the third frame axis. When the first main beam intersects the third frame axis, the coordinates of the endpoint connecting the first main beam and the third frame axis can be found first from the main beam data of the first main beam. When transforming the main beam data of the first main beam to the coordinate system of the fifth frame surface, these endpoint coordinates can first be transformed to the world coordinate system of the sunroom, and then to the second coordinate system, thus achieving the transformation of the endpoint coordinates. Next, in the second coordinate system, the second main beam is generated using the transformed coordinates, which allows for the alignment of the first and second main beams, improving the aesthetics of the main beams and the reliability of the structure.

[0141] Of course, this embodiment takes the alignment of the main beam as an example. In other embodiments, when the connecting lines between the secondary beam and the two skeleton surfaces intersect, the secondary beams in the two adjacent skeleton surfaces can also be kept aligned. The method of implementation is the same as the method of main beam alignment. For details, please refer to the embodiment of main beam alignment, which will not be described in detail here.

[0142] In this embodiment, by merging the various roof units in the roof unit set, the synthesized data of the synthesized roof can be obtained. Then, the skeleton data is determined by the synthesized data, and the skeleton model and grid model are constructed based on the skeleton data, thereby realizing the generation of a three-dimensional model of the target roof from the roof dataset. No manual operation is required, and the three-dimensional model of the target roof can be automatically generated, which is simpler and provides a better user experience.

[0143] Figure 12 This is a flowchart illustrating a method for displaying the roof of a sunroom according to an embodiment of this disclosure; please refer to... Figure 12 This embodiment provides a process for generating a composite roof (target roof). The core ideas of this embodiment include the following points:

[0144] 1. This provides a method and capability for achieving a composite roof (target roof) structure for a sunroom by combining multiple roof templates (roof unit templates).

[0145] 2. By adding multiple roofs (roof units) and setting the roof template (roof unit template) type, a composite roof structure (target roof) is obtained through Boolean union operation.

[0146] 3. Simple UI (User Interface) interaction greatly enhances the user's design freedom.

[0147] The method in this embodiment can be implemented jointly by a front-end (terminal) and a back-end (server, cloud). For example... Figure 12In the middle, you can enter the roof editing through the display interface.

[0148] By adding additional areas (the operation of adding areas to the settings), rectangular or polygonal regions can be drawn. Then, a top view of the corresponding roof unit can be generated from the drawn area using the user-selected roof template (roof unit template). Roof templates can include flat roofs, pitched roofs, gable roofs, and flat-pitched roofs, etc. Simultaneously, the front end can also receive the roof data of the roofs (roof units) added by the user.

[0149] Roof data can consist of roof lines, roof line angles, roof height, and a reference plane. During calculations, data such as the angle of the relevant roof line can be calculated based on the roof height and roof type.

[0150] Once the roof data is obtained, roof merging can be implemented. Roof merging may include the following steps:

[0151] 1. The front end merges multiple rooftop data sets (rooftop dataset) and sends them to the back end.

[0152] 2. The backend receives multiple roof data (roof datasets) from the frontend and converts each roof data into its own independent complete 3D geometry, that is, the topological structure using the boundary representation (Brep): shell, edges, faces, and vertices, thus obtaining the topological dataset.

[0153] 3. Since the roof data transmitted from the front end does not include the bottom surface, a bottom surface needs to be constructed for each roof (roof unit) based on the reference plane.

[0154] 4. Next, use these geometries (topology dataset) to perform Boolean union operations. After the operation is completed, a prototype of a composite roof (composite roof) will be formed. This prototype contains Curve3dOnSurfaces type generated by Boolean union operations, which is not supported by the front end. It is necessary to convert Curve3dOnSurfaces to LineSeg3d and Circle3d supported by the front end according to the actual situation.

[0155] 5. Since the roof does not need a bottom surface, the bottom surface of the composite roof geometry needs to be removed. Then, some common edges and collinear edges in the composite roof geometry are merged, and some redundant points and lines are removed.

[0156] 6. After completing the above steps, return the geometric data (composite data) of the composite roof to the front end.

[0157] This is understandable. The front end merges the roof area data and then sends it to the cloud. The back end can generate the roof skeleton (synthesized roof), which involves performing a Boolean union operation, and then returning the data to the front end.

[0158] After receiving the data, the front-end can process it. The specific skeleton data processing flow is as follows:

[0159] 1. Receive the number of geometric bodies (composite data) of the composite top returned by the backend, obtain all edges and faces according to the recursive Shell, and construct the top skeleton axis (skeleton axis dataset) and skeleton face data (initial skeleton face dataset).

[0160] 2. Traverse the vertical surfaces (vertical skeleton surfaces) in the top skeleton surface (initial skeleton surface set) and the vertical surfaces (vertical foundation skeleton surfaces) in the facade skeleton surface (foundation). Perform a Boolean union operation on several adjacent vertical skeleton surfaces to merge them into one facade. Store the merged information in each skeleton surface to update the skeleton surface set and skeleton surface dataset.

[0161] 3. For the processing of small faces and edges, the geometry returned by the backend may contain faces with small areas and edges with short lengths. When generating skeleton data, these geometric data need to be filtered out and the data of these faces and edges should not be generated.

[0162] In summary, the front end receives the skeleton data from the back end, transforms it into top skeleton axes and surfaces, and then merges the elevations to obtain the processed skeleton data. The processed skeleton data can include data from the skeleton surface dataset and the skeleton axis dataset.

[0163] After obtaining the skeleton data, the front end can generate a skeleton model and a raster model based on the skeleton data. The steps are as follows:

[0164] 1. Generate the skeleton axis model based on the position of the skeleton axis and the positional relationship of its corresponding skeleton surface (skeleton axis determination rules), such as:

[0165] (1) For a flat roof, the skeleton surface is a plane and is in the roof reference plane, then the skeleton axis generates side beams.

[0166] (2) For a sloping roof, if the frame surface is a sloping surface and the frame axis is in the roof reference plane, then it is the front beam; if it is at the highest point of the roof, then it is the wall beam.

[0167] (3) For a gable roof, if the skeleton axis is horizontal and the two adjacent skeleton surfaces are sloping, then the skeleton axis generates a ridge; if the skeleton axis is not horizontal, then it is a sloping beam.

[0168] 2. Calculate the area of ​​the grid (i.e. calculate the top grid data): Traverse each skeleton face, and according to the angle relationship between the skeleton face and the adjacent skeleton face, it needs to be expanded outward when it is a positive angle and shrunken inward when it is a negative angle. When the adjacent face is a negative angle, it is not necessary to generate a cover plate model with a common axis.

[0169] 3. Select a starting skeleton surface, and construct the vertical main beam line segment data (main beam data), the horizontal secondary beam line segment data (secondary beam data), and the glass area data (sub-area data) after being divided by the main and secondary beams, according to the preset main and secondary beam spacing (grid division rules).

[0170] 4. Traverse adjacent skeleton surfaces, transform the main beam line segment data (main beam data) of the previous adjacent skeleton surface to the coordinate system of the current skeleton surface, and generate the reference for the main beam of the current skeleton surface to achieve the effect of main beam alignment.

[0171] 5. Repeat the above steps until all skeleton surfaces have been calculated for raster data, and then generate the raster model.

[0172] In summary, a top surface skeleton model and a grid model can be generated, thus obtaining a three-dimensional model of the target roof.

[0173] This embodiment provides a method and capability for realizing a composite roof structure for sunrooms by combining multiple roof templates. It universally and efficiently meets users' needs for composite sunroom roofs, greatly improving the design capabilities of sunroom roofs. Furthermore, the UI interaction is simple, efficient, and easy to modify.

[0174] Figure 13 This is a schematic diagram of a sunroom rooftop display device according to an embodiment of this disclosure; please refer to... Figure 13 This disclosure also provides a sunroom rooftop display device 1300, which includes the following units.

[0175] The first display unit 1301 is used to respond to the selection operation of the roof unit template and the addition operation of the setting area, and to display the first view of the first roof unit corresponding to the selection operation in the setting area of ​​the display interface. The first roof unit is a roof unit in the roof unit set, and the roof unit set is a collection of roof units contained in the display interface.

[0176] The second display unit 1302 is used to display a three-dimensional model of the target roof in response to the model generation operation. The three-dimensional model of the target roof includes a skeleton model and a grid model set on the skeleton model. The three-dimensional model of the target roof is obtained based on the roof dataset, and the roof data in the roof dataset is the relevant data of the roof units in the roof unit set.

[0177] In some embodiments, the display interface includes a first area and a second area; the first display unit 1301 is further configured to: display a first view of the first roof unit corresponding to the selection operation in the setting area of ​​the first area; and display a three-dimensional model of the first roof unit in the second area.

[0178] In some embodiments, the apparatus 1300 further includes: a third display unit, configured to display a three-dimensional model of a synthetic roof in a second area in response to a roof merging operation, wherein the three-dimensional model of the synthetic roof is obtained based on synthetic data of the synthetic roof, and the synthetic data is related data of the synthetic roof obtained by merging a set of roof units based on a roof dataset, and the synthetic data is also used to obtain a three-dimensional model of the target roof.

[0179] In some embodiments, the second display unit 1302 is further configured to: determine the synthetic data of the synthetic roof based on the roof dataset, wherein the synthetic data is the relevant data of the synthetic roof obtained by merging the roof unit set; determine the skeleton data of the target roof based on the synthetic data, wherein the skeleton data includes a skeleton axis dataset corresponding to the skeleton axis set of the target roof and a skeleton surface dataset corresponding to the skeleton surface set of the target roof; generate a skeleton model based on the skeleton axis position determination rules and the skeleton data; and generate a raster model based on the raster division rules and the skeleton data.

[0180] In some embodiments, the second display unit 1302 is further configured to: send the roof dataset to the server; receive synthetic data sent by the server, wherein the synthetic data is obtained by the server performing Boolean operations on the roof unit set based on the topology dataset, the topology dataset is determined by the server based on the roof dataset, and the topology data in the topology dataset is used to characterize the topological structure of the roof units in the roof unit set.

[0181] In some embodiments, the second display unit 1302 is further configured to: determine the topology dataset corresponding to the roof unit set based on the roof dataset, wherein the topology data in the topology dataset is used to characterize the topology of the roof units in the roof unit set; and perform Boolean operations on the roof unit set based on the topology dataset to obtain synthetic data.

[0182] In some embodiments, the apparatus 1300 further includes: a building unit for building a bottom surface for each roof unit in the roof unit set and adding relevant data of the bottom surface to the topology dataset to update the topology dataset; and a removing unit for removing relevant data of the bottom surface from the synthetic data after Boolean operation to update the synthetic data.

[0183] In some embodiments, the second display unit 1302 is further configured to: determine, based on the synthetic data, a skeleton axis dataset corresponding to the skeleton axis set of the target roof and an initial skeleton surface dataset corresponding to the initial skeleton surface set of the target roof; merge the vertical skeleton surfaces in the skeleton surface set with the vertical foundation skeleton surfaces in the foundation; update the initial skeleton surface set based on the merged vertical skeleton surfaces to obtain the skeleton surface set of the target roof, and update the initial skeleton surface dataset to obtain the skeleton surface dataset corresponding to the skeleton surface set.

[0184] In some embodiments, the second display unit 1302 is further configured to: determine a first skeleton surface connected to the first skeleton axis in the skeleton axis set; determine the category of the first skeleton axis based on the first skeleton surface data corresponding to the first skeleton surface in the skeleton surface dataset and the skeleton axis position determination rule; generate a three-dimensional model of the first skeleton axis based on the first skeleton axis data corresponding to the first skeleton axis in the skeleton axis dataset and the category of the first skeleton axis; and generate a skeleton model based at least on the three-dimensional model of the first skeleton axis.

[0185] In some embodiments, the second display unit 1302 is further configured to: determine the cover plate cover label of each skeleton axis in the skeleton axis set and the boundary setting label of the mounting plate corresponding to each skeleton axis based on the skeleton axis dataset and the skeleton surface dataset; determine the raster data of each skeleton surface in the skeleton surface set based on the raster division rules and the skeleton surface dataset; and generate a raster model based on the raster data, the cover plate cover label, and the boundary setting label.

[0186] In some embodiments, the second display unit 1302 is further configured to: for the second skeleton surface in the skeleton surface set, determine the angular relationship between the second skeleton surface and the third skeleton surface, and the second skeleton axis in the skeleton axis set connecting the second skeleton surface and the third skeleton surface, based on the skeleton axis dataset and the skeleton surface dataset, wherein the third skeleton surface is the skeleton surface in the skeleton surface set adjacent to the second skeleton surface; and determine the cover plate covering label of the second skeleton axis and the boundary setting label of the mounting plate corresponding to the second skeleton axis based on the angular relationship between the second skeleton surface and the third skeleton surface.

[0187] In some embodiments, the second display unit 1302 is further configured to: when the angle between the second skeleton surface and the third skeleton surface is a positive angle, determine that the cover plate covering label of the second skeleton shaft is a first cover plate label, and determine that the boundary setting label of the mounting plate corresponding to the second skeleton shaft is a first boundary label; the first cover plate label is used to indicate that the second skeleton shaft is covered by a cover plate, and the first boundary label is used to indicate that the boundary of the mounting plate corresponding to the second skeleton shaft is an outwardly expanding boundary; or, when the angle between the second skeleton surface and the third skeleton surface is a negative angle, determine that the cover plate covering label of the second skeleton shaft is a second cover plate label, and determine that the boundary setting label of the mounting plate corresponding to the second skeleton shaft is a second boundary label; the second cover plate label is used to indicate that the second skeleton shaft is not covered by a cover plate, and the second boundary label is used to indicate that the boundary of the mounting plate corresponding to the second skeleton shaft is an inwardly recessed boundary.

[0188] In some embodiments, the second display unit 1302 is further configured to: determine the grid data of the fourth skeleton surface in the skeleton surface set based on the grid division rules; the grid data of the fourth skeleton surface includes the main beam data of the first main beam disposed on the fourth skeleton surface, the secondary beam data of the first secondary beam disposed on the fourth skeleton surface, and the sub-region data of multiple sub-regions for mounting the mounting plate divided by the first main beam and the first secondary beam.

[0189] In some embodiments, the apparatus 1300 further includes: a determining unit, configured to, for a fifth skeleton surface adjacent to the fourth skeleton surface in the skeleton surface set, determine the main beam data of a second main beam disposed on the fifth skeleton surface based on the first main beam, in the case where the connecting line between the fourth skeleton surface and the fifth skeleton surface intersects with the first main beam, so that the first main beam and the second main beam are aligned.

[0190] The specific functions and examples of each module and submodule of the apparatus in this disclosure can be found in the relevant descriptions of the corresponding steps in the above method embodiments, and will not be repeated here.

[0191] According to embodiments of this disclosure, this disclosure also provides an electronic device, a readable storage medium, and a computer program product.

[0192] This disclosure provides an electronic device, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the method described in any of the above embodiments.

[0193] This disclosure provides a non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to cause a computer to perform the method described in any of the above embodiments.

[0194] This disclosure provides a computer program product, including a computer program that, when executed by a processor, implements the method described in any of the above embodiments.

[0195] Figure 14 A schematic block diagram of an example electronic device 1400 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0196] like Figure 14 As shown, device 1400 includes a computing unit 1401, which can perform various appropriate actions and processes according to a computer program stored in read-only memory (ROM) 1402 or a computer program loaded from storage unit 1408 into random access memory (RAM) 1403. The RAM 1403 may also store various programs and data required for the operation of device 1400. The computing unit 1401, ROM 1402, and RAM 1403 are interconnected via bus 1404. Input / output (I / O) interface 1405 is also connected to bus 1404.

[0197] Multiple components in device 1400 are connected to I / O interface 1405, including: input unit 1406, such as a keyboard, mouse, etc.; output unit 1407, such as various types of displays, speakers, etc.; storage unit 1408, such as a disk, optical disk, etc.; and communication unit 1409, such as a network card, modem, wireless transceiver, etc. Communication unit 1409 allows device 1400 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0198] The computing unit 1401 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 1401 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 1401 performs the various methods and processes described above, such as the sunroom roof display method. For example, in some embodiments, the sunroom roof display method can be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 1408. In some embodiments, part or all of the computer program can be loaded and / or installed on device 1400 via ROM 1402 and / or communication unit 1409. When the computer program is loaded into RAM 1403 and executed by the computing unit 1401, one or more steps of the sunroom roof display method described above can be performed. Alternatively, in other embodiments, the computing unit 1401 may be configured to perform the sunroom roof display method by any other suitable means (e.g., by means of firmware).

[0199] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0200] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0201] In the context of this disclosure, a machine-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 machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-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 machine-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.

[0202] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0203] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with embodiments of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.

[0204] Computer systems can include clients and servers. Clients and servers are generally located far apart and typically interact via communication networks. Client-server relationships are created by computer programs running on the respective computers and having a client-server relationship with each other. Servers can be cloud servers, servers in distributed systems, or servers incorporating blockchain technology.

[0205] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.

[0206] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the principles of this disclosure should be included within the scope of protection of this disclosure.

Claims

1. A method for displaying a sunroom rooftop, comprising: In response to the selection operation of the roof unit template and the addition operation of the setting area, a first view of the first roof unit corresponding to the selection operation is displayed in the setting area of ​​the display interface, and the first roof unit is a roof unit in the roof unit set, which is a collection of roof units included in the display interface. In response to the model generation operation, a three-dimensional model of the target roof is displayed on the display interface. The three-dimensional model of the target roof includes a skeleton model and a grid model set on the skeleton model. The three-dimensional model of the target roof is obtained based on a roof dataset, and the roof data in the roof dataset is the relevant data of the roof units in the roof unit set. The display interface shows a 3D model of the target roof, including: Based on the roof dataset, synthetic data for the synthetic roof is determined, and the synthetic data is the relevant data of the synthetic roof obtained by merging the roof unit set; Based on the synthetic data, the skeleton data of the target roof is determined. The skeleton data includes a skeleton axis dataset corresponding to the skeleton axis set of the target roof and a skeleton surface dataset corresponding to the skeleton surface set of the target roof. The skeleton model is generated based on the skeleton axis position determination rules and the skeleton data; The grid model is generated based on the grid division rules and the skeleton data.

2. The method according to claim 1, wherein, The display interface includes a first area and a second area; The settings area of ​​the display interface displays a first view of the first roof unit corresponding to the selection operation, including: A first view of the first roof unit corresponding to the selection operation is displayed in the setting area of ​​the first region; A three-dimensional model of the first roof unit is displayed in the second area.

3. The method according to claim 2, further comprising: In response to the roof merging operation, a three-dimensional model of the synthesized roof is displayed in the second area. The three-dimensional model of the synthesized roof is obtained based on the synthetic data of the synthesized roof. The synthetic data is the relevant data of the synthesized roof obtained by merging the roof unit set based on the roof dataset. The synthetic data is also used to obtain the three-dimensional model of the target roof.

4. The method according to claim 1, wherein, Based on the aforementioned roof dataset, synthetic data for the synthetic roof is determined, including: Send the rooftop dataset to the server; The server receives the synthetic data sent by the server, wherein the synthetic data is obtained by the server performing Boolean operations on the roof unit set based on the topology dataset, the topology dataset is determined by the server based on the roof dataset, and the topology data in the topology dataset is used to characterize the topology of the roof units in the roof unit set.

5. The method according to claim 1, wherein, Based on the aforementioned roof dataset, synthetic data for the synthetic roof is determined, including: Based on the roof dataset, a topology dataset corresponding to the roof unit set is determined, and the topology data in the topology dataset is used to characterize the topology of the roof units in the roof unit set; Based on the topology dataset, Boolean operations are performed on the roof unit set to obtain the synthetic data.

6. The method according to claim 5, further comprising, before performing Boolean operations on the roof unit set: A bottom surface is constructed for each roof unit in the roof unit set, and the relevant data of the bottom surface is added to the topology dataset to update the topology dataset; After obtaining the synthesized data, the method further includes: Remove the relevant data of the bottom surface from the synthesized data after the Boolean operation, so as to update the synthesized data.

7. The method according to any one of claims 1-6, wherein, Based on the synthesized data, the skeleton data of the target roof is determined, including: Based on the synthesized data, determine the skeleton axis dataset corresponding to the skeleton axis set of the target roof and the initial skeleton surface dataset corresponding to the initial skeleton surface set of the target roof; Merge the vertical skeleton surfaces in the skeleton surface set with the vertical foundation skeleton surfaces in the foundation; Based on the merged vertical skeleton surfaces, the initial skeleton surface set is updated to obtain the skeleton surface set of the target roof, and the initial skeleton surface dataset is updated to obtain the skeleton surface dataset corresponding to the skeleton surface set.

8. The method according to any one of claims 1-6, wherein, Based on the skeleton axis position determination rules and the skeleton data, the skeleton model is generated, including: For the first skeleton axis in the skeleton axis set, determine the first skeleton surface connected to the first skeleton axis; Based on the first skeleton surface data corresponding to the first skeleton surface in the skeleton surface dataset and the skeleton axis position determination rule, the category of the first skeleton axis is determined; Based on the first skeleton axis data corresponding to the first skeleton axis in the skeleton axis dataset and the category of the first skeleton axis, a three-dimensional model of the first skeleton axis is generated. The skeleton model is generated based on at least the three-dimensional model of the first skeleton axis.

9. The method according to any one of claims 1-6, wherein, Based on the grid division rules and the skeleton data, the grid model is generated, including: Based on the skeleton axis dataset and the skeleton surface dataset, determine the cover plate cover label of each skeleton axis in the skeleton axis set and the boundary setting label of the mounting plate corresponding to each skeleton axis. Based on the raster division rules and the skeleton surface dataset, the raster data of each skeleton surface in the skeleton surface set is determined; The grid model is generated based on the grid data, the cover plate overlay label, and the boundary setting label.

10. The method according to claim 9, wherein, Based on the skeleton axis dataset and the skeleton surface dataset, determine the cover plate coverage label for each skeleton axis in the skeleton axis set and the boundary setting label for the mounting plate corresponding to each skeleton axis, including: For the second skeleton surface in the skeleton surface set, based on the skeleton axis dataset and the skeleton surface dataset, the angular relationship between the second skeleton surface and the third skeleton surface, and the second skeleton axis in the skeleton axis set connecting the second skeleton surface and the third skeleton surface are determined, wherein the third skeleton surface is the skeleton surface in the skeleton surface set that is adjacent to the second skeleton surface; Based on the angular relationship between the second skeleton surface and the third skeleton surface, the cover plate covering the label of the second skeleton shaft and the boundary setting label of the mounting plate corresponding to the second skeleton shaft are determined.

11. The method according to claim 10, wherein, Based on the angular relationship between the second and third skeleton surfaces, the cover plate covering label of the second skeleton shaft and the boundary setting label of the mounting plate corresponding to the second skeleton shaft are determined, including: When the angle between the second skeleton surface and the third skeleton surface is a positive angle, the cover plate covering label of the second skeleton shaft is determined to be the first cover plate label, and the boundary setting label of the mounting plate corresponding to the second skeleton shaft is determined to be the first boundary label; the first cover plate label is used to indicate that the second skeleton shaft is covered by a cover plate, and the first boundary label is used to indicate that the boundary of the mounting plate corresponding to the second skeleton shaft is an outward boundary. or, When the angle between the second skeleton surface and the third skeleton surface is a concave angle, the cover plate covering label of the second skeleton shaft is determined to be the second cover plate label, and the boundary setting label of the mounting plate corresponding to the second skeleton shaft is determined to be the second boundary label; the second cover plate label is used to indicate that the second skeleton shaft is not covered by a cover plate, and the second boundary label is used to indicate that the boundary of the mounting plate corresponding to the second skeleton shaft is an inward boundary.

12. The method according to claim 9, wherein, Based on the raster division rules and the skeleton surface dataset, the raster data of each skeleton surface in the skeleton surface set is determined, including: For the fourth skeleton surface in the skeleton surface set, the grid data of the fourth skeleton surface is determined based on the grid division rules; the grid data of the fourth skeleton surface includes the main beam data of the first main beam set on the fourth skeleton surface, the secondary beam data of the first secondary beam set on the fourth skeleton surface, and the sub-region data of multiple sub-regions for installing the mounting plate, which are divided by the first main beam and the first secondary beam.

13. The method of claim 12, further comprising: For the fifth skeleton surface in the skeleton surface set that is adjacent to the fourth skeleton surface, if the connecting line between the fourth skeleton surface and the fifth skeleton surface intersects with the first main beam, the main beam data of the second main beam set on the fifth skeleton surface is determined based on the first main beam, so that the first main beam and the second main beam are aligned.

14. A sunroom roof display device, used in the sunroom roof display method according to any one of claims 1 to 13; The rooftop display device for the sunroom includes: The first display unit is used to respond to the selection operation of the roof unit template and the addition operation of the setting area, and to display the first view of the first roof unit corresponding to the selection operation in the setting area of ​​the display interface, wherein the first roof unit is a roof unit in the roof unit set, and the roof unit set is a collection of roof units included in the display interface. The second display unit is used to display a three-dimensional model of the target roof in response to the model generation operation. The three-dimensional model of the target roof includes a skeleton model and a grid model set on the skeleton model. The three-dimensional model of the target roof is obtained based on the roof dataset, and the roof data in the roof dataset is the relevant data of the roof units in the roof unit set. The second display unit is also used for: Based on the roof dataset, synthetic data for the synthetic roof is determined, and the synthetic data is the relevant data of the synthetic roof obtained by merging the roof unit set; Based on the synthetic data, the skeleton data of the target roof is determined. The skeleton data includes a skeleton axis dataset corresponding to the skeleton axis set of the target roof and a skeleton surface dataset corresponding to the skeleton surface set of the target roof. The skeleton model is generated based on the skeleton axis position determination rules and the skeleton data; The grid model is generated based on the grid division rules and the skeleton data.

15. The apparatus according to claim 14, wherein, The display interface includes a first area and a second area; the first display unit is further configured to: A first view of the first roof unit corresponding to the selection operation is displayed in the setting area of ​​the first region; A three-dimensional model of the first roof unit is displayed in the second area.

16. The apparatus of claim 15, further comprising: The third display unit is used to display a three-dimensional model of the synthesized roof in the second area in response to the roof merging operation. The three-dimensional model of the synthesized roof is obtained based on the synthetic data of the synthesized roof. The synthetic data is the relevant data of the synthesized roof obtained by merging the roof unit set based on the roof dataset. The synthetic data is also used to obtain the three-dimensional model of the target roof.

17. The apparatus according to claim 14, wherein, The second display unit is also used for: Send the rooftop dataset to the server; The server receives the synthetic data sent by the server, wherein the synthetic data is obtained by the server performing Boolean operations on the roof unit set based on the topology dataset, the topology dataset is determined by the server based on the roof dataset, and the topology data in the topology dataset is used to characterize the topology of the roof units in the roof unit set.

18. The apparatus according to claim 14, wherein, The second display unit is also used for: Based on the roof dataset, a topology dataset corresponding to the roof unit set is determined, and the topology data in the topology dataset is used to characterize the topology of the roof units in the roof unit set; Based on the topology dataset, Boolean operations are performed on the roof unit set to obtain the synthetic data.

19. The apparatus of claim 18, further comprising: A building unit is used to build the bottom surface for each roof unit in the roof unit set and add the relevant data of the bottom surface to the topology dataset to update the topology dataset; A removal unit is used to remove the relevant data of the bottom surface from the synthesized data after the Boolean operation, so as to update the synthesized data.

20. The apparatus according to any one of claims 14-19, wherein, The second display unit is also used for: Based on the synthesized data, determine the skeleton axis dataset corresponding to the skeleton axis set of the target roof and the initial skeleton surface dataset corresponding to the initial skeleton surface set of the target roof; Merge the vertical skeleton surfaces in the skeleton surface set with the vertical foundation skeleton surfaces in the foundation; Based on the merged vertical skeleton surfaces, the initial skeleton surface set is updated to obtain the skeleton surface set of the target roof, and the initial skeleton surface dataset is updated to obtain the skeleton surface dataset corresponding to the skeleton surface set.

21. The apparatus according to any one of claims 14-19, wherein, The second display unit is also used for: For the first skeleton axis in the skeleton axis set, determine the first skeleton surface connected to the first skeleton axis; Based on the first skeleton surface data corresponding to the first skeleton surface in the skeleton surface dataset and the skeleton axis position determination rule, the category of the first skeleton axis is determined; Based on the first skeleton axis data corresponding to the first skeleton axis in the skeleton axis dataset and the category of the first skeleton axis, a three-dimensional model of the first skeleton axis is generated. The skeleton model is generated based on at least the three-dimensional model of the first skeleton axis.

22. The apparatus according to any one of claims 14-19, wherein, The second display unit is also used for: Based on the skeleton axis dataset and the skeleton surface dataset, determine the cover plate cover label of each skeleton axis in the skeleton axis set and the boundary setting label of the mounting plate corresponding to each skeleton axis. Based on the raster division rules and the skeleton surface dataset, the raster data of each skeleton surface in the skeleton surface set is determined; The grid model is generated based on the grid data, the cover plate overlay label, and the boundary setting label.

23. The apparatus according to claim 22, wherein, The second display unit is also used for: For the second skeleton surface in the skeleton surface set, based on the skeleton axis dataset and the skeleton surface dataset, the angular relationship between the second skeleton surface and the third skeleton surface, and the second skeleton axis in the skeleton axis set connecting the second skeleton surface and the third skeleton surface are determined, wherein the third skeleton surface is the skeleton surface in the skeleton surface set that is adjacent to the second skeleton surface; Based on the angular relationship between the second skeleton surface and the third skeleton surface, the cover plate covering the label of the second skeleton shaft and the boundary setting label of the mounting plate corresponding to the second skeleton shaft are determined.

24. The apparatus according to claim 23, wherein, The second display unit is also used for: When the angle between the second skeleton surface and the third skeleton surface is a positive angle, the cover plate covering label of the second skeleton shaft is determined to be the first cover plate label, and the boundary setting label of the mounting plate corresponding to the second skeleton shaft is determined to be the first boundary label; the first cover plate label is used to indicate that the second skeleton shaft is covered by a cover plate, and the first boundary label is used to indicate that the boundary of the mounting plate corresponding to the second skeleton shaft is an outward boundary. or, When the angle between the second skeleton surface and the third skeleton surface is a concave angle, the cover plate covering label of the second skeleton shaft is determined to be the second cover plate label, and the boundary setting label of the mounting plate corresponding to the second skeleton shaft is determined to be the second boundary label; the second cover plate label is used to indicate that the second skeleton shaft is not covered by a cover plate, and the second boundary label is used to indicate that the boundary of the mounting plate corresponding to the second skeleton shaft is an inward boundary.

25. The apparatus according to claim 22, wherein, The second display unit is also used for: For the fourth skeleton surface in the skeleton surface set, the grid data of the fourth skeleton surface is determined based on the grid division rules; the grid data of the fourth skeleton surface includes the main beam data of the first main beam set on the fourth skeleton surface, the secondary beam data of the first secondary beam set on the fourth skeleton surface, and the sub-region data of multiple sub-regions for installing the mounting plate, which are divided by the first main beam and the first secondary beam.

26. The apparatus of claim 25, further comprising: The determining unit is configured to, for the fifth skeleton surface adjacent to the fourth skeleton surface in the skeleton surface set, determine the main beam data of the second main beam set on the fifth skeleton surface based on the first main beam, when the connecting line between the fourth skeleton surface and the fifth skeleton surface intersects with the first main beam, so that the first main beam and the second main beam are aligned.

27. An electronic device comprising: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-13.

28. A non-transitory computer-readable storage medium storing computer instructions, wherein, The computer instructions are used to cause the computer to perform the method according to any one of claims 1-13.

29. A computer program product comprising a computer program that, when executed by a processor, implements the method according to any one of claims 1-13.

Citation Information

Patent Citations

  • Design method and design system for 3D model of sunlight room

    CN112784349A

  • Building roof automatic modeling method based on airborne LiDAR point cloud

    CN113313835A