Simulation method and system based on variable space residence user requirements

Through simulation methods and systems based on the needs of residential users based on variable spaces, the problems of information loss and designer understanding deviations in the communication process of customer demands are solved, and the effect of design solutions is achieved consistent with customer expectations is achieved, the design cycle is shortened and design efficiency and customer satisfaction are improved.

CN119577885AActive Publication Date: 2025-03-07CHINA CONSTR THIRD ENG BUREAU GRP CO LTD

Patent Information

Application Number
CN202411558230.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-04
Publication Date
2025-03-07
Estimated Expiration
2044-11-04

AI Technical Summary

Technical Problem

During the existing variable space residential design process, information loss and designer understanding deviations are prone to occur during the communication of customer needs, resulting in inconsistent with customer expectations, and extending the design cycle.

Method used

It provides a simulation method and system based on the needs of residential users in variable spaces. By analyzing residential information, it obtains basic attributes, decomposes them into local spaces and provides controls, and users can accurately express their requirements. The system converts the requirements into structured design data, and provides an interactive design interface in a virtual environment to adjust and view effects in real time.

Benefits of technology

Reduces information loss in the process of customer demand communication, eliminates designer understanding bias, ensures that the final design plan is consistent with customer expectations, shortens the design cycle, and improves design efficiency and customer satisfaction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119577885A_ABST
    Figure CN119577885A_ABST
Patent Text Reader

Abstract

The invention provides a simulation method and system based on variable space residence user requirements, and relates to the technical field of buildings. The basic attribute information is obtained by analyzing the uploaded residence information, accurate basic data is provided for subsequent design, the residence information is divided into local spaces, corresponding controls are provided, a user can accurately express the demand of each space, the detailed demand collection mode reduces information loss in the customer thought transmission process, and the user experience is improved. According to the method, user requirements are converted into structured design requirement data, the step effectively eliminates understanding deviation of designers, an interactive design interface is provided in a virtual environment, the users directly participate in the design process and adjust and view the effect in real time, and therefore it is ensured that a final design scheme is consistent with customer expectations, and the method shortens the design period and improves the design efficiency. And the design efficiency and the customer satisfaction are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of building technology, and in particular to a simulation method and system based on user needs of variable-space residences. Background Art

[0002] With the acceleration of urbanization and the improvement of people's living standards, the demand for living space is becoming increasingly diversified and personalized. People are no longer satisfied with standardized residential design, but hope to customize and transform their living space according to their own lifestyle and needs. This trend has promoted the development of variable space residential design, allowing residential space to more flexibly adapt to the needs of different users.

[0003] At present, the design of variable space housing is mainly realized in the following ways: designers communicate with customers face to face to collect demand information; use CAD software such as AutoCAD and Revit to draw floor plans, and use 3D modeling software such as SketchUp and 3ds Max to create three-dimensional models; then select appropriate functional modules and furniture from existing product catalogs or sample books provided by furniture manufacturers based on experience; and integrate these elements into the design. Throughout the process, designers need to confirm with customers many times and adjust the plan based on feedback.

[0004] However, from the customer's expectations to the final design plan, there are many links in between: the customer's inner thoughts, the customer's verbal expression, the designer's understanding, and the designer's specific presentation. Deviations may occur in each link, and these deviations accumulate, often resulting in a large gap between the final design plan and the customer's expectations. Therefore, the design process often requires multiple communications and modifications, which prolongs the entire design cycle. Summary of the invention

[0005] The present application provides a simulation method and system based on the needs of variable space residential users, which are used to shorten the design cycle.

[0006] In the first aspect, the present application provides a simulation method based on the user demand of a variable space residence, including: parsing the uploaded residential information of the current residence to obtain the basic attribute information of the current residence, the basic attribute information including house size, layout information, wall data, door and window data; dividing the current residential information into several local spaces according to the basic attribute information; providing controls for each local space and the whole, the controls are used to enable users to provide demand information about each local space or the whole; after receiving the demand information for each local space and the whole, converting each user demand information into structured design demand data; and loading the function from a preset database according to each design demand data. A functional module library is provided so that each local space and the whole corresponds to a functional module library; the overall house outline of the current residence is generated in the virtual environment according to the basic attribute information, and the corresponding local space outline is generated within the overall house outline according to the division of the local space; an interactive design interface is provided in the virtual environment, and the interactive design interface includes the overall house outline and each local space outline, and the whole and each local space correspond to the functional module library; there are several modules in the functional module library, and the user can control the rotation, scaling and movement of the modules; a design plan of the current residence is generated according to the virtual environment adjusted by the user, and the design plan includes a floor plan, a 3D model, a material list, module coordinates and a cost estimate.

[0007] By adopting the above technical solution, basic attribute information is obtained by parsing the uploaded residential information, providing accurate basic data for subsequent design, dividing the residential information into local spaces and providing corresponding controls, so that users can accurately express the needs of each space. This refined demand collection method reduces information loss in the process of conveying customer ideas and converts user needs into structured design demand data. This step effectively eliminates the designer's understanding bias and provides an interactive design interface in a virtual environment, allowing users to directly participate in the design process, adjust and view the effects in real time, thereby ensuring that the final design plan is consistent with customer expectations. This method shortens the design cycle and improves design efficiency and customer satisfaction.

[0008] In combination with some embodiments of the first aspect, in some embodiments: the step of converting each user demand information into structured design requirement data specifically includes: preprocessing the user demand information to obtain preprocessed text; splitting the preprocessed text into sentences; performing word segmentation on the sentences to obtain a word sequence; performing part-of-speech tagging on each word in the word sequence; performing named entity recognition on the word sequence after part-of-speech tagging to identify specific entities; performing dependency syntactic analysis based on the results of part-of-speech tagging and named entity recognition to determine the grammatical relationship between words and construct a dependency tree; and generating design requirement data based on the dependency tree, the word sequence after part-of-speech tagging, and the specific entity.

[0009] By adopting the above technical solutions, user demand information is preprocessed and split, laying the foundation for subsequent analysis. Through word segmentation and part-of-speech tagging, the system can identify keywords and grammatical structures. In particular, the named entity recognition step can accurately identify specific entities related to design, such as furniture, materials, etc. Dependency syntactic analysis further clarifies the relationship between words and constructs a complete semantic structure. This series of processing steps enables the system to deeply understand the internal logic and association of user needs, thereby generating more accurate and structured design demand data and improving the accuracy of demand conversion.

[0010] In combination with some embodiments of the first aspect, in some embodiments: the step of generating design requirement data according to a dependency tree, a word sequence after part-of-speech tagging, and a specific entity specifically includes: associating the specific entity and the modifiers corresponding to the specific entity in the word sequence after part-of-speech tagging according to the dependency tree to obtain a design element set; establishing a predefined semantic mapping table to map the design element set to design attributes to obtain a semantic mapping result; extracting the quantity information corresponding to the design element set in the word sequence after part-of-speech tagging according to the dependency tree, and assigning the quantity information to the design element set to obtain a quantity design element set; determining the priority of each quantity design element in the quantity design element set according to the dependency tree, and arranging the quantity design element set according to the priority to obtain a priority design element set; arranging the priority design elements in the priority design element set according to the dependency tree according to the subordinate relationship to obtain the design requirement data.

[0011] By adopting the above technical solution, a set of design elements is formed by associating specific entities and modifiers. This step ensures the integrity of the design requirements. The design elements are mapped to specific design attributes using a predefined semantic mapping table, which improves the accuracy of the requirement interpretation. By extracting quantity information and assigning it to design elements, the system can accurately grasp the user's specific demand for each design element. By determining the priority of each design element and arranging them according to subordinate relationships, the system not only captures the content of the user's needs, but also accurately reflects the importance and hierarchy of the needs. This multi-dimensional and multi-level requirement data generation method makes the final design requirement data closer to the user's true intentions and improves the pertinence and satisfaction of the design solution.

[0012] In combination with some embodiments of the first aspect, in some embodiments: the overall house outline of the current residence is generated in a virtual environment according to the basic attribute information, and the corresponding local space outline is generated within the overall house outline according to the division of the local space, specifically including: creating a blank virtual environment; setting the initial ground plane size according to the house size in the basic attribute information, creating a corresponding number of blank floors according to the house size in the basic attribute information, setting the vertical spacing between the blank floors according to the house size in the basic attribute information, and obtaining an initial blank residential structure; generating a wall model in the initial blank residential structure according to the wall data in the basic attribute information, creating door and window openings on the wall model and placing the door and window models according to the door and window data in the basic attribute information, and generating a stair model at a specified position in the initial blank residential structure according to the stair data in the basic attribute information, and obtaining the overall house outline; creating a rectangular geometric body as a room placeholder of the local space outline within the overall house outline according to the division of the local space, and assigning a unique identifier and associated information to each room placeholder to obtain a preliminary layout plan; generating channel and corridor placeholders in the preliminary layout plan, connecting each room placeholder, and obtaining a local space outline.

[0013] By adopting the above technical solution, by creating a blank virtual environment and setting the initial structure according to the basic attribute information, the basic framework of the virtual model is ensured to be consistent with the actual residence. By generating wall, door, window and stair models, the details of the overall house outline are further improved. Room placeholders are created according to the local space division, and each placeholder is assigned a unique identifier and associated information, which ensures a high degree of consistency between the virtual model and the actual residence, provides users with an intuitive and accurate design foundation, and improves the accuracy and efficiency of the subsequent design process.

[0014] In combination with some embodiments of the first aspect, in some embodiments: the steps of a user being able to control the rotation, scaling and movement of a module specifically include: establishing a three-dimensional space coordinate system, determining an origin in the three-dimensional space coordinate system, and positioning the module with the origin as a reference; receiving user input, determining that the user input is a rotation operation, a scaling operation or a movement operation; when the user input is a rotation operation, converting the user input into a rotation direction and a rotation angle; determining a rotation axis, which can be any axis of the three-dimensional space coordinate system or a custom axis; calculating the new position of each point of the module after rotation based on the rotation direction, rotation angle and rotation axis; when the user input is During a scaling operation, the user input is converted into a scaling ratio; the scaling center point is determined, which is usually the geometric center of the module; based on the scaling ratio and the scaling center point, the distance from each point of the module to the scaling center point is proportionally adjusted; when the user input is a moving operation, the user input is converted into a moving direction and a moving distance; based on the moving direction and the moving distance, the displacement of the module on each coordinate axis of the three-dimensional space coordinate system is calculated; according to the displacement, the coordinates of all points of the module are updated; based on the new position, new size or new direction of the module obtained after performing a rotation operation, a scaling operation or a moving operation, the display of the module in the three-dimensional space coordinate system is updated.

[0015] By adopting the above technical solution and establishing a three-dimensional space coordinate system, an accurate reference basis is provided for module operation. The system can recognize and process the user's rotation, scaling and movement operations. These three basic operations cover most design adjustment requirements. In particular, when performing a rotation operation, the system can achieve precise rotation at any angle by determining the rotation axis, direction and angle. In the scaling operation, the module size is precisely controlled by determining the scaling center point and ratio. In the moving operation, the module position is accurately adjusted by calculating the displacement on each coordinate axis. By updating the display of the module in three-dimensional space in real time, intuitive feedback is provided to the user, allowing the user to easily implement complex space design, improving the freedom and accuracy of the design, thereby improving the quality of the design solution and the user experience.

[0016] In combination with some embodiments of the first aspect, in some embodiments: after the step of updating the display of the module in the three-dimensional space coordinate system based on the new position, new size or new orientation of the module obtained after performing a rotation operation, a scaling operation or a movement operation, the method also includes: creating a bounding box for each module; when a rotation operation, a scaling operation or a movement operation is performed, updating the position information of the bounding box of the affected module in the three-dimensional space coordinate system; determining whether the bounding box of the affected module intersects with the bounding boxes of other modules; if the determination result is that the bounding boxes intersect, executing a collision strategy.

[0017] By adopting the above technical solution, the system simplifies the collision detection calculation of complex shapes by creating a bounding box for each module. After the user operates the module, the system automatically updates the bounding box position information of the affected module and performs real-time collision judgment. This real-time detection mechanism can detect potential spatial conflicts in time during the design process, avoiding the situation where problems are discovered in the late stage of the design and require major modifications. In particular, the system can not only detect collisions, but also provide a choice of collision strategies. This flexible processing method makes the design process smoother. By timely discovering and resolving spatial conflicts, this method improves the accuracy and efficiency of the design and reduces design errors.

[0018] In combination with some embodiments of the first aspect, in some embodiments: the collision strategy includes: preventing the operation that causes the collision and restoring the affected module to the state before the operation; or, allowing the operation but marking the colliding module and highlighting the colliding module in a specific way in the display in the three-dimensional space coordinate system; or, automatically adjusting the position of the affected module so that the bounding box of the affected module does not intersect with the bounding boxes of other modules.

[0019] By adopting the above technical solutions, the collision strategy method provided by this application provides users with flexible and diverse spatial conflict resolution methods. The "prevent operations that cause collisions" strategy can effectively prevent unreasonable design modifications and ensure the rationality of the design. The "allow operations but mark collision modules" strategy provides users with greater design freedom, while highlighting the collision modules in a specific way, allowing users to clearly identify potential problems. The "automatically adjust module position" strategy provides an intelligent conflict resolution method and reduces the user's operational burden. These three strategies cover different needs from strict control to intelligent assistance.

[0020] In the second aspect, the present application provides a simulation system based on the needs of residential users in variable space, and the simulation system based on the needs of residential users in variable space includes: one or more processors and a memory; the memory is coupled to the one or more processors, and the memory is used to store computer program code, and the computer program code includes computer instructions, and the one or more processors call the computer instructions to enable the simulation system based on the needs of residential users in variable space to perform the method described in the first aspect and any possible implementation method of the first aspect.

[0021] In the third aspect, the present application provides a computer program product comprising instructions, which, when run on a simulation system based on the needs of residential users in variable space, enables the simulation system based on the needs of residential users in variable space to perform the method described in the first aspect and any possible implementation method of the first aspect.

[0022] In a fourth aspect, the present application provides a computer-readable storage medium comprising instructions, which, when executed on a simulation system based on the needs of residential users in variable space, enables the simulation system based on the needs of residential users in variable space to perform the method described in the first aspect and any possible implementation of the first aspect.

[0023] One or more technical solutions provided in the embodiments of the present application have at least the following technical effects or advantages: 1. By parsing the uploaded residential information to obtain basic property information, accurate basic data is provided for subsequent design. The residential information is divided into local spaces and corresponding controls are provided so that users can accurately express the needs of each space. This refined demand collection method reduces information loss in the process of conveying customer ideas and converts user needs into structured design demand data. This step effectively eliminates the designer's understanding bias and provides an interactive design interface in a virtual environment, allowing users to directly participate in the design process, adjust and view the effects in real time, thereby ensuring that the final design plan is consistent with customer expectations. This method shortens the design cycle and improves design efficiency and customer satisfaction.

[0024] 2. By associating specific entities and modifiers, a set of design elements is formed. This step ensures the integrity of the design requirements. The design elements are mapped to specific design attributes using a predefined semantic mapping table, which improves the accuracy of the requirement interpretation. By extracting quantity information and assigning it to design elements, the system can accurately grasp the user's specific demand for each design element. By determining the priority of each design element and arranging them according to a subordinate relationship, the system not only captures the content of the user's needs, but also accurately reflects the importance and hierarchy of the needs. This multi-dimensional and multi-level demand data generation method makes the final design demand data closer to the user's true intentions and improves the pertinence and satisfaction of the design solution.

[0025] 3. By creating a bounding box for each module, the system simplifies the collision detection calculation of complex shapes. After the user operates the module, the system automatically updates the bounding box position information of the affected module and performs real-time collision judgment. This real-time detection mechanism can detect potential spatial conflicts in time during the design process, avoiding the situation where problems are discovered in the late stage of the design and require major modifications. In particular, the system can not only detect collisions, but also provide a choice of collision strategies. This flexible processing method makes the design process smoother. By timely discovering and resolving spatial conflicts, this method improves the accuracy and efficiency of the design and reduces design errors. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] Figure 1 It is a flow chart of a simulation method based on variable space residential user demand in an embodiment of the present application; Figure 2 yes Figure 1 A flow chart of step S104 in FIG. Figure 3 yes Figure 2 A flow chart of step S1047 in FIG. Figure 4 yes Figure 1 A flow chart of step S107; Figure 5 It is an exemplary hardware structure diagram of a simulation system based on the needs of residential users with variable space in an embodiment of the present application. DETAILED DESCRIPTION

[0027] The terms used in the following embodiments of the present application are only for the purpose of describing specific embodiments, and are not intended to be used as limitations to the present application. As used in the specification and appended claims of the present application, the singular expressions "one", "a kind of", "said", "above", "the" and "this" are intended to also include plural expressions, unless there is a clear indication to the contrary in the context. It should also be understood that the term "and / or" used in the present application refers to and includes any or all possible combinations of one or more listed items.

[0028] In the following, the terms "first" and "second" are used for descriptive purposes only and are not to be understood as suggesting or implying relative importance or implicitly indicating the number of the indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of the features, and in the description of the embodiments of the present application, unless otherwise specified, "plurality" means two or more.

[0029] See also Figure 1 , Figure 1 It is a flow chart of a simulation method based on variable space residential user demand in an embodiment of the present application; S101, parsing the uploaded residential information of the current residence to obtain basic attribute information of the current residence, where the basic attribute information includes house size, layout information, wall data, and door and window data; Residential information refers to a comprehensive collection of data used to describe a specific residential property, such as CAD drawings, BIM models or other formats.

[0030] In some embodiments, the system receives residential information uploaded by users, uses a specific parsing algorithm to extract key information, and converts raw data into structured basic attribute information.

[0031] In some specific embodiments, image recognition technology is used to analyze the uploaded floor plan to identify elements such as walls, doors and windows; the corresponding dimension data is directly obtained from the floor plan; and the obtained data is converted into a standardized data structure, which is not limited here.

[0032] In some specific embodiments, three-dimensional space information is directly extracted from the BIM file; basic attribute information of the current residence is measured, which is not limited here.

[0033] S102, dividing the current residential information into a plurality of local spaces according to the basic attribute information; Local space refers to independent functional areas or rooms within a residence.

[0034] In some embodiments, the entire residence is spatially divided using the layout information and wall locations obtained in step S101.

[0035] In some specific embodiments, a spatial connectivity map is constructed based on the location of walls; the topological characteristics of the connectivity map are analyzed to identify interconnected spatial units; different room types are identified based on the distribution of doors and windows and the shape of the space; the identification results are matched with predefined room type templates; and a spatial layout report is generated, including the location, area, and type information of each room; this is not limited here.

[0036] In some specific embodiments, the digitized floor plan is parsed to extract layer information including room annotations; text annotations on the floor plan are identified to directly obtain room names and types; this is not limited here.

[0037] S103, providing controls for each local space and the whole, where the controls are used to allow the user to provide required information about each local space or the whole; Among them, controls refer to interactive elements in the user interface, which are used to receive user input or display information.

[0038] In some embodiments, the system designs dedicated interactive controls for each local space (such as the kitchen, bedroom, etc.) and the entire house. These controls may include drop-down menus, sliders, text boxes, etc., allowing users to specify their specific requirements for each space in detail. For example, users can use controls to select the layout type of the kitchen, specify the main color of the living room, set the storage requirements of the bedroom, etc. At the same time, overall controls are also provided for setting the unified style or overall functional requirements of the entire house.

[0039] S104, after receiving each local space and overall demand information, convert each user demand information into structured design demand data; Structured design requirement data refers to user requirement information that has been systematically processed and standardized to facilitate subsequent automated design and data processing.

[0040] In some embodiments, the system receives demand information provided by the user through various controls in step S103. This information may include text descriptions, option selections, numerical inputs, etc. The system uses predefined data models and conversion rules to uniformly convert these diverse inputs into standardized data structures.

[0041] In some specific embodiments, user input is mapped to predefined demand categories; natural language processing technology is used to extract keywords and semantic information from text descriptions; a rule engine is applied to generate data objects that conform to a predefined structure based on the extracted information, which is not limited here.

[0042] S105, according to each design requirement data, load the function module library from the preset database respectively, so that each local space and the whole corresponds to a function module library; In some embodiments, the system analyzes the structured design requirements data for each local space and the whole house, identifies key functional requirements and design preferences, and accesses a preset design resource database that contains a large number of classified and organized design elements, furniture models, material textures, and other resources. Based on the identified requirements, the system selectively loads corresponding functional modules for each local space and the whole house.

[0043] In some specific embodiments, key information, such as space type, style, size, etc., is extracted from the design requirement data, the extracted information is used to construct a database query, the query is executed, qualified functional modules are obtained, a functional module library object is created for each local space, and the queried modules are added to the corresponding functional module library.

[0044] S106, generating an overall house outline of the current residence in the virtual environment according to the basic attribute information, and generating corresponding local space outlines according to the division of local spaces within the overall house outline; In some embodiments, the basic attribute information obtained in step S101, especially the house size and wall data, is used to construct the outer outline of the house in a virtual three-dimensional environment. This process includes creating the basic geometric shapes of the exterior walls, floors and roofs. The system draws the boundaries of each local space within the overall outline based on the space division result in step S102, which includes creating elements such as interior walls, door and window openings, to form a complete indoor space structure.

[0045] In some embodiments, S106 specifically includes: S1061. Create a blank virtual environment; In some embodiments, the system creates a virtual three-dimensional space without any content. The system reads the house size in the basic attribute information and uses this data to determine the size of the ground plane, which is usually a rectangle or other simple geometric shape. Next, the system creates a corresponding number of blank floors vertically on this ground plane based on the specified number of floors. Each floor is a plane and does not contain any internal structure for the time being. The system uses the house size to set the vertical distance between these blank floors to ensure that the height of the overall structure is reasonable. In this way, the system creates an initial residential structure that is simple but contains basic spatial information.

[0046] In some specific embodiments, the scene creation function of the software is called to create a blank three-dimensional scene; the plane creation function is used to create a ground plane according to the size of the house; the loop and copy functions are used to create multiple floor planes according to the specified number of floors; the transformation function is used to set the vertical position of each floor plane to achieve the floor spacing; all created elements are combined into a group or set to form an initial blank residential structure, which is not limited here.

[0047] S1062, generating a wall model in the initial blank residential structure according to the wall data in the basic attribute information, creating door and window openings on the wall model and placing the door and window models according to the door and window data in the basic attribute information, and generating a stair model at a specified position in the initial blank residential structure according to the stair data in the basic attribute information, to obtain the overall house outline; In some embodiments, the system reads the wall data in the basic attribute information and generates corresponding wall models in each floor of the initial blank residential structure. These walls define the boundaries of the room and the outer outline of the house. Next, the system processes the door and window data, creates appropriate openings on the generated wall models, and places door and window models in these openings. This step not only increases the functionality of the house, but also defines the connection between the internal and external spaces. The system generates a stair model at a specified location based on the stair data to connect different floors. Through these steps, the system gradually constructs a complete residential outline including walls, doors, windows, and stairs from a blank frame structure, laying the foundation for subsequent detailed design.

[0048] In some specific embodiments, parametric models of walls, doors, windows and stairs are defined, including properties such as position, size, and material; based on the wall data, wall instances are created on each floor plane, and wall joints are automatically processed; the door and window data are parsed, openings are created on the corresponding walls, and the door and window models are instantiated; based on the stair data, stair instances are created at specified locations, and connections with adjacent floors are automatically adjusted; all generated elements are combined to form the overall house outline, which is not limited here.

[0049] S1063, according to the division of the local space, creating a rectangular geometric body within the overall house outline as a room placeholder of the local space outline, and assigning a unique identifier and associated information to each room placeholder to obtain a preliminary layout plan; In some embodiments, the system determines the type and approximate location of the room to be created based on a predetermined local space division scheme. Within the overall house outline, the system creates a series of rectangular geometries, each of which represents a room. These rectangles are simplified representations that are used to occupy the approximate space of the room. Next, the system assigns a unique identifier to each room placeholder so that each room can be accurately referenced in subsequent operations. At the same time, the system also adds associated information to each placeholder, such as room type (bedroom, living room, kitchen, etc.), estimated area, orientation, etc.

[0050] In some specific embodiments, a space partitioning algorithm can be used: implement a rectangular partitioning algorithm, such as a binary space partitioning tree (BSP tree); recursively divide the overall space into small rectangular areas according to predetermined room types and area requirements; create a geometric body as a room placeholder for each divided rectangular area; use a hash table or database to assign a unique identifier to each placeholder; add associated information to each placeholder based on information during the partitioning process, such as room type and area; check and adjust the partitioning results to ensure compliance with architectural design specifications, which are not limited here.

[0051] S1064. Generate passage and corridor placeholders in the preliminary layout plan, connect the room placeholders, and obtain a local space outline.

[0052] In some embodiments, the system analyzes the relative positions and relationships of the room placeholders in the preliminary layout plan, and the system creates passage placeholders between the rooms that need to be connected. These passages may be short connecting passages or long corridors that run through the entire house. The system will take into account the architectural design specifications to ensure that the width of the passages and corridors is sufficient and avoid unnecessary bends or intersections. When creating these passage spaces, the system may need to adjust the size or position of some room placeholders to accommodate the newly added passages and corridors. Through this process, the system connects the independent room placeholders into a whole, forming a more complete and practical local space outline, which provides a basis for subsequent detailed design and optimization.

[0053] In some specific embodiments, a path planning algorithm can be used: implement a path planning algorithm such as A* or Dijkstra algorithm; regard room placeholders as nodes in a graph and possible travel paths as edges; use an algorithm to calculate the optimal path connecting all rooms; create aisle and corridor placeholders between rooms based on the calculated path; adjust the width of aisles and corridors to ensure compliance with building codes; adjust the size of adjacent rooms when necessary to accommodate the newly added travel space, which is not limited here.

[0054] It can be seen that by creating a blank virtual environment and setting the initial structure according to the basic attribute information, the basic framework of the virtual model is ensured to be consistent with the actual residence. By generating wall, door, window and stair models, the details of the overall house outline are further improved. Room placeholders are created according to the local space division, and each placeholder is assigned a unique identifier and associated information, which ensures a high degree of consistency between the virtual model and the actual residence, provides users with an intuitive and accurate design foundation, and improves the accuracy and efficiency of the subsequent design process.

[0055] S107, providing an interactive design interface in the virtual environment, the interactive design interface including the overall house outline and each local space outline, the overall house outline and each local space outline corresponding to a functional module library; the functional module library includes a number of modules, and the user can control the rotation, scaling and movement of the modules; In some embodiments, the system creates an intuitive graphical interface in a 3D virtual environment, showing the outline of the entire residence and the layout of all local spaces. Each space is associated with a corresponding functional module library loaded in step S105. The user can browse these module libraries, select design elements of interest, such as furniture, decorations, etc., and drag and drop them into the virtual space. The system provides intuitive control tools that allow the user to freely adjust the position, direction, and size of these elements.

[0056] S108. Generate a design plan for the current residence based on the virtual environment adjusted by the user, the design plan including a floor plan, a 3D model, a material list, module coordinates, and a cost estimate.

[0057] In some embodiments, the system extracts the design layout and element configuration information finalized by the user from the virtual environment, and the system automatically generates design documents in multiple formats: generates accurate two-dimensional floor plans to show the space layout and furniture positions; renders high-quality 3D models to provide realistic visual effects; prepares a detailed list of materials, including all design elements and decoration materials used; records the precise coordinates of each module to facilitate subsequent construction; and calculates the cost estimate of the overall project based on the selected materials and processes.

[0058] In some specific embodiments, the model data in the virtual environment adjusted by the user is directly used. The 2D floor plan is directly generated from the model using the export function of the software. All modules in the model are traversed to count the usage of each material. A simple statistical function is created to record the name and quantity of each material. The coordinate information of each module is directly extracted from the model. A coordinate list is created to record the ID and corresponding X, Y, and Z coordinates of each module. A unit price attribute is assigned to each module. All modules are traversed, and the quantity of each module is multiplied by its unit price, and the total cost is accumulated. The above information (floor plan, bill of materials, module coordinates, and cost estimate) are integrated into one document to obtain a design solution.

[0059] It can be seen that by parsing the uploaded residential information to obtain basic attribute information, accurate basic data is provided for subsequent design. The residential information is divided into local spaces and corresponding controls are provided, so that users can accurately express the needs of each space. This detailed demand collection method reduces information loss in the process of conveying customer ideas and converts user needs into structured design demand data. This step effectively eliminates the designer's understanding bias and provides an interactive design interface in a virtual environment, allowing users to directly participate in the design process, adjust and view the effects in real time, thereby ensuring that the final design plan is consistent with customer expectations. This method shortens the design cycle and improves design efficiency and customer satisfaction.

[0060] See also Figure 2 , Figure 2 yes Figure 1 A flow chart of step S104; Step S104 specifically includes: S1041, preprocessing the user demand information to obtain a preprocessed text; User demand information refers to the original demand content described by the user in natural language. The preprocessing process includes removing redundant blank characters, unifying uppercase and lowercase characters, replacing special characters, correcting obvious spelling errors, etc., so as to make the text more standardized and standardized, laying the foundation for subsequent processing.

[0061] In some specific embodiments, the user demand information can be preprocessed in a variety of ways: Optionally, the following steps can be used: using regular expressions to match and delete redundant blank characters; converting all text to lowercase; replacing common abbreviations and abbreviations; using predefined dictionaries to check and correct spelling errors. This is not limited here.

[0062] S1042, splitting the preprocessed text into sentences; In some implementations, the system identifies sentence boundaries in the text, such as punctuation marks such as periods, question marks, and exclamation marks, and performs segmentation at these locations.

[0063] In some specific embodiments, the sentence segmentation function of the natural language processing library can be used: import the sent_tokenize module of NLTK; pass the preprocessed text as input to the sent_tokenize function; obtain the returned sentence list, which is not limited here.

[0064] S1043, performing word segmentation processing on the sentence to obtain a word sequence; Word segmentation refers to the process of dividing a sentence into smaller language units, and a word sequence represents a list of words arranged in the order in which they appear in the original sentence.

[0065] S1044, performing part-of-speech tagging on each word in the word sequence; Part-of-speech tagging refers to the process of identifying the grammatical function of each word in a sentence. Parts of speech include grammatical categories such as nouns, verbs, and adjectives.

[0066] In some specific embodiments, a dictionary containing common words and their possible parts of speech is established; a series of context rules are defined to resolve ambiguous situations; a word sequence is traversed, a dictionary is searched, and the rules are applied to determine the part of speech, which is not limited here.

[0067] S1045, performing named entity recognition on the word sequence after the part-of-speech tagging to identify specific entities; Named entity recognition refers to the process of identifying and classifying specific categories of entities in text. Specific entities represent noun phrases with specific meanings.

[0068] In some embodiments, a rule-based and dictionary-based approach may be used: establishing a dictionary containing common named entities; defining a series of pattern matching rules; traversing word sequences, applying dictionaries and rules to identify entities, which is not limited here.

[0069] S1046, based on the results of part-of-speech tagging and named entity recognition, performing dependency syntax analysis, determining the grammatical relationship between words and constructing a dependency tree; A dependency tree is a tree structure that represents the dependency relationship between words.

[0070] In some embodiments, the system analyzes the relationship between each word and other words, determines the central word (dominant word) and dependency type of each word. This process takes into account part-of-speech information, entity types, and grammatical rules of the language, and ultimately builds a dependency tree that reflects the entire sentence structure.

[0071] In some specific embodiments, a rule-based approach can be used: define a set of grammatical rules to describe possible dependency relationships between different parts of speech; starting from the root node of the sentence, recursively apply the rules to determine the dependency relationship of each word; and construct a dependency tree based on the determined relationship, which is not limited here.

[0072] In some specific embodiments, a pre-trained dependency parser, such as Stanford Parser, is used; the results of part-of-speech tagging and named entity recognition are input into the parser; and the dependency relationship and dependency tree structure output by the parser are obtained, which is not limited here.

[0073] See also Figure 3 , Figure 3 yes Figure 2 A flow chart of step S1047 in FIG. S1047. Generate design requirement data based on the dependency tree, the word sequence after part-of-speech tagging, and the specific entity.

[0074] In some embodiments, the design requirement data includes a combination of a dependency tree, a word sequence after part-of-speech tagging, and a specific entity.

[0075] It can be seen that preprocessing and splitting user demand information lays the foundation for subsequent analysis. Through word segmentation and part-of-speech tagging, the system can identify keywords and grammatical structures. In particular, the named entity recognition step can accurately identify specific entities related to design, such as furniture, materials, etc. Dependency syntactic analysis further clarifies the relationship between words and constructs a complete semantic structure. This series of processing steps enables the system to deeply understand the internal logic and association of user needs, thereby generating more accurate and structured design demand data and improving the accuracy of demand conversion.

[0076] However, in actual use, if the design requirement data only includes a combination of dependency trees, word sequences after part-of-speech tagging, and specific entities, then a problem will arise. The dependency trees, word sequences after part-of-speech tagging, and specific entities only stay at the level of piling various information together without integrating and refining the core.

[0077] Therefore, in some embodiments, S1047 specifically includes: S10471, associating the specific entity with the modifier corresponding to the specific entity in the word sequence after the part-of-speech tagging according to the dependency tree to obtain a set of design elements; In some embodiments, the system will traverse the dependency tree to find modifiers that are directly related to a specific entity. These modifiers may be adjectives, adverbs, or phrases that are connected to the entity through certain grammatical relationships (such as adjective clauses). The system will associate these modifiers with the corresponding specific entities to form design elements. Each design element contains a specific entity and all its related modification information.

[0078] In some specific embodiments, a rule-based approach is used: a set of rules are defined to describe possible dependency types between modifiers and entities; the dependency tree is traversed, and for each specific entity, directly connected nodes that satisfy the rules are found; the found modifiers are combined with the corresponding specific entities to form design elements, which are not limited here.

[0079] S10472. Establish a predefined semantic mapping table, map the design element set to the design attribute, and obtain a semantic mapping result; In some embodiments, a predefined semantic mapping table contains various possible design elements and their corresponding standard design attributes. The system traverses each element in the design element set, searches for matching items in the semantic mapping table, and converts them into corresponding standard design attributes.

[0080] In some specific embodiments, a mapping table containing common design elements and corresponding design attributes is provided; for each element in the set of design elements, a search is performed in the mapping table for an exact match or the most similar item; if a match is found, the corresponding design attribute is used; if there is no exact match, a predefined fuzzy matching rule is applied, which is not limited here.

[0081] S10473, extracting quantity information corresponding to the design element set in the word sequence after the part-of-speech tagging according to the dependency tree, and assigning the quantity information to the design element set to obtain a quantity design element set; In some embodiments, the system traverses the dependency tree to find quantifiers or values ​​associated with entities in the design element set. These quantity information may appear in different forms, such as direct numbers, quantifiers (such as "multiple", "several"), or more complex quantity expressions (such as "at least 5"). The system needs to correctly identify these quantity information and associate them with the corresponding design elements.

[0082] In some specific embodiments, a set of rules are defined to describe the possible locations and forms of expression of quantity information in a dependency tree; the dependency tree is traversed to find relevant nodes that satisfy the rules for each design element; the found nodes are parsed to extract quantity information and assign it to the corresponding design element, which is not limited here.

[0083] S10474. Determine the priority of each quantity design element in the quantity design element set according to the dependency tree, and arrange the quantity design element set according to the priority to obtain a priority design element set; In some embodiments, the system analyzes the grammatical relationships in the dependency tree and considers factors such as subject-predicate relationships, modification relationships, and parallel relationships to evaluate the importance of each design element. For example, the subject of a sentence usually has a higher priority, while elements in a subordinate clause may have a lower priority. In addition, the system may also consider some linguistic features, such as emphasis words ("especially", "especially") or sentence position information to adjust the priority.

[0084] In some specific embodiments, priority scores corresponding to different grammatical relationships and positions are described; the dependency tree is traversed, and for each quantitative design element, a priority score is calculated based on its position and relationship in the tree; and the set of quantitative design elements is sorted based on the calculated priority scores, which are not limited here.

[0085] S10475. Arrange the priority design elements in the priority design element set according to the subordinate relationship according to the dependency tree to obtain design requirement data.

[0086] In some embodiments, the system analyzes the subordinate relationships in the dependency tree, such as master-slave relationships, parallel relationships, etc., to determine the hierarchical structure between design elements. For example, a main design element may have multiple subordinate sub-elements, and these sub-elements may have their own subordinate elements. The system needs to correctly identify these relationships and organize the design elements according to this hierarchical structure to ultimately form a complete and structured design requirement data.

[0087] In some specific embodiments, a set of rules are defined to describe the subordinate relationships represented by different types of edges in a dependency tree; starting from the design element with the highest priority, the dependency tree is traversed to identify the subordinate elements related to it; this process is recursively applied to construct a hierarchical design requirement structure, which is not limited here.

[0088] It can be seen that by associating specific entities and modifiers to form a set of design elements, this step ensures the integrity of the design requirements. The design elements are mapped to specific design attributes using a predefined semantic mapping table, which improves the accuracy of the requirement interpretation. By extracting quantity information and assigning it to design elements, the system can accurately grasp the user's specific demand for each design element. By determining the priority of each design element and arranging them according to a subordinate relationship, the system not only captures the content of the user's needs, but also accurately reflects the importance and hierarchy of the needs. This multi-dimensional and multi-level demand data generation method makes the final design demand data closer to the user's true intentions and improves the pertinence and satisfaction of the design solution.

[0089] See also Figure 4 , Figure 4 yes Figure 1 A flow chart of step S107; In some implementations, the steps of the user controlling the rotation, scaling and movement of the module in step S107 specifically include: S1071. Establish a three-dimensional space coordinate system, determine an origin in the three-dimensional space coordinate system, and use the origin as a reference for positioning the module; In some implementations, the system needs to establish a standard three-dimensional rectangular coordinate system, define three mutually perpendicular coordinate axes X, Y, and Z, and select an appropriate point in this coordinate system as the origin, usually (0, 0, 0). Next, the system will use this origin as a reference to locate the module to be operated. This means that the position of the module will be expressed in coordinates relative to the origin. This step provides a unified reference framework for various subsequent spatial operations.

[0090] In some specific embodiments, a computer graphics library can be used: select a suitable 3D graphics library, such as OpenGL or DirectX; use library functions to create a 3D world coordinate system; define the origin position, usually (0, 0, 0); use the transformation function provided by the library to place the module at the appropriate position relative to the origin.

[0091] S1072, receiving user input, and determining whether the user input is a rotation operation, a scaling operation, or a movement operation; In some embodiments, the system needs to monitor and parse the user's input behavior. This may involve the recognition and classification of mouse movement, clicks, drags, keyboard keys, or touch screen gestures. The system needs to convert these raw inputs into meaningful operation instructions, such as rotation, scaling, or movement, according to predefined rules or patterns.

[0092] In some specific embodiments, an event-driven method can be used: register event listeners for different types of user input (such as mouse events, keyboard events); in the event processing function, determine the operation type based on the input characteristics (such as the direction and distance of mouse movement, key combination, etc.); pass the determination result to the corresponding operation processing module, which is not limited here.

[0093] S1073. When the user input is a rotation operation, convert the user input into a rotation direction and a rotation angle; determine a rotation axis, which may be any axis of a three-dimensional space coordinate system or a custom axis; and calculate new positions of each point of the module after rotation based on the rotation direction, rotation angle, and rotation axis. In some embodiments, the system needs to convert the user input (such as the distance and direction of the mouse drag) into a specific rotation direction and angle. The system needs to determine the rotation axis, which may be a preset coordinate axis or a custom axis dynamically calculated based on the user input. The system uses mathematical tools such as three-dimensional rotation matrices or quaternions to calculate the new position of each point in the module after rotation.

[0094] In some specific embodiments, the rotation angle and direction are calculated based on user input; the rotation axis is determined, which can be the X, Y, Z axis or a custom axis; a corresponding 3x3 rotation matrix is ​​constructed; this rotation matrix is ​​applied to each point of the module to calculate the new position, which is not limited here.

[0095] In some specific embodiments, the rotation axis and angle are converted to quaternion representation; the quaternion rotation operation is performed on each point of the module; and the rotated quaternion result is converted back to a three-dimensional coordinate. It is understandable that other methods can also be used to implement the rotation operation, such as using Euler angles or axis-angle representation, and calculating the rotated position through corresponding mathematical formulas, which is not limited here.

[0096] S1074, when the user input is a zoom operation, convert the user input into a zoom ratio; determine a zoom center point, which is usually the geometric center of the module; and proportionally adjust the distances from each point of the module to the zoom center point based on the zoom ratio and the zoom center point; In some implementations, the system needs to convert the user input (such as the scroll amount of the mouse wheel) into a specific zoom ratio. The system needs to determine the center point of the zoom, usually the geometric center of the module, but other points may be selected according to specific needs. The system calculates the vector from each point in the module to the zoom center point, and adjusts the length of this vector according to the zoom ratio to obtain the new position of each point after zooming.

[0097] In some specific embodiments, the geometric center of the module is calculated as the scaling center point; the user input (such as the amount of mouse wheel scrolling) is converted into a scaling ratio; for each point of the module, the vector to the scaling center point is calculated; this vector is multiplied by the scaling ratio; and the scaled vector is added back to the scaling center point to obtain the new position of the point.

[0098] In some specific embodiments, a 3x3 scaling matrix is ​​constructed, and the elements on the diagonal are the scaling ratios; the coordinates of the scaling center point are subtracted from the coordinates of all points of the module; the scaling matrix is ​​applied to the result; and the result is added back to the coordinates of the scaling center point. It is understandable that other methods can also be used to implement the scaling operation, such as using a parametric surface method to perform non-uniform scaling on complex shapes, which is not limited here.

[0099] S1075, when the user input is a moving operation, convert the user input into a moving direction and a moving distance; based on the moving direction and the moving distance, calculate the displacement of the module on each coordinate axis of the three-dimensional space coordinate system; and update the coordinates of all points of the module according to the displacement; In some embodiments, the system needs to convert the user input (such as the direction and distance of mouse dragging) into the movement direction and distance in three-dimensional space. The system needs to decompose this movement into the three coordinate axes of X, Y, and Z, and calculate the displacement on each axis. The system adds these displacements to the original coordinates of each point in the module to obtain the new coordinates after the movement.

[0100] In some specific embodiments, user input (such as mouse dragging) is converted into a movement vector in three-dimensional space; this movement vector is added to the coordinates of each point of the module; and the coordinates of all points of the module are updated, which is not limited here.

[0101] In some specific embodiments, a 4x4 translation matrix is ​​constructed, in which the first three elements of a column are the displacements on the X, Y, and Z axes; all points of the module are represented as homogeneous coordinates (adding a fourth component 1); the translation matrix is ​​applied to each point; and the result is converted back to three-dimensional coordinates, which is not limited here.

[0102] S1076: Update the display of the module in the three-dimensional space coordinate system based on the new position, new size or new direction of the module obtained after performing the rotation operation, scaling operation or movement operation.

[0103] It can be seen that by establishing a three-dimensional spatial coordinate system, an accurate reference basis is provided for module operations. The system can recognize and process the user's rotation, scaling and movement operations. These three basic operations cover most design adjustment requirements. In particular, when performing rotation operations, by determining the rotation axis, direction and angle, the system can achieve precise rotation at any angle. In the scaling operation, by determining the scaling center point and ratio, precise control of the module size is achieved. In the moving operation, the displacement on each coordinate axis is calculated to ensure accurate adjustment of the module position. By updating the display of the module in three-dimensional space in real time, intuitive feedback is provided to users, allowing users to easily implement complex spatial designs, improving the freedom and accuracy of the design, thereby improving the quality of the design solution and user experience.

[0104] In some embodiments, after step S1076, the method further includes: S1077. Create a bounding box for each module; Among them, modules refer to independent objects in the virtual environment, such as furniture, walls, etc. The bounding box represents a simplified, rectangular three-dimensional space that is used to enclose the entire geometric shape of the module.

[0105] In some embodiments, the system analyzes the geometry of each module and calculates its maximum and minimum coordinate values ​​in three dimensions. The system uses these coordinate values ​​to create a rectangular box that just contains the entire module. This bounding box is usually axis-aligned, that is, its sides are parallel to the axes of the coordinate system to simplify subsequent calculations. The bounding box will not be displayed in the final rendering result, but as an auxiliary tool for quickly detecting collisions and spatial relationships.

[0106] In some specific embodiments, all vertices of the module are traversed to find the minimum and maximum values ​​on each coordinate axis; an axis-aligned bounding box (AABB) is created using these extreme values; and the bounding box information is associated with the module object and stored as a property of the module, which is not limited here.

[0107] S1078, after performing a rotation operation, a scaling operation or a movement operation, updating the position information of the bounding box of the affected module in the three-dimensional space coordinate system; S1079, determining whether the bounding box of the affected module intersects with the bounding boxes of other modules; In some embodiments, the system obtains the updated bounding box information of the affected module, and the system traverses all other modules in the scene and compares their bounding boxes with the bounding box of the affected module one by one. The comparison process usually involves checking whether the projections of the two bounding boxes on the three coordinate axes overlap. If there is overlap on all three axes, the two bounding boxes are considered to intersect.

[0108] In some specific embodiments, the Separating Axis Theorem (SAT) is used: for each pair of bounding boxes that need to be detected, determine the potential separating axis; project the two bounding boxes on each separating axis; check whether the projections overlap; if there is overlap on all axes, it is determined to be an intersection; in a preferred embodiment, the detection can be stopped immediately when the first non-overlapping axis is found, which is not limited here.

[0109] S10710: If the judgment result is that the bounding boxes intersect, execute the collision strategy.

[0110] It can be seen that by creating a bounding box for each module, the system simplifies the collision detection calculation of complex shapes. After the user operates the module, the system automatically updates the bounding box position information of the affected module and performs real-time collision judgment. This real-time detection mechanism can detect potential spatial conflicts in time during the design process, avoiding the situation where problems are discovered in the late stage of the design and require major modifications. In particular, the system can not only detect collisions, but also provide a choice of collision strategies. This flexible processing method makes the design process smoother. By timely discovering and resolving spatial conflicts, this method improves the accuracy and efficiency of the design and reduces design errors.

[0111] Collision strategies include: Stop the operation that caused the collision and restore the affected modules to the state before the operation; In some embodiments, the system identifies the specific operation that caused the collision, which may be a user's drag, rotation, or scaling action, and the system will immediately terminate the execution of this operation and not allow it to be completed. Next, the system will access the previously saved module state information, which includes the module's precise position coordinates, rotation angle, and size parameters before the operation began. The system uses this information to accurately restore the affected module to the state before the operation began, and the system will update the scene display to ensure that the user can see that the module has returned to its original position. This process is usually accompanied by visual or auditory feedback to remind the user that the operation is blocked.

[0112] or, The operation is allowed, but the colliding modules are marked and highlighted in a specific way in the display in the three-dimensional space coordinate system; In some embodiments, the system allows the user to complete the current operation, whether it is moving, rotating, or scaling, and the system identifies all pairs of modules that collide. For each colliding module, the system marks their collision status in an internal data structure. Next, the system applies predefined visual effects to highlight these modules. This may include adding a distinct outline to the module, changing the color of the module (for example, turning it red or flashing), adding a translucent highlight area around the module, or displaying a warning icon above the module. The system may also adjust the camera perspective to ensure that the user can clearly see all colliding modules. This visual feedback persists until the collision state is resolved or the user chooses to ignore it.

[0113] or, The position of the affected module is automatically adjusted so that the bounding box of the affected module does not intersect with the bounding boxes of other modules.

[0114] In some embodiments, the system identifies all pairs of modules that collide. The system analyzes each collision and calculates the extent and direction of the collision. Based on this information, the system attempts to find a new position so that the affected module no longer collides with other modules. This process may involve multiple iterations, each time fine-tuning the position of the module and rechecking the collision status. The system considers other constraints in the scene, such as the position of the floor, walls, and the positions of other non-colliding modules, to ensure that the adjusted position is reasonable. If a suitable new position is found, the system smoothly moves the module to this position. If a suitable position cannot be found within a predetermined number of attempts, the system may trigger other strategies or notify the user.

[0115] In some embodiments, a physics-based simulation method can be used: assign mass and other physical properties, such as friction coefficient, to each module; use a physics engine to simulate the interaction forces between colliding objects; apply a small repulsive force in the simulation to gradually separate the colliding modules; check the collision status after each simulation step until all collisions are resolved; if the simulation reaches a stable state and there is no collision, apply the calculated new position; if the collision cannot be resolved within a predetermined time, roll back to the initial state and try other strategies, which are not limited here.

[0116] It can be seen that the collision strategy method provided in this application provides users with flexible and diverse spatial conflict resolution methods. The "prevent operations that cause collisions" strategy can effectively prevent unreasonable design modifications and ensure the rationality of the design. The "allow operations but mark collision modules" strategy provides users with greater design freedom, while highlighting collision modules in a specific way, allowing users to clearly identify potential problems. The "automatically adjust module position" strategy provides an intelligent conflict resolution method and reduces the user's operational burden. These three strategies cover different needs from strict control to intelligent assistance.

[0117] The following introduces an exemplary simulation system 500 based on variable space residential user needs provided in an embodiment of the present application. Figure 5 It is a schematic diagram of an exemplary hardware structure of a simulation system 500 based on variable space residential user needs provided in an embodiment of the present application.

[0118] In some embodiments, the simulation system 500 based on the needs of users of variable space residences is a computer device or the simulation system 500 based on the needs of users of variable space residences includes a computer device. The computer device includes a processor, a memory and a network interface connected by a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store data. The network interface of the computer device is used to communicate with other external terminals or servers through a network connection. In some embodiments, the network interface can be a wired network interface, and in some embodiments, the network interface can also be a wireless network interface. When the computer program is executed by the processor, the method in the embodiment of the present application is implemented.

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

[0120] As described above, the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present application.

[0121] As used in the above embodiments, the term "when..." may be interpreted to mean "if..." or "after..." or "in response to determining..." or "in response to detecting...", depending on the context. Similarly, the phrases "upon determining..." or "if (the stated condition or event) is detected" may be interpreted to mean "if determining..." or "in response to determining..." or "upon detecting (the stated condition or event)" or "in response to detecting (the stated condition or event)", depending on the context.

[0122] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from one website site, computer, server or data center to another website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium may be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrated. The available medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state hard disk), etc.

[0123] Those skilled in the art can understand that to implement all or part of the processes in the above-mentioned embodiments, the processes can be completed by computer programs to instruct related hardware, and the programs can be stored in computer-readable storage media. When the programs are executed, they can include the processes of the above-mentioned method embodiments. The aforementioned storage media include: ROM or random access memory RAM, magnetic disk or optical disk and other media that can store program codes.

Claims

1. A simulation method based on the needs of residential users with variable space, characterized in that: include: Parsing the uploaded residential information of the current residence to obtain basic property information of the current residence, the basic property information including house size, layout information, wall data, door and window data, and stair data; Dividing the current residential information into a plurality of local spaces according to the basic attribute information; Providing a control for each of the local spaces and the whole, wherein the control is used to allow a user to provide required information about each of the local spaces or the whole; After receiving the demand information of each local space and the whole, converting each user demand information into structured design demand data; According to each of the design requirement data, a function module library is loaded from a preset database respectively, so that each of the local spaces and the whole corresponds to a function module library; Generating an overall house outline of the current residence in a virtual environment according to the basic attribute information, and generating a corresponding local space outline within the overall house outline according to the division of the local space; Providing an interactive design interface in the virtual environment, the interactive design interface including the overall house outline and each of the local space outlines, the overall house outline and each of the local spaces corresponding to the functional module library; the functional module library includes a plurality of modules, and a user can control the rotation, scaling and movement of the modules; A design plan for the current residence is generated based on the virtual environment adjusted by the user, the design plan including a floor plan, a 3D model, a material list, module coordinates and a cost estimate.

2. The method according to claim 1, characterized in that: The step of converting each of the user requirement information into structured design requirement data specifically includes: Preprocessing the user demand information to obtain a preprocessed text; Splitting the preprocessed text into sentences; Perform word segmentation on the sentence to obtain a word sequence; Performing part-of-speech tagging on each word in the word sequence; Performing named entity recognition on the word sequence after the part-of-speech tagging to identify specific entities; Based on the results of the part-of-speech tagging and named entity recognition, performing dependency syntactic analysis, determining the grammatical relationship between words and constructing a dependency tree; The design requirement data is generated according to the dependency tree, the word sequence after the part-of-speech tagging, and the specific entity.

3. The method according to claim 2, characterized in that: The step of generating the design requirement data according to the dependency tree, the word sequence after the part-of-speech tagging, and the specific entity specifically includes: Associating the specific entity with the modifier corresponding to the specific entity in the word sequence after the part-of-speech tagging according to the dependency tree to obtain a set of design elements; Establishing a predefined semantic mapping table, mapping the design element set to the design attribute, and obtaining a semantic mapping result; Extracting quantity information corresponding to the design element set in the word sequence after the part-of-speech tagging according to the dependency tree, and assigning the quantity information to the design element set to obtain a quantity design element set; Determining the priority of each quantity design element in the quantity design element set according to the dependency tree, and arranging the quantity design element set according to the priority to obtain a priority design element set; According to the dependency tree, the priority design elements in the priority design element set are arranged according to a subordinate relationship to obtain the design requirement data.

4. The method according to claim 1, characterized in that: The step of generating an overall house outline of the current residence in a virtual environment according to the basic attribute information, and generating a corresponding local space outline within the overall house outline according to the division of the local space, specifically comprises: Create a blank virtual environment; Setting an initial ground plane size according to the house size in the basic attribute information, creating a corresponding number of blank floors according to the house size in the basic attribute information, and setting a vertical spacing between the blank floors according to the house size in the basic attribute information to obtain an initial blank residential structure; Generate a wall model in the initial blank residential structure according to the wall data in the basic attribute information, create door and window openings on the wall model and place the door and window models according to the door and window data in the basic attribute information, and generate a stair model at a specified position in the initial blank residential structure according to the stair data in the basic attribute information to obtain the overall house outline; According to the division of the local space, a rectangular geometric body is created within the overall house outline as a room placeholder of the local space outline, and a unique identifier and associated information are assigned to each of the room placeholders to obtain a preliminary layout plan; Generate passage and corridor placeholders in the preliminary layout plan, connect the room placeholders, and obtain the local space outline.

5. The method according to claim 1, characterized in that: The user can control the steps of rotating, scaling and moving the module, specifically including: Establishing a three-dimensional space coordinate system, determining an origin in the three-dimensional space coordinate system, and positioning the module based on the origin; Receiving user input, and determining whether the user input is a rotation operation, a scaling operation, or a movement operation; When the user input is a rotation operation, convert the user input into a rotation direction and a rotation angle; determine a rotation axis, which may be any axis of the three-dimensional space coordinate system or a custom axis; and calculate the new position of each point of the module after the rotation based on the rotation direction, the rotation angle and the rotation axis; When the user input is a zoom operation, convert the user input into a zoom ratio; determine a zoom center point, which is usually the geometric center of the module; and proportionally adjust the distance from each point of the module to the zoom center point based on the zoom ratio and the zoom center point; When the user input is a moving operation, converting the user input into a moving direction and a moving distance; calculating the displacement of the module on each coordinate axis of the three-dimensional space coordinate system based on the moving direction and the moving distance; and updating the coordinates of all points of the module according to the displacement; Based on the new position, new size or new direction of the module obtained after performing the rotation operation, the scaling operation or the movement operation, the display of the module in the three-dimensional space coordinate system is updated.

6. The method according to claim 5, characterized in that: After the step of updating the display of the module in the three-dimensional space coordinate system based on the new position, new size or new direction of the module obtained after performing the rotation operation, the scaling operation or the movement operation, the method further includes: Creating a bounding box for each of said modules; After performing the rotation operation, the scaling operation or the movement operation, updating the position information of the bounding box of the affected module in the three-dimensional space coordinate system; Determine whether the bounding box of the affected module intersects with the bounding boxes of other modules; If the judgment result is that the bounding boxes intersect, the collision strategy is executed.

7. The method according to claim 6, characterized in that: The collision strategy includes: Preventing the operation that caused the collision and restoring the affected module to a state before the operation; or, allowing the operation, but marking the modules that collided, and highlighting the modules that collided in a specific manner in the display in the three-dimensional space coordinate system; or, The position of the affected module is automatically adjusted so that the bounding box of the affected module does not intersect with the bounding boxes of other modules.

8. A simulation system based on the needs of users of variable-space residences, characterized in that: The simulation system based on the needs of residential users in variable space includes: one or more processors and a memory; the memory is coupled to the one or more processors, the memory is used to store computer program code, the computer program code includes computer instructions, and the one or more processors call the computer instructions to enable the simulation system based on the needs of residential users in variable space to execute the method described in any one of claims 1-7.

9. A computer program product comprising instructions, characterized in that When the computer program product runs on a simulation system based on variable space residential user demand, the simulation system based on variable space residential user demand is enabled to execute the method as described in any one of claims 1-7.

10. A computer-readable storage medium comprising instructions, characterized in that: When the instructions are run on a simulation system based on variable space residential user needs, the simulation system based on variable space residential user needs executes the method as described in any one of claims 1-7.

Citation Information

Patent Citations

  • Method, system and device for automatically generating three-dimensional house layout and medium

    CN114373054A

  • Modularized residential product customization design system oriented to three-dimensional visualization

    CN115393017A

  • Method and system for generating rural residence type plane based on image recognition

    CN115712943A

  • House decoration design method and system based on artificial intelligence

    CN116644503A

  • House decoration simulation method, device and equipment and readable storage medium

    CN117290921A

Cited By

  • User feedback driven modular housing solution dynamic generation method and system

    CN122693282A