A method and device for arranging building modules based on building plan layout
By extracting the axis data and grid line information of the building plan, combined with the stack structure management module arrangement, the problems of low efficiency and poor compatibility of building module arrangement in the existing technology are solved, and efficient and accurate building module arrangement is achieved.
Patent Information
- Application Number
- CN202411781780.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-05
- Publication Date
- 2025-08-22
- Estimated Expiration
- 2044-12-05
AI Technical Summary
The prior art lacks efficient and accurate building module arrangement methods based on building plan layout, especially inability to compatible with both types of modules, and traditional methods rely on manual experience, which makes it difficult to improve design efficiency and quality.
By obtaining building floor plan information and module information, LISP code is used to traverse the wall objects to extract the central axis coordinates and outer contour lines, combined with the wall grid lines, and using the stack structure to manage the module layout process to achieve efficient and accurate module layout.
It realizes efficient and accurate processing under a given module data set, and generates a modular building solution that meets the design requirements, which is suitable for the flexible arrangement of rectangular and L-shaped modules.
Smart Images

Figure CN119862623B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of building module arrangement, and in particular to a building module arrangement method and device based on building plane layout. Background Art
[0002] Modular construction, as an innovative architectural concept, has been rapidly promoted and applied worldwide in recent years. Its core concept is to break down a building into several standardized modules, enabling rapid construction through prefabrication and assembly of these modules.
[0003] Despite its numerous advantages, modular construction still faces challenges in practical application. For example, when determining the module division scheme based on the building plan, traditional methods rely on the designer's experience to manually divide the modules. However, it is difficult for humans to efficiently and accurately complete the division and filling of modules, which to some extent affects the design efficiency and quality of modular buildings. Many building plans are complex and diverse. When arranging modules, it is necessary to minimize the number of modules while meeting the building's usage requirements. Moreover, the size of each module must also take into account the requirements of production, transportation, lifting, and stress. These multiple factors complicate the modular layout of building plans, limiting its wider application.
[0004] With the rapid development of computer technology, digitalization and intelligentization have gradually become important development directions in the field of architectural design. Computer technology has made the design process more efficient and precise. Using computer-aided design software, designers can more intuitively design modular building solutions, including 3D modeling and simulation analysis, to better predict and optimize building performance. The application of computer technology also makes it possible to automatically generate modular division plans based on building floor plans, greatly improving design efficiency.
[0005] Currently, there are few intelligent design methods for modular building module layouts. Combining a genetic algorithm with a full-stress design method, a modular steel structure building unit size optimization and intelligent structural design method is proposed based on a given unit topology. Although this method takes the building layout into account, the unit type is a given and immutable unit type. Based on this unit type, the dimensions of each module are optimized, making it suitable for optimizing a given building plan. An intelligent generative method based on a genetic algorithm and a planar tiling algorithm is proposed to solve the optimal plan layout for modular steel structures. However, this method arranges rectangular modules of a given module size within a feasible domain without considering the building plan layout. Both of the above methods only consider rectangular modules and do not consider L-shaped modules.
[0006] In the prior art, there is a lack of an efficient and accurate building module arrangement method based on the building plan layout and applicable to two modules. Summary of the Invention
[0007] In order to solve the technical problems of the existing technology that do not consider the building plan layout and are not compatible with two types of building modules, the embodiment of the present invention provides a building module arrangement method and device based on the building plan layout. The technical solution is as follows:
[0008] In one aspect, a method for arranging building modules based on a building plan layout is provided. The method is implemented by a building module arrangement device, and the method includes:
[0009] Obtain building plan drawing information and building module information;
[0010] According to the architectural plan drawing information, the wall object is traversed through the preset LISP code, and the wall coordinates are extracted to obtain the starting point coordinates and the end point coordinates of the wall; the central axis coordinates are extracted according to the starting point coordinates and the end point coordinates to obtain the central axis position information;
[0011] Based on the building plan drawing information, extract the outer contour line according to the starting point coordinates, the end point coordinates and the central axis position information to obtain the outer contour line position information;
[0012] Based on the building plan drawing information, the inner wall in the building layout is extended toward both ends according to the starting point coordinates and the end point coordinates to obtain wall grid lines;
[0013] Based on the wall grid lines, modules are arranged according to the outer contour line position information and the building module information to obtain a building module arrangement plan.
[0014] On the other hand, a device for arranging building modules based on a building plan layout is provided, and the device is applied to a method for arranging building modules based on a building plan layout, and the device comprises:
[0015] An information acquisition module is used to obtain building plan drawing information and building module information;
[0016] A central axis position acquisition module is used to traverse the wall objects according to the building plan drawing information through a preset LISP code, extract the wall coordinates, and obtain the starting point coordinates and endpoint coordinates of the wall; extract the central axis coordinates according to the starting point coordinates and endpoint coordinates to obtain the central axis position information;
[0017] An outer contour line position acquisition module is used to extract the outer contour line based on the building plan drawing information according to the starting point coordinates, the end point coordinates and the central axis position information to obtain the outer contour line position information;
[0018] A wall grid line acquisition module is configured to extend the inner walls in the building layout toward both ends based on the building plan drawing information and the starting point coordinates and the end point coordinates to obtain wall grid lines;
[0019] The building module arrangement module is used to arrange modules based on the wall grid lines, the outer contour line position information and the building module information to obtain a building module arrangement plan.
[0020] On the other hand, a building module arrangement device is provided, which includes: a processor; a memory, wherein the memory stores computer-readable instructions, and when the computer-readable instructions are executed by the processor, any one of the above-mentioned building module arrangement methods based on building plan layout is implemented.
[0021] On the other hand, a computer-readable storage medium is provided, wherein the storage medium stores at least one instruction, and the at least one instruction is loaded and executed by a processor to implement any of the above-mentioned building module arrangement methods based on building plan layout.
[0022] The beneficial effects brought about by the technical solution provided by the embodiment of the present invention include at least:
[0023] This invention proposes a building module layout method based on building plan layout. By extracting axis data from the building plan and taking the building plan layout into account, this method efficiently and accurately processes the building plan, given a given module dataset, to generate a modular building solution that meets design requirements. By storing module and outline information in a stack, the stack push and pop operations are used to retrospectively correct errors in the module layout process. This invention provides an efficient and accurate building module layout method based on building plan layout and applicable to both types of modules. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0025] Figure 1 This is a flow chart of a method for arranging building modules based on a building plan layout provided by an embodiment of the present invention;
[0026] Figure 2 This is a schematic diagram of central axis extraction provided by an embodiment of the present invention;
[0027] Figure 3 This is a schematic diagram of point p3 selection provided by an embodiment of the present invention;
[0028] Figure 4 This is a schematic diagram of outer contour line extraction provided by an embodiment of the present invention;
[0029] Figure 5 This is a schematic diagram of a wall grid line provided by an embodiment of the present invention;
[0030] Figure 6 16 is a schematic diagram of a screening scheme provided by an embodiment of the present invention;
[0031] Figure 7 24 is a schematic diagram of a screening scheme provided by an embodiment of the present invention;
[0032] Figure 8 This is a block diagram of a building module arrangement device based on a building plan layout provided by an embodiment of the present invention;
[0033] Figure 9 It is a structural schematic diagram of a building module arrangement device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0034] The technical solution of the present invention is described below in conjunction with the accompanying drawings.
[0035] In the embodiments of the present invention, words such as "exemplarily" and "for example" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as an "exemplary" in the present invention should not be interpreted as being preferred or advantageous over other embodiments or designs. Rather, the use of the word "exemplary" is intended to present concepts in a concrete manner. Furthermore, in the embodiments of the present invention, "and / or" can mean both or either of the two.
[0036] In the embodiments of the present invention, the terms "image" and "picture" may sometimes be used interchangeably. It should be noted that, when the distinction is not emphasized, the meanings they convey are the same. The terms "of," "corresponding," and "corresponding" may sometimes be used interchangeably. It should be noted that, when the distinction is not emphasized, the meanings they convey are the same.
[0037] In the embodiments of the present invention, sometimes a subscript such as W1 may be written as a non-subscript such as W1. When the difference is not emphasized, the meanings to be expressed are the same.
[0038] In order to make the technical problems, technical solutions and advantages to be solved by the present invention clearer, a detailed description will be given below with reference to the accompanying drawings and specific embodiments.
[0039] The embodiment of the present invention provides a method for arranging building modules based on a building plan layout. The method can be implemented by a building module arranging device, which can be a terminal or a server. Figure 1 The flowchart of the method for arranging building modules based on the building plan layout is shown. The processing flow of the method may include the following steps:
[0040] S1. Obtain building plan drawing information and building module information.
[0041] The building module information includes building module size and building module type; the building module type includes rectangular building module and L-shaped building module.
[0042] In a feasible implementation, the module shapes are rectangular and L-shaped. During the arrangement process, the rectangular modules can be arranged horizontally or vertically, and the L-shaped modules can be rotated 0°, 90°, 180°, and 270°.
[0043] S2. According to the building plan drawing information, the preset LISP code is used to traverse the wall objects and extract the wall coordinates to obtain the starting point coordinates and endpoint coordinates of the wall; the central axis coordinates are extracted according to the starting point coordinates and endpoint coordinates to obtain the central axis position information.
[0044] In one feasible implementation, the present invention uses List Processing Language (LISP) to extract wall axis data from architectural plan drawings. LISP is suitable for processing list and tree-structured data. Taking AutoCAD as an example, LISP has been widely used in AutoCAD secondary development, enabling various custom functions and extending the functionality of CAD software. LISP allows developers to directly access and manipulate objects in CAD drawings. By calling the API (Application Programming Interface) provided by AutoCAD, LISP code can read object attributes, query geometric characteristics, perform mathematical calculations, and more.
[0045] When extracting the center axis of a wall, the LISP code can traverse all wall objects in the drawing, identify objects with center axis attributes, and extract coordinate information. Extract the starting point X coordinate, starting point Y coordinate, end point X coordinate, and end point Y coordinate of all wall axis segments in the building plan into a CSV file, use the pandas library function in Python to read the data, and then use the matplotlib library to draw the read line segment information. The extraction result of the center axis is as follows: Figure 2 shown.
[0046] S3. Based on the architectural plan drawing information, the outer contour line is extracted according to the starting point coordinates, the end point coordinates and the center axis position information to obtain the outer contour line position information.
[0047] Optionally, based on the architectural plan drawing information, outer contour line extraction is performed according to the starting point coordinates, the end point coordinates and the center axis position information to obtain the outer contour line position information, including:
[0048] Determine the starting point coordinates and endpoint coordinates as LineString objects;
[0049] Based on the LineString object, extract the point with the smallest horizontal coordinate value to obtain the filtered point set;
[0050] In the filtered point set, extract the point with the smallest vertical coordinate value and obtain the lower left corner point as the starting position;
[0051] Based on the architectural plan drawing information and the central axis position information, starting from the lower left corner point, according to the LineString object, the outer contour line segments are collected in a clockwise direction to obtain the outer contour line position information.
[0052] In one feasible implementation, the present invention processes architectural plan data read from a CSV file to facilitate subsequent code writing. Shapely is a Python programming library that uses a Cartesian coordinate system for geometric shape manipulation and analysis. It can implement and manipulate basic geometric objects such as points, lines, and polygons. The starting point X coordinate, starting point Y coordinate, endpoint X coordinate, and endpoint Y coordinate of all line segments are extracted and defined as LineString objects. To obtain the outer contour line data, it is necessary to traverse each central axis and collect the line segments that are the outer contour lines.
[0053] Optionally, based on the building plan drawing information and the central axis position information, starting from the lower left corner point, outer contour line segments are collected in a clockwise direction according to the LineString object to obtain outer contour line position information, including:
[0054] Determine the lower left corner point as point p1;
[0055] Based on the building plan drawing information and the central axis position information, obtain the first line segment position information corresponding to point p1; based on the first line segment position information and point p1, obtain another point p2 of the line segment;
[0056] Based on the building plan drawing information and the central axis position information, find the second line segment position information set with p2 as the endpoint;
[0057] Based on the first line segment position information, a calculation is performed according to the second line segment position information set to obtain a line segment angle set;
[0058] Based on the second line segment position information set, select the line segment corresponding to the minimum value in the line segment angle set as the second line segment position information; obtain another point p3 of the line segment based on the second line segment position information and point p2;
[0059] Determine point p2 as point p1; determine point p3 as point p2; repeat the above steps until point p3 is the lower left corner point, and collect the second line segment position information obtained in each round of calculation to obtain the outer contour line position information.
[0060] In one feasible implementation, this step begins with a line segment at the lower left corner of the plan view and proceeds clockwise to collect the outermost line segments. The set of points with the smallest X coordinate is extracted. Within this set, the point with the smallest Y coordinate is extracted. This point is called the lower left corner point. This point must be the endpoint of a line segment forming the outer contour. Next, one or more line segments with one endpoint being the lower left corner point are extracted. Among these line segments, the point with the smallest Y coordinate is found at the other endpoint. The line segment formed by this point and the lower left corner point is the starting line segment.
[0061] The lower left corner of the starting line segment is set as point p1, and the other point is set as p2. Find other line segments with point p2 as the endpoint, and set the other endpoint as point p3. Calculate the clockwise angle between the vector from p2 to p3 and the vector from p2 to p1, and select the point p3 that represents the smallest angle. The diagram is as follows Figure 3 As shown. Collect line segments with endpoints p2 and p3, assign P2 to p1, assign p3 to p2, and repeat until returning to the starting line segment. The collection of all collected line segments is the outer contour line data, as shown Figure 4 shown.
[0062] S4. Based on the architectural plan drawing information, the inner walls in the architectural layout are extended toward both ends according to the starting point coordinates and the end point coordinates to obtain wall grid lines.
[0063] In one feasible implementation, considering the building layout, the corner points of the modules should be arranged at the intersection of a wall or multiple walls, rather than at any arbitrary location in the room. Here, the inner walls of the module arrangement area are extended to both ends. When all the horizontal and vertical walls are extended, the wall grid lines are obtained, and all the wall grid lines are divided from each other, such as Figure 5 shown.
[0064] S5. Arrange modules based on the wall grid lines, outer contour line position information, and building module information to obtain a building module arrangement plan.
[0065] Optionally, based on the wall grid lines, modules are arranged according to the outer contour position information and the building module information to obtain a building module arrangement plan, including:
[0066] Based on the position information of the outer contour line, the upper left corner of the outer contour line is used as the starting point;
[0067] According to the building module information, obtain the building module information of this round;
[0068] Based on the starting point, wall grid lines, and the information of the building modules arranged in this round, the building modules are arranged along the outer contour lines according to the arrangement principles to obtain the arrangement results;
[0069] Save the information of the building modules arranged in this round to the stack M information storage module;
[0070] Calculate the new outer contour position information based on the current round of building module arrangement information and the outer contour position information; save the new outer contour position information to the stack W information storage module;
[0071] When the outer contour line is full of modules, the building module arrangement plan is output according to the stack M information storage module and the stack W information storage module.
[0072] In one feasible implementation, a stack is a linear data structure that manages data using the "first in, last out" principle. The process of adding an element is called "pushing," and the process of removing an element is called "popping." In this invention, two stacks are established. The first stack, referred to as "stack M," stores module types and layout information. The second stack, referred to as "stack W," stores updated outline information after module layout.
[0073] The stack does not allow direct access to the bottom element, but can only reach the bottom by removing the elements at the top one by one. The module arrangement scheme adopted in the present invention is to arrange the modules from the upper left of the outer contour line. Every time a module is successfully arranged, the module information is put into the stack M, and the outer contour lines of the remaining unarranged module areas are extracted, that is, the information of the outer contour lines of the updated ones is put into the stack W, and circulates successively. If all modules in the module data set cannot be arranged in a certain position, the information of the top layers of stack M and stack W is released so that the modules are arranged backward from the progress of the previous step, and the effect of backtracking is achieved, until the whole outer contour line is covered with modules. By stacking and popping functions, all module arrangement schemes under this given module data set can be generated at last.
[0074] Among them, the layout principles include the first principle and the second principle; the first principle is that the building module is within the outer contour line; the second principle is that the corner points of the building module coincide with the grid intersection points of the wall grid lines.
[0075] In a feasible implementation, to determine whether a module can be arranged in a certain position, it is necessary to satisfy the following conditions: all corner points of the module must be at the grid intersections of the wall grid lines, and all parts of the module must be within the outer contour line.
[0076] In a feasible implementation, the present invention generates 25 schemes based on actual building data. Among them, the modular building layout scheme should minimize the number of module types and modules. There is no strong correlation between the two. The specific selection can be based on the actual situation. The selected schemes are as follows: Figure 6 、 Figure 7 As shown in the figure, Scheme 16 uses 14 modules and 7 types of modules, while Scheme 24 uses 16 modules and 6 types of modules. Through the above technical solutions and methods, the building layout is fully considered, and the flexible use of two types of modules can be achieved. This allows for efficient and accurate processing of the building plan, generating a modular building solution that meets the design requirements.
[0077] This invention proposes a building module layout method based on building plan layout. By extracting axis data from the building plan and taking the building plan layout into account, this method efficiently and accurately processes the building plan, given a given module dataset, to generate a modular building solution that meets design requirements. By storing module and outline information in a stack, the stack push and pop operations are used to retrospectively correct errors in the module layout process. This invention provides an efficient and accurate building module layout method based on building plan layout and applicable to both types of modules.
[0078] Figure 8 This is a block diagram of a building module arrangement device based on a building plan layout according to an exemplary embodiment. The device is used in a building module arrangement method based on a building plan layout. Figure 8 The device includes an information acquisition module 810, a central axis position acquisition module 820, an outer contour position acquisition module 830, a wall grid line acquisition module 840, and a building module arrangement module 850.
[0079] Information acquisition module 810, used to obtain building plan drawing information and building module information;
[0080] The central axis position acquisition module 820 is configured to traverse the wall objects according to the architectural plan drawing information using a preset LISP code, extract the wall coordinates, and obtain the starting point coordinates and endpoint coordinates of the wall; extract the central axis coordinates based on the starting point coordinates and endpoint coordinates to obtain the central axis position information;
[0081] The outer contour line position acquisition module 830 is configured to extract the outer contour line based on the building plan drawing information according to the starting point coordinates, the end point coordinates and the central axis position information to obtain the outer contour line position information;
[0082] The wall grid line acquisition module 840 is configured to extend the interior walls in the building layout toward both ends based on the building plan drawing information and the start point coordinates and the end point coordinates to obtain wall grid lines.
[0083] The building module arrangement module 850 is used to arrange modules based on the wall grid lines, the outer contour line position information and the building module information to obtain a building module arrangement plan.
[0084] The building module information includes building module size and building module type; the building module type includes rectangular building module and L-shaped building module.
[0085] Optionally, the outer contour line position acquisition module 830 is further configured to:
[0086] Determine the starting point coordinates and endpoint coordinates as LineString objects;
[0087] Based on the LineString object, extract the point with the smallest horizontal coordinate value to obtain the filtered point set;
[0088] In the filtered point set, extract the point with the smallest vertical coordinate value and obtain the lower left corner point as the starting position;
[0089] Based on the architectural plan drawing information and the central axis position information, starting from the lower left corner point, according to the LineString object, the outer contour line segments are collected in a clockwise direction to obtain the outer contour line position information.
[0090] Optionally, the outer contour line position acquisition module 830 is further configured to:
[0091] Determine the lower left corner point as point p1;
[0092] Based on the building plan drawing information and the central axis position information, obtain the first line segment position information corresponding to point p1; based on the first line segment position information and point p1, obtain another point p2 of the line segment;
[0093] Based on the building plan drawing information and the central axis position information, find the second line segment position information set with p2 as the endpoint;
[0094] Based on the first line segment position information, a calculation is performed according to the second line segment position information set to obtain a line segment angle set;
[0095] Based on the second line segment position information set, select the line segment corresponding to the minimum value in the line segment angle set as the second line segment position information; obtain another point p3 of the line segment based on the second line segment position information and point p2;
[0096] Determine point p2 as point p1; determine point p3 as point p2; repeat the above steps until point p3 is the lower left corner point, and collect the second line segment position information obtained in each round of calculation to obtain the outer contour line position information.
[0097] Optionally, the building module arrangement module 850 is further configured to:
[0098] Based on the position information of the outer contour line, the upper left corner of the outer contour line is used as the starting point;
[0099] According to the building module information, obtain the building module information of this round;
[0100] Based on the starting point, wall grid lines, and the information of the building modules arranged in this round, the building modules are arranged along the outer contour lines according to the arrangement principles to obtain the arrangement results;
[0101] Save the information of the building modules arranged in this round to the stack M information storage module;
[0102] Calculate the new outer contour position information based on the current round of building module arrangement information and the outer contour position information; save the new outer contour position information to the stack W information storage module;
[0103] When the outer contour line is full of modules, the building module arrangement plan is output according to the stack M information storage module and the stack W information storage module.
[0104] Among them, the layout principles include the first principle and the second principle; the first principle is that the building module is within the outer contour line; the second principle is that the corner points of the building module coincide with the grid intersection points of the wall grid lines.
[0105] This invention proposes a building module layout method based on building plan layout. By extracting axis data from the building plan and taking the building plan layout into account, this method efficiently and accurately processes the building plan, given a given module dataset, to generate a modular building solution that meets design requirements. By storing module and outline information in a stack, the stack push and pop operations are used to retrospectively correct errors in the module layout process. This invention provides an efficient and accurate building module layout method based on building plan layout and applicable to both types of modules.
[0106] Figure 9 This is a structural diagram of a building module arrangement device provided by an embodiment of the present invention. Figure 9 As shown, the building module arrangement equipment may include the above Figure 8Optionally, the building module arrangement device 910 may include a first processor 2001 .
[0107] Optionally, the building module arranging device 910 may further include a memory 2002 and a transceiver 2003 .
[0108] The first processor 2001, the memory 2002 and the transceiver 2003 may be connected via a communication bus.
[0109] The following combination Figure 9 The components of the building module arrangement device 910 are described in detail:
[0110] The first processor 2001 is the control center of the building module arrangement device 910 and can be a single processor or a collective term for multiple processing elements. For example, the first processor 2001 can be one or more central processing units (CPUs), an application specific integrated circuit (ASIC), or one or more integrated circuits configured to implement embodiments of the present invention, such as one or more digital signal processors (DSPs) or one or more field programmable gate arrays (FPGAs).
[0111] Optionally, the first processor 2001 can perform various functions of the building module arrangement device 910 by running or executing a software program stored in the memory 2002 and calling data stored in the memory 2002.
[0112] In a specific implementation, as an embodiment, the first processor 2001 may include one or more CPUs, such as Figure 9 CPU0 and CPU1 are shown in FIG.
[0113] In a specific implementation, as an embodiment, the building module arrangement device 910 may also include multiple processors, such as Figure 9 1 and 2. The first processor 2001 and the second processor 2004 are shown in FIG. Each of these processors can be a single-core processor (single-CPU) or a multi-core processor (multi-CPU). A processor herein can refer to one or more devices, circuits, and / or processing cores for processing data (e.g., computer program instructions).
[0114] The memory 2002 is used to store the software program for executing the solution of the present invention, and is controlled by the first processor 2001 for execution. The specific implementation method can refer to the above method embodiment and will not be repeated here.
[0115] Alternatively, the memory 2002 may be a read-only memory (ROM) or other type of static storage device capable of storing static information and instructions, a random access memory (RAM) or other type of dynamic storage device capable of storing information and instructions, an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, an optical disc storage (including a compact disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.), a magnetic disk storage medium or other magnetic storage device, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and capable of being accessed by a computer, but not limited thereto. The memory 2002 may be integrated with the first processor 2001 or may exist independently and accessed through the interface circuit ( Figure 9 (not shown) is coupled to the first processor 2001, which is not specifically limited in this embodiment of the present invention.
[0116] The transceiver 2003 is used to communicate with a network device or a terminal device.
[0117] Optionally, the transceiver 2003 may include a receiver and a transmitter ( Figure 9 The receiver is used to implement a receiving function, and the transmitter is used to implement a sending function.
[0118] Optionally, the transceiver 2003 may be integrated with the first processor 2001, or may exist independently and be connected to the interface circuit of the building module arrangement device 910 ( Figure 9 (not shown) is coupled to the first processor 2001, which is not specifically limited in this embodiment of the present invention.
[0119] It should be noted that Figure 9 The structure of the building module arrangement device 910 shown in the figure does not constitute a limitation on the router. The actual knowledge structure recognition device may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.
[0120] In addition, the technical effects of the building module arrangement device 910 can refer to the technical effects of the building module arrangement method based on the building plane layout described in the above method embodiment, and will not be repeated here.
[0121] It should be understood that the first processor 2001 in the embodiment of the present invention may be a central processing unit (CPU), or may be other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field programmable gate arrays (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor, or the processor may be any conventional processor, etc.
[0122] It should also be understood that the memory in the embodiments of the present invention may be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. The non-volatile memory may be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The volatile memory may be random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of random access memory (RAM) are available, such as static RAM (SRAM), dynamic random access memory (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), and direct rambus RAM (DR RAM).
[0123] The above embodiments can be implemented in whole or in part via software, hardware (e.g., circuits), firmware, or any other combination thereof. When implemented using software, the above embodiments can be implemented in whole or in part in the form of a computer program product. The computer program product comprises one or more computer instructions or computer programs. When loaded or executed on a computer, the processes or functions described in accordance with the embodiments of the present invention are fully or partially performed. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired means (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium accessible by a computer or a data storage device such as a server or data center that contains a collection of one or more available media. The available medium can be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., DVDs), or semiconductor media. The semiconductor media can be a solid-state drive.
[0124] It should be understood that the term "and / or" as used herein simply describes a relationship between associated objects, indicating that three possible relationships exist. For example, "A and / or B" can represent: A alone, A and B together, or B alone. A and B can be singular or plural. Furthermore, the character " / " as used herein generally indicates an "or" relationship between the associated objects, but it may also indicate an "and / or" relationship. For specific understanding, please refer to the context.
[0125] In this disclosure, "at least one" means one or more, and "plurality" means two or more. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, "at least one of a, b, or c" can mean: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or plural.
[0126] It should be understood that in various embodiments of the present invention, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.
[0127] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present invention.
[0128] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described equipment, devices and units can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0129] In the several embodiments provided by the present invention, it should be understood that the disclosed devices, apparatuses and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another device, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interface, indirect coupling or communication connection of the device or unit, which can be electrical, mechanical or other forms.
[0130] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0131] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0132] If the functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the portion that contributes to the prior art, or the portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in various embodiments of the present invention. The aforementioned storage media include various media that can store program code, such as USB flash drives, mobile hard drives, read-only memories (ROM), random access memories (RAM), magnetic disks, or optical disks.
[0133] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any modifications or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present invention should be included in the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be based on the scope of protection of the claims.
Claims
1. A method for arranging building modules based on building plan layout, characterized in that: The method comprises: Obtain building plan drawing information and building module information; According to the architectural plan drawing information, the wall object is traversed through the preset LISP code, and the wall coordinates are extracted to obtain the starting point coordinates and the end point coordinates of the wall; the central axis coordinates are extracted according to the starting point coordinates and the end point coordinates to obtain the central axis position information; Based on the building plan drawing information, extract the outer contour line according to the starting point coordinates, the end point coordinates and the central axis position information to obtain the outer contour line position information; Based on the building plan drawing information, the inner wall in the building layout is extended toward both ends according to the starting point coordinates and the end point coordinates to obtain wall grid lines; Based on the wall grid lines, modules are arranged according to the outer contour line position information and the building module information to obtain a building module arrangement plan.
2. The method for arranging building modules based on building plan layout according to claim 1, characterized in that: The building module information includes building module size and building module type; the building module type includes rectangular building modules and L-shaped building modules.
3. The method for arranging building modules based on building plan layout according to claim 1, characterized in that: The extracting of the outer contour line based on the building plan drawing information according to the starting point coordinates, the endpoint coordinates and the central axis position information to obtain the outer contour line position information includes: Determine the starting point coordinates and the endpoint coordinates as LineString objects; Based on the LineString object, extract the point with the smallest horizontal coordinate value to obtain a filter point set; In the filter point set, the point with the smallest vertical coordinate value is extracted to obtain the lower left corner point as the starting position; Based on the building plan drawing information and the central axis position information, starting from the lower left corner point, outer contour line segments are collected in a clockwise direction according to the LineString object to obtain outer contour line position information.
4. The method for arranging building modules based on building plan layout according to claim 3, characterized in that: The method of obtaining the outer contour line position information by collecting outer contour line segments in a clockwise direction based on the building plan drawing information and the central axis position information starting from the lower left corner point and according to the LineString object includes: Determine the lower left corner point as point p1; Based on the building plan drawing information and the central axis position information, obtain the first line segment position information corresponding to the point p1; and obtain another point p2 of the line segment according to the first line segment position information and the point p1; Based on the building plan drawing information and the central axis position information, find a second line segment position information set with p2 as an endpoint; Based on the first line segment position information, a calculation is performed according to the second line segment position information set to obtain a line segment angle set; Based on the second line segment position information set, select the line segment corresponding to the minimum value in the line segment angle set as the second line segment position information; obtain another line segment point p3 according to the second line segment position information and the point p2; Determine the point p2 as point p1; determine the point p3 as point p2; repeat the above steps until point p3 is the lower left corner point, and collect the second line segment position information obtained in each round of calculation to obtain the outer contour line position information.
5. The method for arranging building modules based on building plan layout according to claim 1, characterized in that: The step of arranging modules based on the wall grid lines, according to the outer contour line position information and the building module information, to obtain a building module arrangement plan includes: Based on the outer contour line position information, the upper left corner point of the outer contour line is used as the starting point; According to the building module information, obtain the building module information of this round of arrangement; Based on the starting point, the wall grid lines, and the information of the building modules arranged in this round, the building modules are arranged along the outer contour lines according to the arrangement principle to obtain an arrangement result; Saving the information of the building modules arranged in this round to the stack M information storage module; Calculate according to the current round of arranged building module information and the outer contour line position information to obtain new outer contour line position information; save the new outer contour line position information to the stack W information storage module; When the outer contour line is fully filled with modules, a building module arrangement plan is output according to the stack M information storage module and the stack W information storage module.
6. The method for arranging building modules based on building plan layout according to claim 5, characterized in that: The arrangement principles include a first principle and a second principle; the first principle is that the building modules are within the outer contour line; the second principle is that the corner points of the building modules coincide with the grid intersections of the wall grid lines.
7. A building module arrangement device based on a building plan layout, the building module arrangement device based on a building plan layout being used to implement the building module arrangement method based on a building plan layout as claimed in any one of claims 1 to 6, characterized in that: The device comprises: An information acquisition module is used to obtain building plan drawing information and building module information; A central axis position acquisition module is used to traverse the wall objects according to the building plan drawing information through a preset LISP code, extract the wall coordinates, and obtain the starting point coordinates and endpoint coordinates of the wall; extract the central axis coordinates according to the starting point coordinates and endpoint coordinates to obtain the central axis position information; An outer contour line position acquisition module is used to extract the outer contour line based on the building plan drawing information according to the starting point coordinates, the end point coordinates and the central axis position information to obtain the outer contour line position information; A wall grid line acquisition module is configured to extend the inner walls in the building layout toward both ends based on the building plan drawing information and the starting point coordinates and the end point coordinates to obtain wall grid lines; The building module arrangement module is used to arrange modules based on the wall grid lines, the outer contour line position information and the building module information to obtain a building module arrangement plan.
8. The building module arrangement device based on building plan layout according to claim 7, characterized in that: The outer contour line position acquisition module is further used to: Determine the starting point coordinates and the endpoint coordinates as LineString objects; Based on the LineString object, extract the point with the smallest horizontal coordinate value to obtain a filter point set; In the filter point set, the point with the smallest vertical coordinate value is extracted to obtain the lower left corner point as the starting position; Based on the building plan drawing information and the central axis position information, starting from the lower left corner point, outer contour line segments are collected in a clockwise direction according to the LineString object to obtain outer contour line position information.
9. A building module arrangement device, characterized in that: The building module arrangement equipment includes: processor; A memory having computer-readable instructions stored thereon, wherein when the computer-readable instructions are executed by the processor, the method according to any one of claims 1 to 6 is implemented.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores program code, which can be called by a processor to execute the method according to any one of claims 1 to 6.
Citation Information
Patent Citations
Generation method, device and equipment of modular steel structure model and medium
CN117195383A
Room arrangement method and device, electronic equipment and storage medium
CN118779940A