Interior design method using precision component selection and editing control based on floor plan

The AI-driven interior design method addresses the challenges of selecting and editing components by providing precise control and automatic corrections, improving design accuracy and efficiency.

KR102997461B1Active Publication Date: 2026-07-29PLAN HOME CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
KR · KR
Patent Type
Patents
Current Assignee / Owner
PLAN HOME CO LTD
Filing Date
2026-01-26
Publication Date
2026-07-29

AI Technical Summary

Technical Problem

Conventional interior design software faces challenges in accurately selecting and editing small or overlapping components on smart devices, leading to decreased design accuracy and efficiency, and fails to reflect user editing patterns, causing repetitive work and fatigue.

Method used

An interior design method that uses AI-based component selection and editing control, including precise identification, movement, rotation, and attribute adjustment of components based on user input, with automatic correction and editing suggestions.

Benefits of technology

Enhances the accuracy and efficiency of interior design by enabling stable selection and editing of components, reflecting user intent and reducing repetitive tasks through AI-driven corrections.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 112026010759419-PAT00002_ABST
    Figure 112026010759419-PAT00002_ABST
Patent Text Reader

Abstract

The device according to one embodiment can generate or receive and display a floor plan, determine a target component among the components included in the floor plan based on a user input point, display the determined target component at a reference location and set reference information for component selection and switching, change at least one of the position, size, direction, and attribute of the target component according to a preset control unit based on user operation input, save the changed component information, and provide an updated interior design screen.
Need to check novelty before this filing date? Find Prior Art

Description

Technology Field

[0001] The following embodiments relate to a technology for performing interior design by controlling the process of selecting and editing components based on a floor plan. Background Technology

[0002] Conventional interior design software provides functions for placing and editing various components on floor plans, but there were difficulties in accurately selecting small components or precisely moving, rotating, or modifying them on smart devices or in limited screen environments. In particular, when relying on screen magnification or manual dragging methods, it was difficult to select components that were close to or overlapping each other, and it was difficult to make fine adjustments when moving components, which resulted in a decrease in the accuracy of design results and work efficiency.

[0003] In addition, the existing system could not reflect in real-time whether there were spacing conflicts between components or placement suitability, causing inconvenience for users who had to complete the final design through repeated adjustments.

[0004] Furthermore, because conventional technology fails to reflect users' editing patterns or operation habits, problems arose where repetitive editing increased work fatigue and the intuitiveness of the design interface deteriorated. Functions such as component switching, automatic placement point calculation, and control unit adjustment were also limited, making them insufficient to support design work that precisely reflects the user's intentions.

[0005] Accordingly, there is a need to develop an interior design method that can perform the selection and editing of components based on floor plans more accurately and efficiently. Prior art literature

[0006] Republic of Korea Published Patent No. 10-2025-0025931 (Published Feb. 25, 2025) Republic of Korea Registered Patent No. 10-2434192 (Published Aug. 18, 2022) Republic of Korea Registered Patent No. 10-1943618 (Published Jan. 29, 2019) Republic of Korea Registered Patent No. 10-2820757 (Published June 12, 2025) The problem to be solved

[0007] The embodiments aim to perform interior design by controlling the process of selecting and editing components based on a floor plan.

[0008] The embodiments aim to enable accurate identification and selection of components based on user input points in a plan view, thereby reliably selecting various design elements including small components or overlapping components.

[0009] The embodiments aim to improve the operational accuracy and design efficiency of the plan view editing process by enabling the movement, rotation, scaling, and attribute modification of selected components to be performed naturally and without error according to user operations and control units.

[0010] The embodiments aim to support advanced interior design that reflects user editing intentions by analyzing user operation patterns and component placement information to provide AI-based automatic correction and editing suggestions.

[0011] The objectives of the present invention are not limited to those mentioned above, and other unmentioned objectives will be clearly understood from the description below. means of solving the problem

[0012] According to one embodiment, an interior design method using floor plan-based precision component selection and editing control performed by a device may include the steps of: generating or receiving and displaying a floor plan; determining a target component among the components included in the floor plan based on a user input point; displaying the determined target component at a reference location and setting reference information for component selection and switching; changing at least one of the position, size, direction, and attribute of the target component according to a preset control unit based on user operation input; and storing the changed component information and providing an updated interior design screen.

[0013] The above-described interior design method may include a step of determining a target component, a step of determining whether a user's input point is included in the display area of ​​the component; a step of setting a search area centered on the input point if the input point is not included in the display area of ​​any component; and a step of determining a target component according to selection criteria based on distance information between the center position of each component located within the search area and the input point; a step of displaying a target component at a reference position and setting reference information may include a step of aligning and displaying the determined target component at a reference position on the screen; a step of setting tracking information so that the reference position is maintained according to the movement or rotation of the target component; and a step of setting reference information for switching components based on the relative positional relationship between the target component and surrounding components; a step of changing the position, size, direction, and attributes of a target component may include a step of analyzing user operation input and executing at least one of movement, rotation, resizing, and attribute change; a step of correcting the corresponding operation according to a pre-set control unit when the target component is moved or rotated; and a step of enlarging the display of the target component or restoring the scale in response to user operation; and, when a new component is placed during the change process, a step of converting the reference position of the screen to a placement point on a floor plan, and the user The method may include the steps of creating a selected component at a placement point and saving initial attribute information of the created component in a floor plan; when replacement, deletion, and display switching are requested during the modification process, the method may include the steps of replacing the selected component with another component while maintaining its reference position, removing the component from the floor plan, and switching the display status of the component; and the step of saving the operation history that occurred during the component selection and editing process may include the step of saving the state prior to each operation and the step of restoring the saved state upon a user's revert request.and may include a step of providing feedback to the user in one or more ways, such as a screen pop-up, vibration, or voice, upon completion of the operation.

[0014] The above-described interior design method may include the steps of: collecting placement information of components included in a floor plan to change the location, size, direction, and attributes of a target component and verifying the coordinates, placement direction, adjacency relationship, and attribute information of each component; collecting input information related to user operation to verify the input point, operation type, operation duration, screen movement history, and zoom in / out operation history; generating interrelationship data by matching the collected placement information and input information based on component identifiers and operation timings; determining an editing index of a component by verifying the amount of position change, amount of rotation change, whether a request for attribute change was made, and the possibility of interference with adjacent components from the interrelationship data; determining a user editing intention index by analyzing highlight expressions, whether repetitive operations were performed, whether continuous input was made within a specific operation range, and the intensive editing pattern for the target component that appeared in the user input; calculating an editing priority index of the target component based on the editing index and the user editing intention index; and inputting the editing priority index into a pre-trained artificial intelligence model to produce an editing result for the target component, wherein the artificial intelligence model analyzes the frequency and scope of influence of position movement, direction rotation, attribute change requests, and screen zoom in / out inputs occurring during the component editing process. Editing factors can be derived and editing weights can be set based on the influence of the editing factors, and training data can be generated based on the set editing weights and editing priority indices. Based on the training data, the system can be trained to output at least one editing suggestion result among improving the position alignment of components, adjusting placement to prevent collisions, and automatically correcting user editing patterns according to preset criteria, and the selection point, movement point, rotation point, attribute change point, screen zoom point, component switching point of the target component,By inputting at least some of the component addition time and editing result saving time as time variables and analyzing the interrelationships between the time variables, it is possible to learn the temporal relationships affecting component editing operations; by determining that a shorter time interval between the point where a target component is moved and the point where screen magnification occurs requires precise control, the editing weight can be evaluated higher; by setting sections where user operations are concentrated as editing caution sections, the intensity of editing correction can be increased; by backtracking component placement patterns on the floor plan based on past editing history, sections where editing errors are likely to occur can be identified; continuous learning reflecting actual user modification results based on the editing result saving time can be performed; and based on the learning results of the artificial intelligence model, the adjustment position of the target component, recommended placement direction, or editing correction results can be provided to the interior design screen.

[0015] The above-described interior design method may include a step of storing changed component information and providing an updated interior design screen, which may include a learning step of an artificial intelligence model for deriving an updated interior design screen; the learning step of the artificial intelligence model may include a step of extracting editing characteristic keywords that reflect the spatial arrangement characteristics of components within a floor plan and user editing tendencies by analyzing editing activity information including component selection records, component movement records, component rotation records, component attribute change records, and screen operation history performed by a user; a step of extracting spatial response characteristic keywords that reflect the user's visual perception patterns and operation difficulty by analyzing interaction information including the presence of interference between components, the occurrence of arrangement conflicts, changes in spacing before and after editing, changes in relative direction between components, screen zoom-in and zoom-out points, and repetition patterns of selection points; a step of calculating semantic similarity between editing characteristic keywords and spatial response characteristic keywords and identifying combinations where the similarity is above a preset standard as first candidate combinations; a step of identifying combinations among the first candidate combinations that satisfy preset conditions based on the distribution of viewpoints between editing records, diversity of component types, and consistency of arrangement changes as second candidate combinations; and a step of cross-verifying the design screen correction performance according to whether learning is included for each keyword combination included in the second candidate combinations. The method may include a step of calculating a contribution score by calculating the difference in accuracy, a step of calculating a combination balance score based on the temporal balance between edit records within each candidate combination, the balance of the distribution of component types, the degree of bias in time point changes, and the stability of the edit history, and a step of selecting the keyword combination with the highest combination evaluation score as the final training data for the artificial intelligence model based on a weighted sum in which pre-set weights are applied to the contribution score and the combination balance score, respectively.

[0016] The above-described interior design method may include the step of changing at least one of the position, size, direction, or attribute of a target component according to user operation, the step of collecting an editing history including the time when the user selected the component in the floor plan, the distance moved, the direction rotated, the frequency of attribute changes, and screen operation patterns; the step of analyzing user editing habit information reflecting the component placement method, movement direction preference, recurring rotation patterns, or attribute adjustment tendency from the collected editing history; the step of determining an editing weight to apply to component movement, rotation, alignment, and attribute changes based on the user editing habit information; and the step of adjusting the amount of change of the target component or adjusting the size of the automatic correction value by applying the determined editing weight.

[0017] A device according to one embodiment may be combined with hardware and controlled by a computer program stored on a medium to execute the method of any one of the methods described above. Effects of the invention

[0018] The embodiments can automatically identify components included in the plan view based on the user's input point and accurately determine them according to selection criteria, thereby ensuring stable selection performance even in environments containing small components or overlapping components.

[0019] The embodiments can precisely perform the movement, rotation, resizing, and attribute adjustment of target components according to the control unit, thereby providing a natural editing flow tailored to the user's operational characteristics and improving the operational efficiency and accuracy of floor plan-based interior design.

[0020] The embodiments can generate automatic correction or editing suggestions using an artificial intelligence model by analyzing component placement information, user operation history, and time-based relationship information, thereby supporting design results that meet user intent and improving the quality and productivity of the interior editing process.

[0021] Meanwhile, the effects according to the embodiments are not limited to those mentioned above, and other unmentioned effects will be clearly understood by those skilled in the art from the description below. Brief explanation of the drawing

[0022] FIG. 1 is a drawing for explaining the configuration of a system according to one embodiment. FIG. 2 is a flowchart for explaining the process of performing interior design by controlling the process of selecting and editing components based on a floor plan according to one embodiment. FIG. 3 is a flowchart illustrating the process of determining a target component according to one embodiment. FIG. 4 is a flowchart illustrating the process of displaying a target component at a reference location and setting reference information according to one embodiment. FIG. 5 is a flowchart illustrating the process of changing the position, size, direction, and attributes of a target component according to one embodiment. FIG. 6 is a flowchart illustrating a detailed process for changing the position, size, direction, and attributes of a target component according to one embodiment. FIG. 7 is a flowchart illustrating the process of storing modified component information and providing an updated interior design screen according to one embodiment. FIG. 8 is a flowchart for explaining a process of changing at least one of the position, size, direction, or attribute of a target component according to user operation in one embodiment. FIG. 9 is an example diagram of the configuration of a device according to one embodiment. Specific details for implementing the invention

[0023] Hereinafter, embodiments are described in detail with reference to the attached drawings. However, various modifications may be made to the embodiments, and thus the scope of the patent application is not limited or restricted by these embodiments. It should be understood that all modifications, equivalents, and substitutions to the embodiments are included within the scope of the rights.

[0024] Specific structural or functional descriptions of the embodiments are disclosed for illustrative purposes only and may be modified and implemented in various forms. Accordingly, the embodiments are not limited to the specific disclosed forms, and the scope of this specification includes modifications, equivalents, or substitutions that fall within the technical concept.

[0025] Terms such as "first" or "second" may be used to describe various components, but these terms should be interpreted solely for the purpose of distinguishing one component from another. For example, the first component may be named the second component, and similarly, the second component may be named the first component.

[0026] When it is stated that a component is "connected" to another component, it should be understood that it may be directly connected to or joined to that other component, or that there may be other components in between.

[0027] The terms used in the embodiments are for illustrative purposes only and should not be interpreted as intended to be limiting. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this specification, terms such as "comprising" or "having" are intended to indicate the existence of the features, numbers, steps, actions, components, parts, or combinations thereof described in the specification, and should be understood as not precluding the existence or addition of one or more other features, numbers, steps, actions, components, parts, or combinations thereof.

[0028] Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as generally understood by those skilled in the art to which the embodiments pertain. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant technology, and should not be interpreted in an ideal or overly formal sense unless explicitly defined in this application.

[0029] In addition, when describing with reference to the attached drawings, identical components are assigned the same reference numeral regardless of drawing symbols, and redundant descriptions thereof are omitted. When describing the embodiments, if it is determined that a detailed description of related prior art could unnecessarily obscure the essence of the embodiments, such detailed description is omitted.

[0030] The embodiments can be implemented in various forms of products such as personal computers, laptop computers, tablet computers, smartphones, televisions, smart home appliances, intelligent automobiles, kiosks, and wearable devices.

[0031] In the present invention, Artificial Intelligence (AI) refers to a technology that imitates human learning ability, reasoning ability, and perceptual ability, and implements them on a computer, and may include concepts such as machine learning and symbolic logic. Machine Learning (ML) is an algorithmic technology that classifies or learns the characteristics of input data on its own. AI technology can analyze input data as a machine learning algorithm, learn from the results of the analysis, and make judgments or predictions based on the results of the learning. Furthermore, technologies that mimic the functions of the human brain, such as cognition and judgment, by utilizing machine learning algorithms can also be understood as falling within the category of AI. For example, technological fields such as linguistic understanding, visual understanding, reasoning / prediction, knowledge representation, and motion control may be included.

[0032] Machine learning can refer to the process of training neural network models using experience in processing data. It implies that through machine learning, computer software improves its own data processing capabilities. A neural network model is constructed by modeling the correlations between data, and these correlations can be expressed by multiple parameters. A neural network model extracts and analyzes features from given data to derive correlations between them; machine learning can be defined as the process of optimizing the model's parameters by repeating this process. For example, a neural network model can learn the mapping (correlation) between inputs and outputs for data given as input-output pairs. Alternatively, even when only input data is provided, a neural network model can derive regularities between the given data and learn those relationships.

[0033] An artificial intelligence learning model or neural network model can be designed to implement the structure of the human brain on a computer and may include multiple network nodes that have weights and simulate neurons of a human neural network. The multiple network nodes may have interconnected relationships by simulating the synaptic activity of neurons, where neurons exchange signals through synapses. In an artificial intelligence learning model, multiple network nodes may be located in layers of different depths and exchange data according to convolutional connections. The artificial intelligence learning model may be, for example, an Artificial Neural Network (ANN) or a Convolutional Neural Network (CNN). As an embodiment, the artificial intelligence learning model may be machine learned according to methods such as supervised learning, unsupervised learning, and reinforcement learning. Machine learning algorithms for performing machine learning may include Decision Tree, Bayesian Network, Support Vector Machine, Artificial Neural Network, Ada-boost, Perceptron, Genetic Programming, and Clustering.

[0034] Among these, CNNs are a type of multilayer perceptron designed to use minimal preprocessing. CNNs consist of one or more convolutional layers and standard artificial neural network layers stacked on top, additionally utilizing weights and pooling layers. Thanks to this structure, CNNs can fully utilize two-dimensional input data. Compared to other deep learning architectures, CNNs demonstrate good performance in both image and audio fields. CNNs can also be trained using standard backpropagation. CNNs have the advantage of being easier to train than other feedforward artificial neural network techniques and using a small number of parameters.

[0035] Convolutional networks are neural networks comprising sets of nodes with bounded parameters. Many computer vision tasks have been significantly improved, driven by the increased size of available training data and the availability of computational power, combined with algorithmic advancements such as discriminative linear units and dropout training. In the case of massive datasets, such as those available for many tasks today, outfitting is not critical, and increasing the network size improves test accuracy. Optimal utilization of computing resources becomes a limiting factor. To address this, distributed, scalable implementations of deep neural networks can be employed.

[0036] The embodiments described above may be implemented as hardware components, software components, and / or combinations of hardware and software components. For example, the devices, methods, and components described in the embodiments may be implemented using one or more general-purpose or special-purpose computers, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing unit may execute an operating system (OS) and one or more software applications executed on said operating system. Additionally, the processing unit may access, store, manipulate, process, and generate data in response to the execution of the software. For ease of understanding, the processing unit may be described as being used as a single unit, but those skilled in the art will understand that the processing unit may include multiple processing elements and / or multiple types of processing elements. For example, the processing unit may include multiple processors or one processor and one controller. Additionally, other processing configurations, such as parallel processors, are also possible.

[0037] FIG. 1 is a drawing for explaining the configuration of a system according to one embodiment.

[0038] Referring to FIG. 1, a system according to one embodiment may include a user terminal (10) and a device (30) capable of communicating with each other through a communication network.

[0039] First, the communication network can be configured regardless of the mode of communication, such as wired or wireless, and can be implemented in various forms to enable communication between servers and between servers and terminals.

[0040] The user's terminal (10) may be a terminal used by a user who intends to perform an interior design method using a plan view-based precision component selection and editing control according to the present invention.

[0041] The user's terminal (10) may be a desktop computer, a laptop, a tablet, a smartphone, etc. For example, as shown in FIG. 1, the user's terminal (10) may be a smartphone, and may be adopted differently depending on the embodiment.

[0042] The user's terminal (10) may be configured to perform all or part of the computational functions, storage / reference functions, input / output functions, and control functions that a conventional computer has. The user's terminal (10) may be configured to communicate with the device (30) via wired or wireless means.

[0043] The user's terminal (10) may be connected to a web page operated by a person or organization providing a service using the device (30), or may have an application developed and distributed by a person or organization providing a service using the device (30) installed. The user's terminal (10) may be linked with the device (30) through a web page or an application.

[0044] The user's terminal (10) can access the device (30) through a web page, application, etc. provided by the device (30).

[0045] A singular expression in a claim may be understood to include a plural.

[0046] The device (30) can provide an interior design function using floor plan-based precision component selection and editing control.

[0047] Specifically, the device (30) can generate or receive and display a floor plan input through the user's terminal (10), and analyze the user's input point to automatically determine a target component among the components included in the floor plan.

[0048] Additionally, the device (30) can align and display the determined target component at a reference position on the screen, set reference information for component selection and switching, and adjust the position, size, direction, or attributes of the target component according to a preset control unit based on the user's operation input.

[0049] In addition, the device (30) can generate interrelationship data by collecting arrangement information of components included in the plan view and user operation history, and calculate a component editing index and an editing priority index based on this.

[0050] The device (30) can generate editing suggestion results related to the movement, alignment, collision prevention, or automatic correction of components using a pre-trained artificial intelligence model, and provide the results to the user along with an updated interior design screen.

[0051] Additionally, the device (30) can store user operation history that occurred during the component selection step, editing step, and screen display step, restore the previous state upon a request for revert or re-execute, and be designed to continuously perform various editing operations such as adding, replacing, or deleting components.

[0052] At this time, a detailed description of the plan view-based component selection and editing control process performed by the device (30) will be described later with reference to FIG. 2.

[0053] The device (30) may be a private server owned by the entity or organization providing the service using the device (30), a cloud server, or a peer-to-peer (P2P) set of distributed nodes. The device (30) may be configured to perform all or part of the computational functions, storage / reference functions, input / output functions, and control functions that a conventional computer possesses.

[0054] The device (30) may be configured to communicate with the user's terminal (10) via wired or wireless means, control the operation of the user's terminal (10), and control which information to display on the screen of the user's terminal (10).

[0055] Meanwhile, for convenience of explanation, only the user terminal (10) is shown in FIG. 1, but the number of terminals can vary depending on the embodiment. As long as the processing capacity of the device (30) allows, there is no particular limit to the number of terminals.

[0056] According to one embodiment, a database may be provided within the device (30), but is not limited thereto, and a database may be configured separately from the device (30). The device (30) may include a plurality of artificial neural networks for performing machine learning algorithms.

[0057] FIG. 2 is a flowchart for explaining the process of performing interior design by controlling the process of selecting and editing components based on a floor plan according to one embodiment.

[0058] Referring to FIG. 2, first in step S201, the device (30) can generate a plan view or receive and display it from the outside.

[0059] The device (30) can handle various types of floor plan information to reliably provide basic data for a user to perform interior design, and the floor plan can serve as a base space for performing functions such as selecting components, adjusting positions, changing sizes, editing attributes, and artificial intelligence-based automatic correction.

[0060] The device (30) can process the floor plan so that it is displayed on the screen with a level of accuracy required by the designer, including resolution, scale, and indoor structure information.

[0061] The device (30) may apply a functional configuration including a communication interface, a file processing unit, a data conversion unit, and a display control unit to receive plan view information.

[0062] The device (30) can receive spatial information collected from a file saved by the user, data provided from a remote server, or a sensor-based surveying system, and convert it into a format that can be interpreted within the device.

[0063] The transformed plan view is mapped to be aligned with the screen coordinate system and can be processed into a geometric information structure required in subsequent steps, such as determining component locations, calculating distances, and deriving center points.

[0064] The device (30) may apply a vector-based or fixed-ratio rendering method so that distortion of the planar geometry does not occur when zooming in and out, and may also set a reference grid or reference coordinate system to recognize user input.

[0065] According to one embodiment, the device (30) receives an image file uploaded from a user's terminal (10), a CAD-based drawing file, or structural data provided by an external server through a communication interface to generate or receive a floor plan, and can convert the received data into standardized floor plan data aligned with a screen coordinate system using an internal drawing conversion module.

[0066] Additionally, the device (30) can generate a floor plan by automatically extracting wall length, interior outline, and opening location information in conjunction with a sensor device that provides actual measurement-based spatial information, and the converted floor plan can be provided to the user's terminal (10) by correcting the display quality so that the ratio is maintained even when enlarged, reduced, or rotated through a rendering control unit.

[0067] For example, when a user's terminal (10) selects and uploads a floor plan in the form of an image file, the device (30) can receive the file and then separate and display structural information such as walls, doors, windows, and movable areas through an image analysis algorithm.

[0068] In another embodiment, the device (30) can receive a CAD-based file format and interpret the layer structure within the file to selectively display only the main structural information on the screen.

[0069] When linked with a real-time surveying device, the device (30) can automatically generate a floor plan based on actual measurement data, and the generated floor plan is displayed so that the user can immediately place or modify components. The device (30) integrates various forms of input into a consistent format, allowing the user to start editing without additional adjustments.

[0070] In step S202, the device (30) can determine a target component among the components included in the plan view based on the user's input point. At this time, a detailed explanation of the process of determining the target component will be described later with reference to FIG. 3.

[0071] The target component refers to a specific component among multiple components included in the floor plan that is determined to be the target of selection or editing, based on the user's input point.

[0072] According to one embodiment, the device (30) receives touch input, pointer input, stylus input, or gesture-based coordinate input in real time from a user's terminal (10), and can identify the user's input point by converting the on-screen location coordinates included in the input signal into a planar coordinate system.

[0073] The device (30) can normalize the coordinates of an input point by considering screen resolution, magnification ratio, finger input characteristics, or pointer input characteristics, and perform component identification by utilizing the input point converted to match the coordinate system on the planar view.

[0074] In addition, the device (30) can improve the accuracy of the component selection process by reflecting screen scaling, rotation status, and scroll movement information together to correct the coordinate error of the input point.

[0075] The device (30) manages the display area, center position, and geometric outline of each component within the plan view in memory, and can determine first whether an input point intersects the display area of ​​a specific component.

[0076] The device (30) can be designed to prioritize identifying the component that most directly reflects the selection intention based on the input point, and can determine the accurate target component by applying priority among components even when components are densely arranged within the plan view or when there are overlapping areas.

[0077] In this case, the components included in the floor plan may refer to objects that constitute the arrangement within the space, and may include, for example, information regarding walls, doors, windows, furniture, fixtures, electrical switches, lighting, plumbing elements, home appliances, or interior structural fittings, but are not limited thereto.

[0078] According to one embodiment, the device (30) can perform a selection decision based on the position coordinates, boundary information, display size, and center point of each component included in the plan view.

[0079] The device (30) determines whether the user's input point exists within the display boundary of a specific component, and if it is included, can determine the component as a direct target component.

[0080] In step S203, the device (30) may display the determined target component at a reference location and set reference information for component selection and switching.

[0081] At this time, a detailed explanation of the process of marking the target component at the reference location and setting the reference information will be described later with reference to Fig. 4.

[0082] The device (30) can set a screen center point or a predefined reference coordinate as a reference position and control the target component to be displayed in a fixed form at the reference position.

[0083] The reference position refers to a specific coordinate within a planar view set by the device (30) so that the determined target component is stably displayed on the screen and used as a reference point for subsequent editing operations.

[0084] According to one embodiment, the device (30) can calculate a transformation value for moving to a reference position by analyzing the outer boundary, center coordinates, placement direction, display size, etc. of a target component.

[0085] For example, the device (30) can set the center of the screen as a reference position and calculate a 2D or 3D translation transformation value that converts the center point coordinates of the target component to match the reference position.

[0086] The device (30) can also apply a direction correction value so as not to conflict with the existing arrangement when displayed at a reference position, taking into account the rotational state of the component.

[0087] In addition, to set standard information for component conversion, the device (30) can collect information on the size, type, attributes, and distance from surrounding components of the target component, and based on this, determine a list of candidate components that can be converted, a range of possible placement locations, and criteria for determining whether there is a collision after conversion.

[0088] The device (30) stores reference information and can be used for automatic alignment, collision prevention, and determining conversion priority in subsequent editing steps.

[0089] Reference information refers to an editing judgment criterion that the device (30) sets based on the size, position, direction, and relationship with surrounding components of a component to be used in the process of selecting, switching, aligning, and correcting a target component.

[0090] For example, the device (30) can be converted so that when a specific furniture icon is selected on the user's terminal (10), the center point of the icon is displayed in the center of the screen.

[0091] The device (30) can render the components displayed at the reference position while maintaining their original size ratio by taking into account the scale or rotation state of the entire plan view during the conversion process.

[0092] Additionally, the device (30) can analyze component placement information such as walls, other furniture, and electrical equipment existing around the target component to automatically identify switchable component candidates and display them in a selection area at the top or bottom of the screen.

[0093] When a user executes a component switching function, the device (30) may present a list of alternative components having the same size or similar attributes as the target component displayed at the reference position, and update the screen so that the selected alternative component is naturally switched while maintaining the existing position.

[0094] Additionally, the device (30) can utilize reference information to provide a warning to the user or automatically perform collision prevention correction for components that are determined to have a risk of collision after switching.

[0095] This allows users to switch components or maintain their placement status without error, even in complex floor plans.

[0096] The device (30) can provide high recognition to the user by displaying the target component at a reference location and setting reference information, and can improve the consistency and accuracy of the component switching and editing process.

[0097] In particular, editing stability is significantly improved because target components are always displayed at a consistent position, even when zooming in or out or in complex layout environments, and the processes of replacing, deleting, and switching components are performed intuitively.

[0098] The device (30) can dynamically set the reference position based on a user-specified position, a recent edit position, or a specific pattern in addition to the center of the screen, and the reference information can also be variably adjusted according to the component type or user edit history.

[0099] In addition, the device (30) can apply the same reference position logic to various user interface methods such as voice commands, stylus input, and gesture input, and can extend and utilize the same reference position concept not only in 2D plan views but also in 3D spatial models.

[0100] In step S204, the device (30) can change at least one of the position, size, direction, and attribute of the target component according to a preset control unit based on the user's operation input.

[0101] At this time, the preset control unit refers to a minimum change unit defined in advance for the device (30) to adjust the amount of change stepwise according to a certain standard when the target component is moved, rotated, scaled, or its attributes are changed.

[0102] The device (30) can adjust the placement position or external characteristics of the target component based on the user's operation input, and such adjustment can be made precisely according to a preset control unit.

[0103] The device (30) supports various editing operations such as moving, rotating, changing the size, and changing the attributes of a component, and can calculate the amount of change according to the user's operation characteristics and apply it to the target component.

[0104] Operation input may refer to gestures or operation signals performed by a user to move, rotate, zoom, or change attributes of a component on a plan view screen, and may include, for example, touch location information, drag movement information, pinch zoom information, rotation gesture information, attribute change request information, but is not limited thereto.

[0105] The device (30) can provide a plurality of precision control units that the user can directly select during the editing process, such as moving, rotating, or adjusting the dimensions of the target component.

[0106] The device (30) basically has a preset control unit, but can be configured so that the user can immediately change the precision unit through an interface on the screen.

[0107] For example, the device (30) may provide a toggle-type control menu on the screen that allows selecting different movement intervals or operation units such as 1 mm, 5 mm, 10 mm, 50 mm, 100 mm, etc., and the user can finely adjust the range of change of the component by selecting the desired unit from the menu.

[0108] The device (30) can immediately reflect the control unit selected by the user into the editing operation, so that even with the same user's operation input, the amount of movement or change of the component varies depending on the selected precision level. Considering precision work on a small screen, the device (30) can accurately reflect small movement or rotation changes when the control unit is set to a low level (e.g., 1 mm or 5 mm), and conversely, when a wide range of adjustment is required, the user can select a larger unit, such as 50 mm or 100 mm, to quickly perform placement changes.

[0109] These precision units can be implemented in both ways: automatically recommended based on the size of the components, the display scale of the plan view, the current editing mode, etc., or arbitrarily adjusted by the user.

[0110] The device (30) can provide a clear visual indication when the user changes the precision unit in a toggle manner. For example, the device (30) can highlight the selected precision unit or output a simple vibration or guidance message when changing it to enable immediate recognition of what the currently active control unit is.

[0111] In addition, the device (30) may improve usability by analyzing the user's work pattern and automatically recommending frequently used precision units or prioritizing the display of recently selected units.

[0112] The device (30) calculates the actual amount of change when moving, rotating, scaling, or changing attributes of a component based on the selected control unit, and when a visual aid such as an aiming lens is activated, it can provide an enlarged screen to more precisely check the unit change effect inside the lens.

[0113] This is useful for reducing minute errors that may occur during small operations and enables the user to reliably perform fine adjustments or rapid placement adjustments as intended. Furthermore, the device (30) may be expanded by additionally registering user-defined units according to specific design scenarios or by automatically setting appropriate control units according to the type of component.

[0114] The device (30) can store the existing position coordinates, size numerical values, rotation angle, and attribute values ​​of the target component in advance, calculate the amount of change according to the user's operation input, and then determine whether the amount of change satisfies the preset control unit standard.

[0115] For example, in the case of movement operation, the device (30) calculates the change in x-axis and y-axis coordinates on the planar view and can apply the new coordinates only when the amount of change is greater than or equal to the set minimum movement unit.

[0116] In the case of rotation operation, the device (30) calculates the rotation angle according to the rotation direction and rotation duration entered by the user, and can apply only the value corrected to the component according to the set rotation unit.

[0117] In the case of size change, the device (30) analyzes expansion and contraction inputs in both or unidirectional directions to change the width or height of the component, but may limit the change value by considering minimum size conditions and collision possibility conditions.

[0118] In the case of attribute change, the device (30) can analyze the request to change the material, color, label, or type attribute of the component and store the changed attribute value in the plan view data.

[0119] Through this operation, the device (30) can prevent operational instability that may occur when editing components and provide reliable editing results.

[0120] For example, if a user intends to move a target component by dragging it with a finger, the device (30) can collect the drag path and analyze the coordinate changes occurring at intervals along the path to calculate the new position of the component.

[0121] At this time, the device (30) can apply a control unit smaller than the actual movement distance of the drag input to adjust the component so that it does not move too sensitively.

[0122] When a user rotates two fingers to rotate a component, the device (30) calculates the change in angle between two points to calculate the amount of rotation, and then rotates the component by a certain angle according to the set rotation unit.

[0123] Additionally, when the user performs a zoom in or zoom out input, the device (30) may adjust the size of the component, but may apply the change value after performing a collision check so that the component does not collide with other elements of the plan view.

[0124] Regarding attribute changes, when a user selects a new attribute from the attribute panel to change the material of a specific component, the device (30) can reflect the attribute value to the target component and display the updated content on the screen in real time.

[0125] The device (30) can control the sensitivity of user operations and maintain consistency of editing results by applying a control unit-based editing method, and can provide stable change results even in a complex planar environment.

[0126] Additionally, the device (30) can dynamically adjust the control unit according to the user editing pattern or frequency of use, and in certain situations, provide a precise editing mode or a fast editing mode to implement an operation environment suitable for the purpose of editing.

[0127] The device (30) can provide a user interface button in the form of a compass for direction control on the work interface so that the user can control the position and rotation of the component selected by the user.

[0128] These direction control buttons may include independent icons or compass-shaped structures representing upward, downward, leftward, and rightward directions, respectively, and the user can finely adjust the movement of the selected component according to predefined data levels (e.g., 1mm, 5mm, 10mm) by clicking the button once or repeatedly.

[0129] This method compensates for positional errors caused by drag input on small mobile screens, helping users perform accurate movement in the desired direction.

[0130] The device (30) may additionally display left and right rotation compass buttons on the work interface for rotation control of the selected component.

[0131] These rotation compass buttons function as a rotation control interface based on the center of the selected component, and allow the component to be rotated by a preset rotation unit (e.g., 1 degree or 5 degrees) each time the user clicks the button. This click-based rotation method reduces fine errors that can occur in drag-based rotation and allows the user to adjust precisely to the desired angle.

[0132] The device (30) can process a compass button for direction control and a rotational compass button in parallel with drag-based input, and can automatically switch the control mode according to the user's input method.

[0133] For example, if a user directly drags a component, it is processed in continuous movement mode, and if the compass button is clicked, it automatically switches to precision movement mode so that it adjusts by a constant distance or angle with each click. This enables stable movement and rotation of components while minimizing control errors caused by screen size or finger operation.

[0134] The device (30) links the compass-based operation UI on the work interface with the selected component, so that the current movement value or rotation value can be displayed in the interface in real time whenever the user clicks the direction or rotation button. This display information allows the user to check the change in the component's position coordinates or rotation angle numerically, and helps the user accurately reach the desired position and angle through repeated input.

[0135] In addition, the device (30) can provide options to dynamically change the data level or rotation unit set by the user as needed, thereby responding to a wider range of precision requirements.

[0136] In step S205, the device (30) can store changed component information and provide an updated interior design screen.

[0137] This process may include permanently recording the results of changes after the movement, rotation, resizing, and attribute changes of the components are completed, and immediately updating the visual composition of the entire floor plan.

[0138] The device (30) manages the final coordinates, direction values, size values, and attribute values ​​of the changed component in a data structure and can maintain consistency of information so that the same component can be consistently referenced in subsequent editing processes.

[0139] The device (30) manages the final coordinates, direction values, size values, and attribute values ​​of the changed component in a data structure and can maintain consistency of information so that the same component can be consistently referenced in subsequent editing processes.

[0140] The device (30) can store the attribute value of the changed component by mapping it to the tag information at the time of creation and the absolute position coordinates on the plan view.

[0141] The information stored at this time may include, but is not limited to, component identifiers, center coordinates, rotation angles, width and height, up / down and left / right orientations, visual display status, user-defined attribute values, etc.

[0142] The device (30) can accumulate and store records in component units within an internal database, or record them in a temporary storage structure in memory and then synchronize them to a permanent storage when a specified storage event occurs.

[0143] The device (30) can drive a screen rendering engine based on changed information to configure an updated screen that considers whether there is a collision between the target component and surrounding components, whether the alignment line is maintained, and the display quality according to the screen scale.

[0144] In addition, the device (30) can provide a real-time editing experience by streaming the updated screen to the user's terminal (10).

[0145] For example, if the direction of a specific component is adjusted through a rotational motion on the user's terminal (10), the device (30) can generate a new direction value by calculating the amount of change in rotation relative to the reference angle of the component.

[0146] The device (30) can store updated attribute information by merging the generated direction value with existing component information, and can immediately reflect the tilted direction of the component on the design screen based on the stored information.

[0147] That is, the device (30) can automatically select components in a plan view, align and display them at a reference position, edit them in fine units according to user operation input, save the change results, and provide an updated design screen.

[0148] The device (30) can compensate for the limitations of user input accuracy by automating and refining the process of selecting and editing components in a plan view, minimize selection errors even in an environment where various components are mixed, and ensure consistency and stability in subsequent editing processes by setting reference positions for each component.

[0149] In addition, the device (30) can eliminate the inconvenience of fine-tuning that occurs in conventional methods and simplify complex interior design work by correcting the movement, rotation, resizing, and attribute change of components based on control units according to user operation patterns.

[0150] In addition, the device (30) can systematically store information on changed components to enable immediate response to various editing scenarios, and can improve the overall quality of the design and work efficiency through a screen update function linked to the user editing history.

[0151] This configuration enables the combination of automatic selection, alignment-based display, control unit-based editing, and high-precision screen updates, which were difficult to achieve with existing technologies, thereby enhancing the accuracy, consistency, and convenience of interior design work.

[0152] FIG. 3 is a flowchart illustrating the process of determining a target component according to one embodiment.

[0153] Referring to FIG. 3, first in step S301, the device (30) can determine whether the user's input point is included in the display area of ​​the component.

[0154] The device (30) can determine whether a point entered by the user by touching or clicking a specific location on the plan view is included in the display area of ​​the component.

[0155] The device (30) can calculate the relative position of an input point based on the coordinate information and outer boundary information of each component included in the plan view, and identify the component that best matches the user's intention.

[0156] According to one embodiment, the device (30) can first store the display area of ​​each component placed in the plan view as a set of coordinates in the form of a polygonal boundary or a rectangular boundary.

[0157] The display area is an actual display range calculated based on the center coordinates, width, height, rotation angle, and screen magnification ratio of the component, and the device (30) can manage this by converting it to match the screen coordinate system generated during the rendering process.

[0158] The display area of ​​a component refers to the outer boundary where the component is actually represented on the screen in a plan view, and may refer to the display range on the screen calculated based on the component's center coordinates, size, rotation angle, and screen scale.

[0159] The device (30) can calculate the display range in the screen coordinate system using the center coordinates, size, and rotation information of each component, and determine whether the user's input point is included within the calculated display range by a coordinate comparison method.

[0160] In addition, the device (30) can accurately determine the relative position between the input point and the component boundary after correcting the display range by reflecting the screen magnification and reduction ratios.

[0161] In addition, the device (30) can accurately compare the relative positions between the input point and the component boundary by correcting the display area according to the enlargement / reduction ratio.

[0162] Afterward, the device (30) can obtain the user's input point coordinates and calculate whether the coordinates exist inside the boundary of the component using vector operations or a boundary inclusion algorithm.

[0163] For example, in the case of a rotated component, the input point can be transformed into the component's internal coordinate system by applying an axis transformation matrix, and then the inclusion status can be determined.

[0164] The device (30) can determine selection candidates by applying priority rules when there are components with overlapping display areas, taking into account the distance from the input point, the display order, or user-set weights, and can also set reference information so that a specific component is selected preferentially.

[0165] As an example, it can be assumed that there is a component displaying a desk in a plan view displayed on a user's terminal (10), and that the user creates an input point by touching the upper right part of the desk.

[0166] The device (30) can first calculate the actual display area based on the center coordinates and width and height information of the corresponding component, and evaluate whether the user's input point is located inside this display area.

[0167] Even when the plan view is enlarged and part of the desk is displayed large on the screen, the device (30) can automatically calculate the magnification ratio and perform a judgment after correcting the boundary area.

[0168] If the display area of ​​the desk component and the display area of ​​the chair component overlap, the device (30) can determine the closer component as a candidate for selection by comparing the distance between the input point and the center point of each component.

[0169] In the embodiment, it can be assumed that a desk component is selected according to priority criteria, and the device (30) can transmit this as candidate data to be confirmed as a target component in a subsequent step.

[0170] By the device (30) precisely determining whether the input point includes components, the user can enjoy an accurate and intuitive selection experience even in a plan view containing small-sized components or complexly arranged components.

[0171] This allows for accurate selection functionality even when the screen size of the user's terminal (10) is limited or the scale of the plan view display is large, and enables consistent selection performance to be maintained even in older devices or low-performance environments.

[0172] In step S302, the device (30) can set a search area centered on the input point if the input point is not included in the display area of ​​any component.

[0173] The search area is a reference area for deriving a candidate component located near the input point in situations where it is difficult to directly select a target component. The device (30) can form an initial candidate group to automatically suggest the component closest to the user's intention by analyzing the distance characteristics between the input point and the center coordinates of the components.

[0174] The device (30) can first store the input point coordinates as a reference point and define the search area in the shape of a circle or a square with a certain radius.

[0175] The shape of the navigation area can be selected depending on the specific implementation environment, but a circular area may be adopted to enhance alignment with the user's visual center.

[0176] The device (30) can dynamically set the radius of the search area according to the screen scale of the plan view, the density of components, user editing patterns, etc., and thereby can respond to differences in screen size and resolution of the user's terminal (10).

[0177] In order to precisely select a component corresponding to the user's input point, the device (30) can first set a search area with a search radius applied based on the input point.

[0178] The device (30) can calculate the center point coordinates of each component included within the search area and calculate the straight-line distance between the input point and each center point to determine the component with the shortest distance as the target component. This structure enables the user to reliably identify the component they actually intend to select from among the candidates around the input point, even if the user does not touch the component precisely on a small screen.

[0179] Additionally, the device (30) can display a circular frame-shaped aiming lens around the input point on the screen and provide a magnified visual representation of the components within the aiming lens area and surrounding elements.

[0180] The device (30) can align the center of the aiming lens with the location of the input point or target component, thereby allowing the user to more clearly verify the selection result based on the magnified screen. This magnified display method contributes to reducing misselection and increasing the consistency between the user's input and the selection result, even in a planar environment where components are densely packed.

[0181] The device (30) can apply a size of the search radius as a preset value in the system and can be implemented to adjust the value according to the average spacing between components or the planar scale.

[0182] For example, even when a user touches an empty space, the device (30) can automatically identify the component closest to the input point and most likely to be edited by analyzing the relative positional relationships of components within a preset search radius.

[0183] Since this proximity-based selection procedure involves component-centered coordinate-based calculations, it can achieve higher accuracy than simple area overlap judgments.

[0184] Furthermore, the device (30) updates the magnified screen in real time in response to the user's subsequent editing actions while the aiming lens is displayed, and can dynamically adjust the position or magnification ratio of the aiming lens according to whether the target component is moved or the input point changes. Through this, the user can immediately check the state change of the corresponding component through the aiming lens even when performing fine operations, and can visually verify even small units of movement.

[0185] When a search area is set, the device (30) can collect components located inside or near the boundary of the search area as search candidates by referring to the center coordinates or outer boundary coordinates of each component placed on the plan view.

[0186] In this process, the device (30) corrects the distance judgment criteria by considering the display size and rotation direction of each component, and can calculate the candidate priority by calculating the distance between the input point and the center of the component.

[0187] For example, when a bedroom floor plan is displayed on a user's terminal (10) and the user touches the empty space between the bed and the table, the device (30) determines that the input point is not included in the display area of ​​any component and can set a radius of 150 pixels around the input point as a search area.

[0188] Subsequently, the device (30) can collect beds and tables whose center coordinates are located within this search area as search candidates and determine priority based on the difference in distance between the input point and the center point of each component.

[0189] In the embodiment, if the input point is closer to the center point of the table, the table is determined as the first candidate, and a procedure to confirm it as the target component in a subsequent step may be performed.

[0190] Additionally, the device (30) can analyze the pattern of the user repeatedly performing input in a specific direction to automatically adjust the radius of the search area or place a specific component at the top of the search priority.

[0191] In this way, setting the search area enables the selection of components that match the user's intent, even if the input point is an empty space.

[0192] By setting a search area based on the input point, the device (30) can obtain an accurate and intuitive selection experience even in a plan view where components are densely arranged or small components are included.

[0193] The search area-based selection function reduces repetitive input caused by component selection failures and offers the advantage of maintaining selection accuracy even in terminal environments with large or small screen scales.

[0194] In step S303, the device (30) can determine the target component according to the selection criteria based on the distance information between the center position of each component located within the search area and the input point.

[0195] The selection criteria refers to a set of evaluation rules that the device (30) applies to determine which of the components best matches the user's intention when multiple components are identified as candidates within a search area.

[0196] The selection criteria primarily include the distance value between the input point and the center position of the component, and, if necessary, may additionally include the display size of the component, on-screen visibility, placement orientation of the component, continuity with recent editing history, priority by component type, and weights reflecting user preference patterns, but are not limited thereto.

[0197] The device (30) can calculate the relative priority among candidate components by comprehensively considering these various factors and determine the component most logically associated with the user input as the target component.

[0198] This enables accurate selection even in environments with narrow screens or densely packed components, and ensures highly reliable selection actions that allow the user's editing flow to continue naturally.

[0199] According to one embodiment, when the device (30) identifies a component within a search area, it can extract the center coordinates stored in each component and calculate the distance value from the input point coordinates.

[0200] The device (30) can derive a distance value that matches the actual user's sense by applying a transformation matrix based on the screen scale, planar scale, and rotation state when calculating the distance.

[0201] Afterward, the device (30) can sort component candidates based on the calculated distance values ​​and determine the highest priority selection target by applying preset selection criteria.

[0202] Selection criteria may include, but are not limited to, a method of prioritizing the component closest to the input point, a method of reflecting the actual display size of the component as a weight, or a method of considering continuity with the component selected in the previous editing process.

[0203] Through this process, the device (30) can provide a selection result that reflects various contextual elements even with a single input generated from the user's terminal (10).

[0204] Specifically, the device (30) can generate a normalized distance value by calculating distance information from an input point for component candidates within a search area, and then applying coordinate transformations according to screen magnification, plan view magnification level, and terminal screen resolution so that the distance value matches the actual user visual experience.

[0205] Subsequently, the device (30) can calculate a final evaluation score by applying weights based on selection criteria to the normalized distance value and determine the target component by comparing the relative priority of each component.

[0206] The device (30) may apply additional evaluation factors such as the display size of the component, the degree of alignment with the current screen center, or the degree of association with components recently edited by the user to handle situations where the distance value is the same or similar, and these evaluation factors are used as auxiliary judgment factors in the selection process but are not limited to specific components.

[0207] In addition, the device (30) can make an error-free selection even in areas where components are densely packed by applying a judgment method that combines multiple distance and weight information rather than relying on a single distance comparison, and can provide consistent selection results with the same logic even if the scale or rotation state of the plan view is changed.

[0208] For example, consider a case where adjacent components, such as a table, chair, and lighting, are concentrated in one narrow area on the user's terminal (10) screen.

[0209] Input may occur where the user intentionally touches a point close to the table, but the display area of ​​the table is small, so the input is not directly included in the display area.

[0210] In this situation, the device (30) can automatically determine the closest component by setting a search area centered on the input point, analyzing the center coordinates of the component included in the area, and comparing the distance information with the input point.

[0211] In the embodiment, the table is selected as the target component when the center of the table is closest to the input point, and the user can immediately access the desired component without complex zoom operations.

[0212] The device (30) can also provide a selection result that matches the actual user experience by reflecting the size ratio of the components or on-screen visibility information in the distance calculation to prevent selection errors.

[0213] That is, the device (30) can determine whether the display area of ​​a component is included based on the user's input point, set a search area if necessary, and determine the target component according to the selection criteria based on distance information.

[0214] The device (30) can reliably select the intended component by precisely analyzing the spatial relationship between the user's input point and the component within the plan view.

[0215] Through this, the device (30) can go beyond simple touch coordinate comparison and automatically expand candidate components by setting a search area even when the input point is not directly included in the display area, and extract components that best match the user's actual intention by performing a distance-based evaluation from the center position.

[0216] The device (30) can minimize misselection and improve selection accuracy even in environments with complex layouts, narrow spacing, and a mix of components of various sizes through this multi-stage selection logic, and as a result, can simplify the user's workflow, reduce unnecessary enlargement operations or repetitive inputs, and significantly improve the efficiency and reliability of the interior design process.

[0217] In addition, the device (30) can also be applied in an extensible manner that dynamically adjusts distance judgment criteria, search area size, display area definition method, etc. according to the user environment, thereby providing consistent selection quality in various planar structure and design scenarios.

[0218] Additionally, the device (30) can identify target components by receiving user input from a plan view or a spatial representation screen, and the device (30) can not only identify components based on coordinates but also generate and provide a visual aid screen in the form of a circular frame magnified around an area selected by the user (hereinafter referred to as the aiming lens).

[0219] The device (30) analyzes the boundary and positional relationship of surrounding components based on the point where the user touches or clicks, and magnifies and displays the component and its surrounding area inside the aiming lens, thereby enabling precise selection even in scenes where small components are densely packed together or boundaries are unclear.

[0220] The device (30) can adjust the display coordinates so that the center of the lens matches the component currently being selected as a candidate when the aiming lens is activated.

[0221] Even when the user moves the screen or drags a component, the device (30) can automatically update the center of the aiming lens to follow the component. This method provides the advantage of clearly determining whether the component is selected by providing an enlarged view of the exact shape, surrounding margins, and connections of the component being selected.

[0222] Additionally, the device (30) may automatically adjust the degree of magnification inside the aiming lens according to the screen magnification or the size of the component, or may provide a selection interface that allows the user to change the magnification level.

[0223] The device (30) can perform editing operations such as moving, rotating, adjusting dimensions, or changing attributes on a selected component within the aiming lens, and at this time, fine manipulation can be made based on the enlarged visual information within the lens.

[0224] For example, when a user moves a component by a certain distance, the device (30) clearly indicates the distance of movement inside the lens, thereby enabling a reduction in minute errors.

[0225] In addition, when rotating the component, rotation assistance marks or rotation angle guidance information can be visually placed on the edge of the lens so that the user can intuitively determine the direction and degree of rotation.

[0226] The device (30) may also provide a function to close the aiming lens or immediately return to the original screen magnification based on user input so that the display and operation of the aiming lens do not interfere with the editing flow of the entire screen. Since the aiming lens is an auxiliary element to help select a specific component, it may be automatically switched to the normal display state of the screen when the user has completed the selection.

[0227] This configuration provides technical effects that reduce component selection errors and improve efficiency in the fine-tuning process in environments dealing with complex floor plans or multi-layered structures.

[0228] FIG. 4 is a flowchart illustrating the process of displaying a target component at a reference location and setting reference information according to one embodiment.

[0229] Referring to FIG. 4, first in step S401, the device (30) can display the determined target component by aligning it to a reference position on the screen.

[0230] The reference position on the screen is a reference point set based on specific coordinates within the plan view, and can be defined as a concept to enhance ease of operation by placing target components in the work-centered area.

[0231] The reference position on the screen refers to specific coordinates set as a central reference point for editing components in the interior design screen, and can serve as a reference point for stably displaying the target component.

[0232] For example, the reference position of the screen can be set to one of the following: the center of the screen, the top center of the screen, or a specific coordinate designated as the user workspace, but is not limited thereto.

[0233] The device (30) can contribute to preventing misidentification or operational errors that may occur in a crowded layout by ensuring that the component selected by the user is always positioned visually prominently, even if there are multiple components within the plan view.

[0234] The device (30) can calculate a movement vector by comparing the preset coordinates of the target component with the reference position coordinates of the screen, and convert the display coordinates of the target component to a corrected position based on the calculated movement vector.

[0235] At this time, the device (30) can set a conversion rule so that the coordinate system of the reference position can be applied in either a screen pixel-based or planar coordinate-based way.

[0236] Additionally, the device (30) can check the rotation state, size ratio, and screen magnification of the target component and perform a correction algorithm so that no distortion occurs when placing it at a reference position.

[0237] The device (30) can clearly convey to the user that the component is selected by applying at least one of outline highlighting, saturation adjustment, transparency adjustment, or shadow generation of the component displayed at the reference position.

[0238] For example, when a small piece of furniture is selected on the user's terminal (10), the device (30) can move and display it at a reference position corresponding to the top center of the screen for work convenience, even if the furniture is located in a complex area on the floor plan.

[0239] In this process, the device (30) can automatically adjust the enlargement or reduction ratio by taking into account the actual size of the furniture and visual readability on the screen.

[0240] In addition, even if the target component exists in a rotated state, it can be configured to maintain the existing rotation angle when moving to the reference position or to temporarily adjust it in an aligned direction to improve screen comprehension.

[0241] The device (30) can move the component to the work center point just before the user performs fine editing operations through this reference position alignment, thereby reducing the inconvenience of the user having to search the screen or repeatedly zoom in and out to find the component.

[0242] The device (30) can increase the user's editing focus and reduce uncertainty regarding component selection by aligning and displaying target components at a reference position on the screen.

[0243] This can contribute to providing an intuitive operation environment by clearly distinguishing selected components even when the spacing between components is narrow or the floor plan is complex.

[0244] The device (30) can be configured so that the reference position is not only a fixed point but also dynamically adjusted according to the user's preference settings, screen orientation, and work context, which can provide scalability corresponding to various types of interior design screens and terminal sizes.

[0245] In step S402, the device (30) can set tracking information so that the reference position is maintained according to the movement or rotation of the target component.

[0246] Since the reference position on the screen serves as a reference coordinate acting as the center point for user editing, it is necessary for the reference position to be stably maintained even when components are moved or rotated in various directions.

[0247] To this end, the device (30) can continuously check the current coordinates, rotation angle, movement vector, and screen scale information of the target component to generate tracking information so that the relative relationship with the reference position remains the same.

[0248] Tracking information may refer to position and orientation reference data managed by the device (30) to maintain a relative coordinate relationship with a reference position on the screen when the target component moves or rotates. For example, tracking information may include, but is not limited to, information regarding the center coordinates of the target component, reference position coordinates, distance vector between the two coordinates, change in rotation angle, and coordinate correction values.

[0249] The device (30) can calculate the center coordinates of the component, the screen reference position coordinates, and the relative distance and direction vector between the two coordinates at the point when the target component is aligned to a reference position, and store them as tracking information.

[0250] Subsequently, when a movement or rotation input is detected for a component, the device (30) can continuously correct the display coordinates of the component based on the stored relative vector so that the relationship with the reference position is maintained.

[0251] In the case of a rotation input, the device (30) can calculate a correction value necessary to maintain the reference position by rotating the relative vector based on the center of rotation, thereby ensuring that the visual center of the component does not deviate from the reference point perceived by the user.

[0252] Accordingly, the device (30) can provide the user with a consistent visual center and editing standard when editing components, thereby minimizing additional operations to find a reference point during the movement or rotation of components.

[0253] According to one embodiment, when the device (30) detects a movement or rotation input of a target component, it can calculate a relative coordinate difference by comparing the component coordinates recorded at a previous point in time with the reference position coordinates of the screen.

[0254] The device (30) can correct the display position on the screen so that the distance and direction from the reference position remain constant while the component moves based on the difference in relative coordinates.

[0255] For example, if the center of a component is selected at a specific distance from the screen reference position, the device (30) can continuously update the display coordinates by applying tracking information so that the same separation relationship is maintained even if the component is moved or rotated.

[0256] In addition, the device (30) can also perform rotation correction processing to maintain a vector relationship between the center of rotation and the reference position during rotation.

[0257] For example, when a movement operation is performed on a user's terminal (10) while the target component is aligned to a reference position corresponding to the center of the screen, the device (30) can calculate the distance the component has moved and continuously display the component around the center of the screen so that the relative positional relationship with respect to the reference coordinate system of the entire screen does not change.

[0258] When a component is rotated, a rotation correction algorithm can be additionally applied to maintain the coordinate relationship between the center of rotation and the reference position.

[0259] For example, when a user rotates a long rectangular piece of furniture, the device (30) can calculate to maintain relative coordinates between the center of rotation and a reference position, thereby providing a stable interface in which the reference point perceived by the user does not change before and after rotation.

[0260] In step S403, the device (30) can set reference information for switching components based on the relative positional relationship between the target component and the surrounding component.

[0261] Here, component switching may include a function that allows replacing a target component with a different type of component or selecting similar components sequentially.

[0262] The device (30) can interpret placement characteristics such as the location, size, and orientation of the target component, as well as the placement density, proximity distance, and alignment direction of surrounding components, and define reference information required for conversion based on the analysis results.

[0263] This reference information can be used to determine the priority or suitability of transition candidates that serve as a standard when a user performs a component transition request in the future.

[0264] Reference information may refer to spatial and attribute-based judgment information stored by the device (30) to determine whether to prioritize selection or replacement when switching components based on the relative positional relationship between the target component and surrounding components, and may include, for example, distance values ​​between center coordinates between components, minimum spacing between boundaries, alignment direction, functional similarity, and information on the results of placement pattern analysis, but is not limited thereto.

[0265] The device (30) first collects the location coordinates, outline information, placement direction, and attribute values ​​of all active components placed on a planar view, and can search for surrounding components existing within a certain range centered on the target component.

[0266] Surrounding components refer to other components existing within a preset distance range relative to the center position of the target component. These components may include, but are not limited to, elements having unique position coordinates, outer contour information, and placement orientation. In this case, the preset distance range may be set differently depending on the embodiment.

[0267] Component switching may refer to an operation that controls replacing a target component with a different type of component while maintaining the same location or reference location, or sequentially selecting one of component candidates that are similar in functional and morphological characteristics to the target component. For example, it may include, but is not limited to, processes such as changing the type of component, automatically presenting replacement candidates, cyclic selection among similar components, and attribute-based switching proposals.

[0268] Subsequently, the device (30) can numerically express the positional relationship by calculating the relative distance, alignment angle, and boundary spacing between the target component and the surrounding component.

[0269] In this process, the device (30) can improve calculation accuracy by normalizing the coordinate system or converting the distance between component centers into a standardized distance unit to unify the comparison criteria.

[0270] The device (30) can also comprehensively analyze surrounding environment factors to be considered when switching components by combining contextual information such as the type of surrounding components, functional associations, and placement frequency.

[0271] These multifaceted analysis results can be stored as reference information that the device (30) uses when selecting candidate components for conversion.

[0272] For example, if the target component is a desk and a chair, lighting, and storage cabinet are placed around it at regular intervals, the device (30) can determine the distance between the center coordinates of the target component and the surrounding components, the minimum distance between boundaries, and the alignment state (e.g., horizontal alignment, vertical alignment).

[0273] The device (30) determines that among surrounding components, a chair and a desk are close and their alignment directions match as a highly related component relationship, and when deriving conversion candidates, it may present components having functions similar to a chair or a desk as a priority.

[0274] In addition, if the number of surrounding components is large and the placement density is high, the device (30) determines that a collision may occur due to the transition and may include a candidate for a transition in a direction that minimizes the possibility of a physical collision in the reference information.

[0275] The device (30) can reduce the problem of unnecessary collisions or unnatural arrangements occurring during the component switching process by analyzing the spatial relationship between the target component and surrounding components and setting reference information.

[0276] In addition, since functional associations and placement patterns between components can be considered together, transition results suitable for the design flow can be intuitively provided without the user having to search for candidates separately.

[0277] FIG. 5 is a flowchart illustrating the process of changing the position, size, direction, and attributes of a target component according to one embodiment.

[0278] Referring to FIG. 5, first, in step S501, the device (30) can analyze the user's operation input and perform at least one of moving, rotating, scaling, and changing attributes.

[0279] The device (30) can interpret an operation signal input through the user's terminal (10), classify the operation type of the target component, and execute an editing function corresponding to the type.

[0280] The device (30) can comprehensively analyze detailed input elements such as the user's input point, input duration, direction of movement, distance of movement, direction of rotation gesture, and change in touch pressure in order to control the components more precisely on the planar view.

[0281] Through this, the device (30) can distinguish operations such as moving the position of a component, changing the rotation angle, enlarging and reducing the size, and adjusting the attribute value, and control each operation so that it is performed naturally.

[0282] The device (30) can collect various input data such as touch coordinates, drag trajectory, gesture direction, change in distance between two fingers, input speed, and input interval transmitted in real time from the user's terminal (10).

[0283] The device (30) can generate input frames by arranging the data in time order and determine the type of operation by analyzing the amount of position change and speed change between frames.

[0284] For example, an input that moves continuously for more than a certain distance can be analyzed as a movement motion of a component, and if the input trajectory forms a certain arc with respect to the center of rotation, it can be analyzed as a rotation motion.

[0285] If an increase or decrease in the distance between two point inputs is detected, it is determined as a scaling action, and if the input is associated with a specific attribute manipulation button, the corresponding attribute value can be controlled to change.

[0286] The device (30) can determine the final type of motion by considering the continuity of the input pattern, the consistency of the speed change, and the gesture characteristics together to increase the accuracy of determining each motion.

[0287] The type of operation may refer to a classification concept for distinguishing how an operation signal input from the user's terminal (10) is interpreted as an editing operation for a target component, and may include, for example, input interpretation results such as position movement, rotation, enlargement or reduction, adjustment of attribute values, selection of a component, switching of a component, and deletion request, but is not limited thereto.

[0288] The device (30) can calculate the amount of change in input by arranging continuous input values ​​received from the user's terminal (10) on a time axis and determine which operation corresponds to movement, rotation, scaling, or attribute change based on the direction, magnitude, and speed pattern of the amount of change in input.

[0289] The device (30) can update the final position, rotation angle, size value, or attribute value of a component by calculating a transformation parameter of a target component according to a determined operation type and applying the calculated parameter by correcting it to a preset control unit.

[0290] In this process, the device (30) can dynamically adjust the input interpretation criteria to reduce the possibility of misjudgment by considering factors such as whether there is a discontinuity between inputs, the amount of abrupt change, and the characteristics of the gesture pattern, and to provide a conversion result that matches the user's actual editing intention.

[0291] For example, if a drag input in the form of pulling a target component from a user's terminal (10) is maintained for a certain period of time, the device (30) determines this as a movement action and can update the coordinates of the component on the planar view by converting the drag trajectory into a movement path of the component.

[0292] If two input points on the user's terminal (10) move in a direction that moves away from each other, the device (30) can perform a size enlargement operation, and conversely, if the distance between the two input points narrows, it can perform a size reduction operation.

[0293] When a user touches the component in a constant arc direction, the device (30) can estimate the center of rotation and calculate the angle of rotation to perform a rotation transformation of the component.

[0294] In step S502, the device (30) can correct the operation according to a preset control unit when the target component moves or rotates.

[0295] The device (30) can correct the conversion value based on a preset control unit to prevent the problem of the amount of change becoming excessively large or excessively fine when the target component is moved or rotated due to user operation input.

[0296] The control unit is a minimum change standard designed to ensure that the movement distance, rotation angle, or amount of attribute change of a component is calculated in fixed units; by applying this, both stability and precision of the component editing process can be simultaneously ensured.

[0297] When the device (30) detects a movement input of a target component, it can calculate a movement vector and correct the actual amount of movement by dividing the magnitude of the vector by a control unit.

[0298] For example, even if a long drag input is detected at the user's terminal (10), if the movement vector does not exceed an integer of the control unit, the device (30) can correct the movement to prevent the component from moving unnecessarily finely.

[0299] In the case of rotation, the device (30) can calculate the rotation angle from the input trajectory based on the rotation center and correct the calculated rotation angle according to the control unit so that rotation is performed in units of a certain angle.

[0300] The device (30) may also apply distance limit conditions to prevent the component from closing the gap with surrounding components too much during this correction process, and may additionally execute a correction algorithm to prevent spatial arrangements from colliding due to rotation.

[0301] The pre-set control unit may refer to a minimum change unit pre-defined by the device (30) to cause the movement distance, rotation angle, or amount of change in scaling of the target component to change according to a certain reference unit, and may include, for example, a movement unit distance value, a rotation unit angle value, and a scaling unit ratio value, but is not limited thereto.

[0302] When the device (30) receives a movement or rotation input from the user's terminal (10), it first calculates the amount of change in the input, and can calculate the actual movement distance or rotation angle to be applied based on an integer multiple value obtained by dividing the calculated amount of change by a preset control unit.

[0303] The device (30) can prevent the component from moving unnecessarily finely or rotating excessively and maintain a stable editing result by checking whether the calculated correction value does not conflict with the component's existing placement environment and finally reflecting it.

[0304] In addition, the device (30) can maintain a control unit standard even when inputs are repeated rapidly, so that the component state is changed only when an integer multiple of the control unit is satisfied even when the amount of change accumulates, thereby improving the consistency of the editing operation and the design accuracy.

[0305] For example, when a component is moved by dragging it on a user's terminal (10), the device (30) may process the actual movement of the component by converting it into a control unit such as 1mm, 10mm, or 10mm, even if a vector value is calculated according to the movement trajectory entered by the user, but is not limited thereto.

[0306] This can reduce the problem of unstable placement caused by unnecessary fine movements when the user intends to position components precisely.

[0307] In the case of rotation, when an arc-shaped gesture is detected at the user's terminal (10), the device (30) can analyze the rotation angle and adjust the direction of the component in units of, for example, 1 degree, 10 degrees, or 100 degrees, but is not limited thereto.

[0308] In addition, if the component is an element that requires wall placement, the device (30) can ensure the realism of the interior design by correcting the distance from the wall to be maintained below a specific standard even after the control unit correction.

[0309] In this way, the device (30) can provide an editing result that simultaneously satisfies user intent and visual stability by applying a control unit to the conversion values ​​of component movement and rotation.

[0310] The device (30) can control the position alignment, direction change, and spatial arrangement of the components more precisely and consistently by performing control unit-based correction when moving and rotating the components.

[0311] This is particularly useful in small screen environments where fine manipulation is difficult or design accuracy is critical, and it can improve the stability of the design process by reducing problems such as unintended shaking or excessive movement of components.

[0312] The device (30) can adjust the control unit according to user-set values ​​or the type of component, so it can respond to various spatial configuration environments, and can be extended in a way that automatically optimizes the criteria for changing the control unit based on learning, but is not limited thereto.

[0313] In step S503, the device (30) can enlarge the display of the target component in response to user operation or restore the magnification.

[0314] The device (30) can automatically adjust the display scale of the target component so that the user can more clearly see the detailed shape or location of the component while editing a specific component in a plan view.

[0315] The device (30) can enlarge or return the component to its original size by taking into account visual analysis criteria such as the user's input intensity, input type, and duration of operation.

[0316] The device (30) can prevent relative position distortion due to enlargement by maintaining a reference position within the screen based on the center position of the component after enlargement.

[0317] According to one embodiment, when operation input such as movement, rotation, or attribute change is detected from a user, the device (30) can analyze the change in input to determine the moment when enlargement is needed.

[0318] To this end, the device (30) analyzes various factors such as the relative distance between the input point and the center of the component, whether the user repeatedly performs a zoom gesture after selecting the component, and the on-screen display size of the component.

[0319] When the enlargement condition is met, the device (30) can increase the rendering scale of the outer boundary, texture, and attribute display information of the component and perform coordinate transformation so that the relationship with surrounding components is maintained even in the enlarged state.

[0320] Conversely, when the enlargement condition is released or user input is stopped, the device (30) can perform a screen refresh process to restore the original display scale.

[0321] Through this, the device (30) can minimize problems such as screen distortion, position shift errors, and visual overload during the enlargement and restoration process.

[0322] As described in the example, when a user selects and attempts to adjust the position of a small component, such as a light, switch, or outlet placed in a narrow space, the device (30) can execute an automatic enlargement function if it determines that the actual screen display size of the component is difficult for the user to perform operations.

[0323] For example, if a two-finger zoom gesture is detected on the user's terminal (10) or a rapid repeated tap input is detected based on the center of the component, the device (30) can enlarge and display the component by a certain percentage or more of the current zoom level.

[0324] In this state, the enlarged component is rendered centered on the screen's reference position, allowing for more precise position adjustments when moving, rotating, or changing properties while in the enlarged state.

[0325] When the operation is completed, the device (30) can display the component at its original size by executing a scale restoration function based on a single tap input or the end of the operation.

[0326] This enlargement and restoration process can be applied equally to various types of components, and the device (30) may set different enlargement ratios depending on the size or shape of the component.

[0327] The device (30) can effectively improve the problem of reduced input accuracy that occurs when editing small components on a plan view by automatically adjusting the display scale of the target component in response to user operation.

[0328] In particular, the zoom function allows users to perform editing while clearly checking the boundaries, rotation direction, and detailed attributes of components, thereby improving design efficiency and work quality.

[0329] The device (30) may configure enlargement or restoration conditions differently depending on the component type, screen resolution, and user operation pattern, but is not limited thereto.

[0330] Meanwhile, when a new component is placed during the change process, the device (30) can convert the reference position of the screen to a placement point on the plan view, create the component selected by the user at the placement point, and store the initial attribute information of the created component on the plan view.

[0331] The device (30) can support the modification of existing components as well as the placement of new components during the user's editing process.

[0332] When a user inputs a command to add a component while editing a target component, the device (30) can automatically calculate the location of a new component by converting the reference position on the screen to an actual placement point within the plan view.

[0333] This feature is designed to solve the problem of users finding it difficult to precisely select specific coordinates on a floor plan, while enabling the rapid and accurate placement of components through an intuitive interface.

[0334] The device (30) can store the initial attributes of the components being placed together to maintain consistent information during subsequent editing and simulation processes.

[0335] According to one embodiment, the device (30) can convert the position on the screen into absolute coordinates of the plan view after the reference position on the screen is set.

[0336] To this end, the device (30) can apply a conversion formula by combining scale information of the plan view, screen enlargement ratio, screen center coordinates, and the reference coordinate system of the plan view.

[0337] The device (30) can verify whether the converted placement point coordinates are valid locations within the plan and check whether they collide with major structural elements such as walls, doorways, and windows.

[0338] If the placement point is determined to be valid, the device (30) can check the type of user-selected component and create a component object including a basic shape, basic size, placement direction, and initial attribute values ​​that match the type and place it on the plan view.

[0339] Subsequently, the device (30) stores initial information, such as location information, attribute information, and user selection time of the generated component, in the data structure of the plan view so that it can be linked with the editing function in the future.

[0340] In an embodiment, when a user selects the furniture add button on the floor plan editing screen, the device (30) can convert the reference position of the current screen to a specific coordinate within the floor plan and set it as the new furniture creation position.

[0341] For example, when a command to add a bed is input from the user's terminal (10), the device (30) can convert the screen center coordinates into actual spatial coordinates of the floor plan and determine whether the converted position is separated from the wall by a certain distance or does not collide with other components.

[0342] When the conditions are met, the device (30) can create a bed object including a basic size, basic orientation, and basic height value and place it at the corresponding point. The user may also immediately edit the placed component, and the device (30) can store the initial attribute information of the created component so that it can immediately respond when the user attempts to rotate or move it.

[0343] The initial attribute information of a generated component may refer to basic state values ​​applied when the component is first placed on a plan view, and may include, for example, but is not limited to, setting information regarding the component's basic size value, initial placement direction, basic color or material properties, unique identifier, collision detection criterion value, and editability.

[0344] Additionally, the device (30) may apply visual highlighting or outline display according to the type of generated component to display the newly placed object so that it is visually distinguished from the existing component.

[0345] The device (30) can perform automatic placement by converting the reference position of the screen into a placement point within the plan view, thereby reducing the burden on the user to directly specify a specific location in the complex plan view and improving the accuracy of adding components.

[0346] In addition, the device (30) can prevent errors caused by abnormal placement and ensure consistency of interior design results by automatically verifying whether there is a collision at the placement point.

[0347] The device (30) may be configured in various ways, such as criteria for determining placement points, methods for setting initial attributes, collision detection conditions, and methods for creating component objects, but is not limited thereto.

[0348] When replacement, deletion, and display switching are requested during the change process, the device (30) can replace the selected component with another component while maintaining the reference position of the selected component, remove the component from the plan view, and switch whether the component is displayed.

[0349] When a user requests a change to a specific component during the editing process, the device (30) can replace it with another component while maintaining the reference position of the component, remove the component from the plan view, or switch whether the component is displayed.

[0350] This feature is intended to meet the needs of users who require comparing the placement of various furniture or equipment in the same location during the interior design process, or who need to temporarily hide specific elements to check the spatial structure.

[0351] After the device (30) obtains a unique identifier and reference location for the selected component, it can prepare initial information for creating a replacement component at the same coordinates when the user enters a replacement command.

[0352] The device (30) checks the type of component to be replaced in the user selection list or recommendation list, and loads the basic size value, placement direction, and attribute information of the type according to the reference position.

[0353] The device (30) can determine whether there is a collision before removing the existing component and verify whether a replacement component can be placed normally in the same location.

[0354] The reference location may refer to location information combining the reference coordinates and placement direction occupied by the selected component on the plan view, and may include, for example, the center coordinates, alignment reference point, or rotation reference point of the component, but is not limited thereto.

[0355] When a deletion command is entered, the device (30) can completely remove the corresponding component from the plan view data structure and update the relationship with the remaining components in the space.

[0356] When a display switching command is entered, the device (30) can change the display properties of the component to switch to a state where it is not visible on the screen but is maintained in the internal data structure, or vice versa.

[0357] To explain through an example, when a user selects a sofa and then inputs a request to replace it with a sofa of a different design, the device (30) can generate a replacement sofa by extracting the reference position and rotation direction of the existing sofa and then applying initial information to place the other sofa model selected by the user in the same position.

[0358] If the user enters a component deletion command, the device (30) can remove the sofa from the floor plan and check whether the removed space remains without colliding with surrounding components.

[0359] When the user executes the component display switching function, the device (30) can change whether a specific ornament or wall-mounted component is displayed, switching it to a hidden state on the floor plan screen while maintaining the internal data so that it can be restored when necessary.

[0360] This process can be usefully applied in various interior scenarios, such as comparing furniture placements, securing space, and adjusting decoration layouts.

[0361] The device (30) is designed to maintain a reference position during the component replacement process, allowing the user to quickly compare multiple alternative designs at the same coordinates, which provides the effect of improving design efficiency.

[0362] The component deletion function contributes to improving the readability of the design space by immediately removing unnecessary elements, while the display switching function can be usefully utilized for temporary hiding tasks to understand the structure or during design phases requiring visual focus.

[0363] The device (30) can store the state prior to each operation during the process of storing the operation history that occurred during the component selection and editing process, restore the stored state upon the user's request to revert, and provide feedback to the user in one or more ways such as a screen pop-up, vibration, or voice upon completion of the operation.

[0364] The device (30) can systematically store and manage the operation history that occurs during the component selection and editing process.

[0365] The device (30) records state information such as coordinates, placement direction, attribute values, and screen scale of the component before the user moves, rotates, resizes, or changes the attributes of the component, thereby providing a basis for restoring the state prior to the operation.

[0366] This process supports the rapid reversal of unintended changes made by the user during the editing process, thereby ensuring editing stability and reliability of operability.

[0367] The device (30) can be designed to clearly convey to the user whether the operation is completed at the time the operation ends through a feedback method such as a screen pop-up, vibration, or voice output.

[0368] According to one embodiment, the device (30) can capture state information of a component in a certain data structure at each editing point for storing operation history.

[0369] This data structure may include, but is not limited to, identifiers of components, center coordinates, outline information, rotation angles, attribute values, display status, screen magnification ratios, etc.

[0370] The device (30) can store the previous state in a stack structure or a point-in-time-based record structure whenever the user performs an operation, and can process the most recent state information among the stored records to be restored when a revert request is entered.

[0371] During the restoration process, the device (30) performs screen updates and synchronization of the component list so that the entire floor plan remains in a consistent state.

[0372] Additionally, the device (30) may display a pop-up message, generate device vibration, or provide voice output to reliably convey to the user's terminal (10) that the operation is completed. At this time, the feedback method may be dynamically selected according to user setting values ​​or the type of operation.

[0373] In an embodiment, when a user inputs a screen operation to move a table by 20 cm, the device (30) immediately saves the coordinates, direction, size value, attribute value, and screen magnification scale of the table before movement in the operation history.

[0374] If the user presses the return button after the movement is completed and determines that the movement was made differently than intended, the device (30) can retrieve the saved previous state value and restore the table to its position before the operation.

[0375] In another embodiment, after the user changes the color attribute of the component, the device (30) may display a simple pop-up message as an operation completion notification to confirm to the user that the change has been successfully saved.

[0376] If the user prefers vibration-based feedback, the device (30) can generate a small vibration after important operations, such as rotating or deleting a component, to provide a clear indication of the operation completion status.

[0377] Specifically, when the device (30) detects when a user's operation is completed, it can determine the type of operation and the time of completion through internal state monitoring logic and generate a corresponding feedback output.

[0378] The device (30) selects a feedback method based on the type of operation, the time of operation, the degree of change of the target component, whether it is reversible, etc., and determines the text and location of the screen popup, the intensity and duration of the vibration, and the message and tone of the voice output according to the selected feedback method and transmits them to the user's terminal (10).

[0379] For example, the device (30) can generate a notification window containing text suitable for the purpose of operation in the case of a screen popup and display it in a predefined area on the user interface, generate a signal to control the vibration function of the terminal in the case of vibration feedback and generate a vibration for a short period of time, and in the case of voice feedback, call a voice synthesis engine to generate a completion message and then output it through the speaker of the terminal.

[0380] This feedback generation process may be adjusted according to user settings, but is not limited thereto.

[0381] The device (30) provides operation history storage and state restoration functions, so that even if the user accidentally performs an incorrect edit, it can be quickly restored to the previous state, which greatly increases the stability and reliability of the design process.

[0382] In addition, the user feedback function intuitively conveys whether an operation has been completed, improving the clarity of the editing process and contributing to reducing confusion that may occur during the design phase.

[0383] The device (30) can be configured in various ways, such as the depth of the stored operation history, the feedback method, and the restoration processing method, but is not limited thereto.

[0384] That is, the device (30) can precisely control the interior design process by accurately selecting components in the floor plan, stably editing based on reference positions and reference information, and integrally managing user operation history and providing feedback.

[0385] The device (30) can set a search area based on the user's input point on the plan view and reliably determine the target component by comprehensively analyzing whether the component's display area is included and distance information.

[0386] The device (30) can display the determined component by aligning it to a reference position on the screen, set tracking information so that the reference position is maintained even when moving or rotating, and provide reference information for switching components by analyzing the relative positional relationship with surrounding components.

[0387] Additionally, the device (30) can interpret various editing inputs such as movement, rotation, resizing, and attribute change to generate corrected editing results according to the control unit, and support precise operation by magnifying the component or restoring the scale when necessary, and maintain a consistent editing flow including the placement of new components, saving initial attributes, and replacing, deleting, and switching the display of components.

[0388] Furthermore, the device (30) can store the operation history generated during the editing process in state units, quickly reproduce the previous state upon a restoration request, and provide user-customized feedback such as screen pop-ups, vibrations, and voice upon completion of the operation, thereby improving the intuitiveness and stability of the design process.

[0389] Going beyond simple drawing editing functions, this configuration organically combines component selection, alignment, correction, conversion, tracking, and restoration capabilities to automate and intelligently manage the entire complex interior design process, thereby contributing to providing higher accuracy, efficiency, user responsiveness, and design quality compared to existing systems.

[0390] FIG. 6 is a flowchart illustrating a detailed process for changing the position, size, direction, and attributes of a target component according to one embodiment.

[0391] Referring to FIG. 6, first, in step S601, the device (30) can collect placement information of components included in a plan view to check the coordinates, placement direction, adjacency relationship, and attribute information of each component.

[0392] The device (30) can read component-specific meta-information stored in the plan view and check placement attribute values ​​including component center coordinates, boundary coordinates, rotation angle and placement direction.

[0393] The device (30) can determine the proximity relationship between components by calculating the distance between the center coordinates of each component, the minimum distance between boundaries, or the relative arrangement in the direction of the arrangement axis.

[0394] The device (30) can also determine the effect of component changes on the overall plan view by analyzing attribute information such as the width, height, thickness, shape type, and whether the component is fixed.

[0395] The device (30) can generate movement constraints, rotation constraints, collision prevention conditions, and automatic alignment criteria to be applied during the subsequent editing process based on the analysis of such placement information.

[0396] For example, the device (30) can recognize components such as a sofa, table, lighting, wall structure, etc. from a floor plan displayed on the user's terminal (10), and extract the center coordinates and placement direction of each component to organize them into a placement table.

[0397] The device (30) can determine the adjacency relationship between components by calculating the center distance between the sofa and the table, the minimum boundary distance between the sofa and the wall structure, and the vertical arrangement distance between the lighting and the top of the table.

[0398] For example, if the table in front of the sofa is too close to a certain distance, it is determined to be a layout that makes it difficult to secure the user's movement path, and this can be used as a criterion to request relocation or alignment adjustments in subsequent stages.

[0399] Additionally, the device (30) can analyze the 'fixed structure status' among the attributes of each component and set immovable components, such as walls or columns, to be excluded from the editing target.

[0400] In step S602, the device (30) can collect input information related to the user's operation to check the input point, operation type, operation duration, screen movement history, and zoom in and zoom out operation history.

[0401] The device (30) can collect input points and operation types, such as touch location, drag path, operation pressure, number of fingers, and gesture direction, from the user's terminal (10).

[0402] The device (30) can analyze the timestamps of the collected operation signals to calculate the duration of each operation and determine the editing continuity based on the start and end points of the operation.

[0403] The device (30) can reconstruct the current editing context by recording panning and scrolling information generated during the process of the user moving the screen, and pinch gesture information related to screen zooming in or out.

[0404] The device (30) can determine whether the user is performing concentrated operations on a specific component by combining input points and screen movement history, and can use this to determine the editing priority in the subsequent editing reflection stage.

[0405] For example, when a drag operation occurs on a user's terminal (10) after long-pressing a sofa icon with a single finger, the device (30) can record the start coordinates and end coordinates of the operation, the curvature of the movement path, and the drag duration.

[0406] The device (30) can determine that the user is focusing on fine-tuning the component if the enlargement gesture occurs repeatedly on the same component.

[0407] Additionally, if the device (30) selects a specific component immediately after the user moves the screen to the left, it can determine that the user intentionally performed a search operation to access the component by linking the screen movement history with the time of selection.

[0408] The device (30) can interpret user intent more precisely than a simple coordinate-based editing method by comprehensively analyzing the user's input point, operation type, operation duration, and screen movement history.

[0409] This configuration is advantageous for implementing a precise interface experience because it can provide different editing responses depending on the intensity, repeatability, and focus patterns of the operation, even when the user performs the same input.

[0410] The device (30) may have various input methods applied, but is not limited thereto, and the same processing structure may be applied to mouse-based interfaces, pen input-based interfaces, and input methods combined with voice-linked operation.

[0411] In step S603, the device (30) can generate cross-relationship data by matching the collected batch information and input information based on the component identifier and the time of operation.

[0412] Interrelationship data can refer to structured information indicating when and what operations were applied to a specific component by linking component placement information and user operation information based on component identifiers and operation times.

[0413] The device (30) can organize in a structured form what operations were performed at what time for each component by analyzing the temporal and spatial linkage between the coordinates, placement direction, and attribute information of the components and the user's operation input.

[0414] The device (30) assigns a unique component identifier to each component and can store the coordinates, placement direction, adjacent relationships, and attribute information of the component along with the identifier.

[0415] In addition, when the device (30) collects user operation input, it records time information regarding the time of operation occurrence and the location coordinates of the operation target together, thereby establishing a criterion for determining which component a specific operation affected.

[0416] The device (30) can determine which component is most closely associated with a specific operation by calculating the distance value from the operation input based on the display area or center coordinates of the component.

[0417] Afterward, when the component to be operated is determined, the device (30) can match the identifier of the component with the time of operation occurrence and combine the operation type, operation duration, and screen movement history to generate interrelationship data.

[0418] For example, the device (30) can analyze user input based on a component identifier (ID_A) representing a table icon on a floor plan screen.

[0419] If a drag operation starting from the top left of the screen is performed through the user's terminal (10) and the corresponding drag path occurs within a certain distance of the display area of ​​the table, the device (30) can match the drag input with component ID_A.

[0420] At this time, the device (30) can structure detailed information related to the operation by recording the drag start time, drag end time, amount of change in the movement path and rotation direction, etc.

[0421] In addition, the device (30) can accurately identify only the component that is determined to be the actual target of operation based on distance information between the input point and the component center coordinates, even if other components such as chairs or small decorations exist around the table.

[0422] The device (30) can precisely analyze the flow of user operations by matching placement information and input information based on component identifiers and operation timing, which can greatly improve the accuracy of component editing operations.

[0423] The device (30) may apply various matching algorithms depending on the type, arrangement, and user operation method of the components, but is not limited thereto.

[0424] For example, it can be extended to a method of performing matching by considering depth information (z-axis) in a 3D plan view where components are represented in a multi-layered structure, or to a method of automatically predicting the components to be edited by learning the user's operation patterns over a long period of time.

[0425] In step S604, the device (30) can determine the editing index of a component by checking the change in position, change in rotation, whether a request for attribute change is made, and the possibility of interference with adjacent components from the cross-relationship data.

[0426] The device (30) can calculate the amount of position change and rotation change of a component by analyzing the operation time, operation type, component identifier, coordinate values ​​before and after the operation, rotation angle, and attribute value change information included in the interrelationship data. The device (30) can calculate the difference in coordinates before and after the operation as a vector and derive the amount of rotation change by comparing the rotation angles before and after the operation.

[0427] The device (30) can check whether component attributes, such as color, material, whether it is open or closed, and direction attributes, have changed during the operation process based on whether there has been a change in the recorded attribute parameters.

[0428] The device (30) can determine the possibility of interference by comparing the coordinate set of adjacent components with the position of the target component after manipulation and performing a distance criterion or boundary collision calculation.

[0429] At this time, the device (30) can quantitatively determine the degree of interference by evaluating the minimum separation distance between components, whether boundary lines overlap, or collision candidate areas on the movement path.

[0430] The editing index may refer to a quantitative judgment indicator that represents how important a specific component is evaluated as an adjustment target during the editing process, by comprehensively assessing the component's position change amount, rotation change amount, whether a request for attribute change has been made, and the possibility of interference with adjacent components.

[0431] According to one embodiment, the device (30) can calculate a higher editing index by determining that the component has undergone a greater structural deformation as the amount of positional change of the component increases. The device (30) can calculate a higher editing index by determining that the change in placement stability is greater as the amount of rotational change of the component increases. The device (30) can calculate a higher editing index by determining that a semantic change of the component has occurred as the confirmation of whether a request for attribute change is made.

[0432] Additionally, the device (30) can calculate a high editing index by determining that precise adjustment is required to prevent editing conflicts as the likelihood of interference with adjacent components increases.

[0433] Conversely, if the amount of change in a component is small or the possibility of interference is low, the device (30) can calculate a low editing index to lower the priority of subsequent editing of the component.

[0434] In step S605, the device (30) can determine the user editing intention index by analyzing the highlight expressions, whether repeated operations, whether continuous input within a specific operation range, and the intensive editing pattern for the target component that appear in the user input.

[0435] The device (30) can identify the highlighted expression by analyzing the input log, which records user input in chronological order, and the occurrence pattern by operation type.

[0436] The device (30) can extract an indicator that reflects the intensity or frequency of user operations, such as input intensity, touch pressure, screen scroll acceleration, and whether rapid consecutive taps occur, and can determine that it is a highlighted expression if it occurs repeatedly above a certain threshold.

[0437] Additionally, the device (30) can detect whether there is a repeated operation by analyzing a situation in which the same type of operation occurs consecutively at short intervals, and can determine whether there is a repeated attempt based on the interval between operations, the duration of the operation, the cumulative value of the amount of movement in the same direction, etc.

[0438] This analysis can be used to quantitatively determine the level of user interest in component editing by linking feature vectors by operation type with time-based input change amounts.

[0439] The device (30) can evaluate the amount of change in position coordinates of a touch or operation event and time axis information together to determine whether a continuous input is maintained for a certain period within a specific operation range.

[0440] For example, the device (30) can determine that a user has performed a long-term pressing, dragging, or fine-tuning of the rotation angle within the same location or a narrow range as a continuous input.

[0441] Additionally, the device (30) can derive an intensive editing pattern by evaluating the frequency of operation occurrence for a specific component, the duration of the operation intensive period, and the number of repeated edits for the same component.

[0442] In this process, the device (30) can quantitatively analyze the degree to which user intent is concentrated on a specific component by combining the operation history by component, the density of the operation occurrence location, and the amount of change in the operation direction.

[0443] The user editing intent index can refer to a quantitative indicator representing the extent to which a user intends to change a component by combining emphasis expressions, repetitive operations, continuous input, and concentrated editing patterns for specific components.

[0444] According to one embodiment, the device (30) can determine that the stronger the emphasis expression in the user input, the higher the need to edit the corresponding component, and can calculate a high user editing intention index.

[0445] The device (30) can calculate a high user editing intention index by determining that the user's attempt at readjustment appears stronger as the same type of operation is repeated. The device (30) can calculate a high user editing intention index by determining that a situation requiring fine-grained operation is required as long as the continuous input within a specific operation range is longer. Additionally, the device (30) can calculate a high user editing intention index by determining that the intensity of the user's intention is higher as the frequency of operation and the concentrated editing pattern regarding the target component become more distinct.

[0446] Conversely, if the emphasis expression is weak or there is little repetition or continuous input, the device (30) can calculate a low user editing intention index.

[0447] In step S606, the device (30) can calculate the editing priority index of the target component based on the editing index and the user editing intention index.

[0448] The editing priority index may refer to a quantitative indicator that combines the editing index and the user editing intention index to represent the degree to which editing work on a target component should be processed preferentially over other components.

[0449] According to one embodiment, the device (30) can determine that the greater the change in position of a component, the more adjustment is required for that component in the current layout structure, and thus calculate a high editing priority index.

[0450] The device (30) can determine that the greater the change in rotation, the more the user is attempting fine direction adjustment, and can calculate a high editing priority index.

[0451] The device (30) can calculate a high editing priority index by determining that there is a high need for visual or functional adjustment of the component when attribute change requests occur repeatedly or the intensity of the change is high.

[0452] The device (30) may calculate a high editing priority index by determining that the higher the likelihood of interference with adjacent components, the more likely they are to be adjusted first to prevent editing conflicts. Additionally, the device (30) may calculate a high editing priority index by determining that the higher the user editing intention index, the stronger the user's actual adjustment request.

[0453] Conversely, the device (30) can calculate a low editing priority index by determining that the need for adjustment of the component is relatively low when the amount of position change is small, there are almost no requests for attribute change, and the possibility of interference with adjacent components is low.

[0454] In addition, if the user editing intention index is low, the device (30) can determine that the adjustment priority of the target component is low and calculate a low editing priority index.

[0455] The device (30) can calculate the editing priority index of a target component by comprehensively considering the editing index and the user editing intention index. The device (30) can quantify the editing priority by evaluating not only the absolute values ​​of the two indices but also the change pattern, the difference value between time points, the concentration of user operation, and the risk of interference between components.

[0456] At this time, the device (30) can perform a weighted combination of the two indices by reflecting that there is a high need for mechanical editing of the component when the editing index is high, and reflecting that there is a high demand for user intention-based editing of the component when the user editing intention index is high.

[0457] In addition, the device (30) can increase the stability of the index calculation by additionally considering auxiliary information such as the current placement stability of the component, the risk of collision with adjacent components, and the history of attribute changes.

[0458] The device (30) may apply a weighted average method, a non-linear combination method, or a time-dependent combination method after normalizing the editing index and the user editing intention index to the same scale to calculate the editing priority index.

[0459] For example, the device (30) can set the weight of the editing index high if the component has a history of being repeatedly corrected during the past editing process, and can set the weight of the user editing intention index high if the user has continuously performed fine operations on a specific component.

[0460] Through this, the device (30) can calculate a priority that reflects the user's intention and system judgment simultaneously, rather than a simple numerical combination.

[0461] That is, the device (30) can calculate a high editing priority index by determining that the higher the editing index, the greater the need for mechanical editing of the component. The device (30) can calculate a high editing priority index by determining that the higher the user editing intention index, the greater the user's intention-based editing demand. The device (30) can calculate a high editing priority index as the lower the placement stability of the component, the higher the possibility of interference with adjacent components, and as attribute changes are repeated.

[0462] Conversely, if both the editing index and the user editing intention index are low or the component is in a stable state, the device (30) can calculate a low editing priority index.

[0463] In step S607, the device (30) can input an editing priority index into a pre-trained artificial intelligence model to produce an editing result for the target component.

[0464] The device (30) can input the editing priority index and the state information of the component together into a pre-trained artificial intelligence model to derive the editing result of the target component based on the editing priority index.

[0465] The device (30) can convert component state information, such as the coordinates, size, placement direction, spatial relationship with surrounding components, and attribute value change history of the target component, into a model input form by combining it with an editing priority index.

[0466] Through this, the device (30) can provide the model with state information that reflects the spatial context and the user's editing intention together, without relying solely on single numerical information, and the artificial intelligence model can comprehensively determine the possibility of changing the target component, the need for collision prevention, and the need for alignment recommendations based on such composite input values.

[0467] In this process, the device (30) can normalize the format of the input value and structure it so that comparison within the model is possible based on component identifiers, thereby increasing the model prediction accuracy.

[0468] The device (30) can automatically calculate the optimal editing method for the target component based on the analysis structure used within the artificial intelligence model.

[0469] For example, the device (30) can be configured so that the model outputs a movement correction value, a rotation correction value, an alignment direction, a position adjustment value for collision avoidance, or a suggestion value for changing attributes.

[0470] At this time, the device (30) can adjust the output result by post-processing it so that the editing result included in the model's output value does not conflict with the user's editing intention index, and so that it naturally connects with the user's operation flow.

[0471] Additionally, the device (30) may compare the reliability of the result value output by the model with past editing history or verify structural constraints of the components (placeable area, indoor structural restrictions, etc.) to evaluate the reliability of the result value output by the model, and thereby make adjustments to prevent unnecessary automatic editing from occurring. The device (30) may use various model structures, and the model structure may include, but is not limited to, artificial neural networks, time series models, graph structure-based models, etc., as long as it can achieve the purpose of the invention.

[0472] The device (30) can generate a feature vector including the coordinates of a target component, placement direction, size, attribute value, distance relationship with surrounding components, collision probability index, editing index, user editing intention index, and operation pattern information over time to configure input data to be provided to an artificial intelligence model.

[0473] The device (30) can process such input data by normalizing it or reconstructing it into a sequence form so that the model can simultaneously interpret structural relationships and the user's operation intentions, and the input data can be provided in a multidimensional data format that reflects not only a single component but also past editing history and spatial context on the screen.

[0474] Through this, the device (30) can support the artificial intelligence model in making a more accurate judgment by simultaneously considering the internal properties of the target component, the constraints of surrounding components, and the user behavior pattern.

[0475] The device (30) can process the output data of the artificial intelligence model so that it can be directly used in the component editing process.

[0476] The device (30) can produce an editing result as an output result of the model, such as the direction of movement, distance of movement, rotation angle, size correction value, recommended value for attribute adjustment, collision prevention relocation point, or alignment direction of the target component, and the output value may include one or more of individual numeric data, vector information, probability-based recommendation value, or ranking-based suggestion value.

[0477] The device (30) can calculate the reliability of the result value output by the model and provide it in the form of a candidate group that the user can select, or set it to automatically apply the result with the highest reliability first, and the structure of such output value is not limited to a specific data format.

[0478] This type of output processing method can contribute to improving the accuracy and efficiency of component editing without interfering with the user experience.

[0479] The device (30) can configure training data for an artificial intelligence model, perform a training process, or update a training model performed externally.

[0480] The device (30) can build a training dataset by collecting quantitative data as training data, including user operation history, instances of conflicts occurring between components, success or failure of editing results, screen zoom in / out patterns, component placement stability, and differences between user selection and model recommendation.

[0481] The device (30) can be configured to allow the model to progressively learn user behavior patterns and spatial constraints of components by applying supervised learning, unsupervised learning, reinforcement learning, or a combination thereof, and in the learning phase, the model accuracy can be improved by performing loss function optimization, model parameter updates, and cross-validation.

[0482] Additionally, the device (30) can periodically retrain the model by utilizing the actual user selection result as feedback data based on the time of saving the editing result, thereby enabling continuous performance improvement so that the model can adapt to various editing situations.

[0483] The device (30) may apply the calculated editing result directly to the user or provide it in a preview form before application. For example, the device (30) may temporarily move the position of a component based on the movement correction value calculated by the model and display the automatic correction result on the screen as a dotted line, shaded display, or transparent overlay for the user to check.

[0484] Additionally, the device (30) may provide a selectable UI element on the screen so that the user can accept the rotation angle or alignment direction recommended by the model, and may store the state in an internal buffer so that it can be immediately restored to the original edited state if the user rejects the edit correction.

[0485] This preview-based application method can be utilized to prevent conflicts between the user and the automatic correction system, and to provide accurate results while maintaining the user's editing flow.

[0486] Additionally, the device (30) can present a subsequent adjustment proposal requesting the relocation of surrounding components after applying the automatic correction result, which can provide high efficiency in a complex floor plan editing environment.

[0487] The device (30) can provide the effect of improving the overall editing quality of the plan view based on the calculated editing results.

[0488] The device (30) can prevent unnecessary collisions between components through a model-based editing correction function, reduce errors caused by irregular placement or inefficient editing, and automatically compensate for instability in user operation.

[0489] Additionally, the device (30) can apply a continuous learning function to enable the model to adaptively make decisions according to various editing situations, and can update the model's internal parameters by analyzing the difference between the editing result actually selected by the user and the editing result provided by the model.

[0490] At this time, the artificial intelligence model can derive editing factors by analyzing the frequency and scope of influence of position movement, orientation rotation, attribute change requests, and screen zoom in and out inputs occurring during the component editing process, and set editing weights based on the influence of the editing factors.

[0491] The device (30) can generate training data based on set editing weights and editing priority indices.

[0492] The device (30) can generate a set of input features for configuring training data by combining an editing weight and an editing priority index.

[0493] The device (30) can quantify editing-related characteristics such as the amount of change in position of a component, the amount of change in rotation, whether an attribute adjustment request is made, the risk of interference with adjacent components, user operation patterns, and the stability of placement within the screen, reflect them in an editing weight, and compose them into a single integrated input vector together with an editing priority index.

[0494] These integrated input vectors can be composed of a multidimensional data structure including component identifiers, time information, and spatial positional relationships, and the device (30) can preprocess them into a format suitable for learning an artificial intelligence model. Through this, the model can learn by considering not only simple operation information but also the purpose of editing, the necessity of editing, and the interaction between components.

[0495] The device (30) may configure correct answer labels or evaluation criteria for editing results to generate training data. For example, the device (30) may set the final editing result selected by the user, whether the automatic correction result is adopted, whether a collision occurs, and the result of judging the stability of the screen layout as target values ​​and use them as labels necessary for model training.

[0496] The device (30) can calculate error information based on the difference between the user's actual operation flow and the correction result calculated by the model, and can configure input-output pairs so that the model can learn the influence of the editing weight and editing priority index on the result.

[0497] Additionally, the device (30) may include data from normal editing processes as well as data from cases where the user causes errors as training data, but is not limited thereto, and may build a dataset including various editing situations to enhance the generalization ability of the model.

[0498] The artificial intelligence model can be trained to output at least one editing suggestion result among improving the position alignment of components, adjusting placement to prevent collisions, and automatically correcting user editing patterns according to preset criteria based on training data.

[0499] The device (30) can structure training data and set up a training procedure so that the artificial intelligence model can improve the alignment of component positions, adjust the placement to prevent collisions, and perform automatic correction based on user editing patterns.

[0500] The device (30) can construct input-output pairs including the relative coordinates of components, placement stability, collision risk, user operation pattern, editing priority index, and final editing result within the training data, and normalize them into a format that can be used in the model's training process.

[0501] Additionally, the device (30) can define a loss function based on component position error, the probability of collision, and the difference between the user's selection result and the model prediction, and apply a gradient descent-based optimization method to learn so that the model gradually converges to a target output value.

[0502] In this process, the device (30) can be designed to reflect detailed goals, such as improving alignment accuracy, maintaining spacing between components, and preserving user operation flow, in the weight adjustment within the model so that learning reflecting various editing situations can be performed.

[0503] The device (30) can select the structure of the model and repeatedly perform the learning process so that the artificial intelligence model can output at least one editing suggestion result according to the learned criteria.

[0504] The device (30) may apply a neural network structure to effectively interpret spatial relationships between components, and may use, for example, a sequence-based input processing structure, a spatial relationship analysis structure, or a multilayer perceptron structure, but is not limited thereto.

[0505] The device (30) can improve the accuracy of editing suggestions by evaluating the output of the model based on the success or failure of past editing cases during the learning process and updating the parameters of the model according to the evaluation result.

[0506] Additionally, the device (30) can continuously include new editing data in the learning process to reflect the diversity of user operations, thereby configuring the model to adapt to changes in user style, changes in the editing environment, and changes in component types to produce stable editing suggestion results.

[0507] Through the model learned in this way, the device (30) can provide editing suggestion results in real time, such as component alignment, collision prevention, and automatic editing correction based on user intent.

[0508] The editing suggestion result may refer to a recommended editing direction calculated by an artificial intelligence model by synthesizing the placement status of components, user operation history, and editing priority index. For example, it may include, but is not limited to, alignment position information to move the target component to a more balanced coordinate, fine-tuning values ​​to prevent interference with surrounding components, recommended rotation angles reflecting user operation patterns, automatic magnification ratios to improve screen readability, alternative placement paths when component collisions are expected, or attribute adjustment values ​​reflecting recurring user editing habits.

[0509] The device (30) inputs at least some of the target component selection time, movement time, rotation time, attribute change time, screen zoom time, component switching time, component addition time and editing result saving time as time variables, and can learn the temporal relationships that affect component editing operations by analyzing the interrelationships between the time variables.

[0510] A time point variable refers to time information used to identify the time at which operations such as selection, movement, rotation, attribute change, screen zooming, component switching, component addition, and saving of editing results occurred during the component editing process; for example, it may include, but is not limited to, timestamps of the time at which each operation occurred, time intervals between operations, or the order of operations.

[0511] The device (30) can input at least some of the selection time of a target component, movement time, rotation time, attribute change time, screen zoom time, component switching time, component addition time and editing result saving time as time variables.

[0512] The device (30) records timestamp information corresponding to the time when each operation occurs and can construct time series structure data including the time interval of consecutive operations that occurred on the same component or related peripheral components, the order of operations, the accumulated time of operations, and whether continuous input is present.

[0513] In addition, the device (30) does not store time variables for each type of operation independently, but rather records the relative time differences between operations together, such as the interval between the selection time and the movement time, the interval between the movement time and the rotation time, and the interval between the attribute change time and the screen zoom time, thereby generating structured data that reflects the interconnectedness between operations rather than simple time information.

[0514] These time-time variables are subsequently used as input characteristics for artificial intelligence models and can be utilized as foundational data to estimate the temporal patterns of component editing operations.

[0515] The device (30) can learn the temporal relationships that affect component editing operations by analyzing the interrelationships between input time variables.

[0516] For example, the device (30) can determine that a precise placement operation is being performed if a rotation point occurs at a very short time interval immediately after the movement point, and can analyze it as a screen concentration pattern for fine attribute adjustment if the screen magnification point is close to the attribute change point.

[0517] Additionally, the device (30) can infer editing tendencies by component or user by identifying a cyclic pattern of operation points that appear repeatedly in a specific component, namely a temporal structure that repeats in the order of selection-movement-rotation-attribute change.

[0518] Based on the results of this temporal relationship analysis, the device (30) can adjust the weights of the learning inputs provided to the artificial intelligence model or reflect the time element in the automatic correction process for component placement to perform more stable optimization.

[0519] Therefore, the device (30) can learn continuous editing behavior patterns based on time variables and perform advanced editing control that reflects the natural flow of component placement.

[0520] The device (30) can increase the editing correction intensity by determining that the shorter the time interval between the point in time when the target component is moved and the point in time when screen enlargement occurs, the more precise control is required, and setting the section where user operation is concentrated as the editing caution section.

[0521] The device (30) can calculate the time interval between when the target component is moved and when the screen magnification occurs, and if the interval is measured to be shorter than a certain reference value, it can determine that the user is attempting fine manipulation.

[0522] To this end, the device (30) records the time of occurrence of the movement operation and the time of occurrence of the enlargement operation as timestamps, calculates the time difference between the two times, and applies a threshold determination algorithm that classifies the situation as requiring precise control of the user's operation as the smaller the time difference.

[0523] The device (30) can increase the editing weight applied to the target component based on this judgment result, and further finely adjust the movement unit, rotation unit, or attribute correction unit based on the increased editing weight to generate a control result that reflects the fine user intent.

[0524] Additionally, the device (30) can analyze whether repetitive operations on the same component occur intensively within a specific time interval in the user's input pattern and set that interval as an editing caution interval.

[0525] To this end, the device (30) can divide the time axis into segments based on the time of operation occurrence, the type of operation, and the operation density, and identify segments where concentrated operation is detected by analyzing the operation frequency, operation intensity, or whether there is interference with adjacent components in the divided segments.

[0526] The device (30) can prevent mis-editing that may occur due to repeated user operations by increasing the editing correction strength in the identified editing caution section and using the increased correction strength to stabilize the expected movement path of the component, limit the rotation angle range, or adjust the sensitivity of attribute changes.

[0527] Editing weight refers to a coefficient that determines the sensitivity or importance of editing operations applied to a target component by reflecting the user's operation intent, the precision of operation patterns, and the degree of requirement for component changes.

[0528] For example, editing weights may include, but are not limited to, the amount of change in position of a component, the amount of change in rotation, whether an attribute change request has occurred, and the result of a time interval-based precision control decision.

[0529] The editing correction strength refers to a correction coefficient that determines how finely or significantly the device (30) adjusts the component movement unit, rotation unit, resizing unit, attribute change unit, etc., by reflecting the editing weight and user editing intention index.

[0530] For example, the editing correction strength may include, but is not limited to, a movement correction scale, a rotation angle fixing strength, and a precision adjustment value for attribute changes.

[0531] The editing caution period is a time period in which a user's repetitive operation on the same component, a large change in operation intensity, or an intensive editing pattern occurs within a specific time range, and refers to a time area in which the device (30) must perform priority correction and stabilization processing.

[0532] For example, the editing caution section may include, but is not limited to, analysis results regarding the frequency of movement operations, the density of rotation operations, and whether there is repeated input within a specific range.

[0533] Specifically, the device (30) can execute a correction strength control algorithm that automatically adjusts the correction strength using an editing weight and a user editing intention index as input variables.

[0534] To this end, the device (30) normalizes the editing weight and the user editing intention index, respectively, and calculates a correction strength index by calculating a weighted sum or a non-linear combination of the two values, and can dynamically change the level of fineness of the movement unit, rotation unit, scaling unit and attribute change unit according to the calculated correction strength index.

[0535] For example, if both the editing weight and the user editing intent index are high, the correction strength index can be increased. Depending on the increased index, the movement correction unit can be set smaller or the rotation angle can be limited to a finer unit, and the sensitivity to attribute changes can be increased to improve responsiveness to user operations.

[0536] Additionally, the device (30) can further increase the correction strength index in the editing attention section and strengthen stabilization processing, such as predicting the movement path of a component, minimizing the possibility of collision, or limiting the range of attribute changes, in order to provide stable operation results.

[0537] The device (30) can trace back the component placement pattern on the plan view based on past editing history to find sections where editing errors may occur.

[0538] The device (30) can analyze the causal relationships between editing actions by arranging the selection point, movement path, rotation value, attribute change history, and whether a revert request was made for the components included in the past editing history in chronological order.

[0539] To this end, the device (30) converts each operation unit of the editing history into time-series data in the form of a vector and can infer a component placement pattern based on the magnitude of the change, the direction of the change, and whether it occurs repeatedly in a specific section.

[0540] The device (30) can compare the difference between the inferred placement pattern and the actual final placement information to identify points where irregular movement, excessive rotation, and attempts to change abnormal attributes are concentrated as candidate sections where editing errors are likely to occur.

[0541] Additionally, the device (30) may determine that a rapid decrease in the time interval between points or a repetitive modification of the same component exceeds a certain number of times is an error sign and include it in the search range.

[0542] The device (30) can define criteria for determining the possibility of an editing error based on the amount of change in movement of a component, the amount of change in rotation, the number of repetitions of the operation, the time interval between operations, whether a revert request occurs, and the degree of abrupt change in placement immediately after a specific operation.

[0543] For example, the device (30) may define a condition with a high probability of error as a pattern in which movement operations in opposite directions are repeated at short time intervals for the same component, a rotation value is continuously attempted within a certain range but is not finally applied, or a situation in which reversal requests accumulate near the same point in time.

[0544] Additionally, the device (30) may include a condition with a high probability of error where the placement of components is not stably determined even though interference with adjacent components occurs repeatedly, and such criteria may be expanded or adjusted according to the type of component, placement density, and user operation characteristics, but are not limited thereto.

[0545] The device (30) can apply a backtracking algorithm that analyzes the editing history data in reverse chronological order to search for sections where editing errors may occur.

[0546] The device (30) can identify operation sections with a high probability of error by arranging each operation history along a time axis and comparing the difference between the final stored batch state and past operation steps to track in reverse the unnecessary or unintended editing operations.

[0547] For example, the device (30) can detect movement, rotation, and attribute change operations in reverse order that caused unnecessary position deviations in the final placement state, were immediately canceled, or were reversed, and set them as candidate nodes for error occurrence.

[0548] Additionally, the device (30) can designate points with a high probability of error as intensive search sections by overlapping the repetitive operation patterns of the same component during time-reverse path analysis, and, if necessary, can adjust the backtracking sensitivity in conjunction with the user editing intention index.

[0549] The device (30) can convert the coordinate change, rotation value change, attribute change history, and relative position change with adjacent components of each component into a time series vector to infer a component placement pattern, and analyze the pattern based on the direction of change, the continuity of the amount of change, and whether there is repeated operation in a specific section.

[0550] The device (30) can compare these time series vectors to infer patterns such as a component continuously moving in a specific direction, a pattern of repeatedly attempting a specific arrangement form, and a pattern of operation failures concentrated at a specific location, thereby distinguishing between the normal editing tendency and the deviant editing tendency of the component.

[0551] Additionally, the device (30) can compare the inferred pattern with actual final placement information to classify sections where pattern consistency is poor or abnormal changes occur as error detection candidates, and if necessary, can increase the precision of pattern analysis by combining it with an editing priority index and a user editing intention index.

[0552] The device (30) can trace back the sections where a return request to the same location was repeated in the past editing history, classify the corresponding points as sections with a possibility of error, and simulate changes in the arrangement of components in the corresponding sections to additionally detect patterns that conflict with the user's intention.

[0553] For example, a case where movement in the opposite direction is repeated immediately after a movement operation can be determined as an abnormal editing pattern, or a case where a specific rotation angle is repeatedly attempted but is not finally saved can be determined as a pattern with a high probability of error.

[0554] The device (30) can generate a section with potential for error as a map-shaped error risk area based on these detection results, and apply it in a way that automatically stabilizes the area or strengthens the correction strength during a subsequent editing process.

[0555] The device (30) can perform continuous learning that reflects the actual user modification results based on the time of saving the editing results.

[0556] The device (30) can convert the component placement state, attribute state, and final editing path determined by the user based on the time of saving the editing result into training data and use it for continuous learning.

[0557] The device (30) can normalize the position of the target component at the time of storage, rotation value, size setting, attribute value, and spatial relationship with adjacent components into a vector form, and generate input features by configuring the operation history (number of movement operations, change in rotation angle, time interval between operations, whether a revert request was made, etc.) that occurred up to immediately before storage into a time series structure.

[0558] The device (30) can learn to match the model’s editing suggestion method with the actual user selection result by matching the “editing state finally adopted by the user” with these input features as the correct answer label.

[0559] Through this, the device (30) can reflect the layout features that the user ultimately preferred, and subsequently adjust the editing suggestion results of similar situations to match the user's preferences.

[0560] The device (30) can analyze the difference between the time of saving the editing result during the continuous learning process, evaluate the consistency between the user's editing intention and the actual result, and adjust the strength of the model's weight update based on this.

[0561] The device (30) can automatically adjust the weights to increase the importance of the operation pattern when a specific operation is repeatedly reflected in the stored result, and conversely, to decrease the importance of the related feature when the user attempts multiple operations but they are not reflected in the final result.

[0562] In addition, the device (30) can perform stable learning by calculating the error between the stored result and the editing suggestion result output by the model, increasing the learning rate in the section where the error is large, and decreasing the learning rate in the section where the error is small.

[0563] Through this continuous learning structure, the device (30) can gradually learn user-specific editing styles, preferences, and stable placement patterns, thereby improving system performance so that user-centered precise editing correction and placement suggestions can be made over time.

[0564] The device (30) can provide the adjustment position, recommended placement direction, or editing correction result of the target component to the interior design screen based on the learning result of the artificial intelligence model.

[0565] The device (30) can convert the output value of the artificial intelligence model into structured editing suggestion information and reflect it in real time on the interior design screen.

[0566] The device (30) can convert the adjustment position calculated by the model into coordinate system-based absolute or relative position information and convert the recommended placement direction into a rotation angle or direction vector to map to the target component.

[0567] In addition, the device (30) can calculate an adjustment value by comparing the editing correction result presented by the model with the existing layout state, and display the expected layout shape with the adjustment value applied on the screen in a preview form so that the user can make an immediate judgment.

[0568] To this end, the device (30) can evaluate whether the adjustment position is applied, the range of direction change, the impact of attribute change, etc., and display to the user in the form of a visually distinguishable highlight, translucent layer, or guideline.

[0569] The device (30) determines whether to apply the final version based on user response, and saves the result of the user accepting or rejecting it as feedback information to improve the performance of the model's editing suggestions in the future.

[0570] When a user selects a proposed adjustment position or editing correction, the device (30) can immediately reflect the result in the actual component placement and automatically recalculate the change in the relationship with adjacent components that occurs after placement and update it on the screen.

[0571] Conversely, if the user rejects the suggestion, the device (30) can analyze the selection pattern without directly accessing the reason for rejection and adjust the internal evaluation value to lower the priority of the corresponding editing suggestion under similar conditions.

[0572] That is, the device (30) can calculate an editing index and a user editing intention index based on component placement information and user operation information, and input these into a learned artificial intelligence model to provide an editing result for the target component.

[0573] The device (30) can quantitatively interpret complex editing situations by combining actual operational characteristics of the design screen, such as the amount of change in position of the component, the amount of change in rotation, the request for attribute change, and the possibility of interference with adjacent components, with user behavior information such as the emphasis expression, degree of repetition, continuous input pattern, and intensive editing range of user operations.

[0574] The device (30) structures these analysis results into an editing index and a user editing intention index, and evaluates the editing priority based on the indices, thereby deriving an optimized editing strategy for each situation beyond the level of simple coordinate movement or placement adjustment.

[0575] Additionally, the device (30) can learn the interrelationships of time-based time-point variables, trace back past editing history to find sections with potential errors, and continuously reflect actual user modification results to provide editing results specialized for the user, space, and context.

[0576] Unlike existing fixed rule-based editing methods, this configuration enables intuitive and stable editing correction by comprehensively considering screen layout, user patterns, and relationships between components, and allows for the implementation of design control technology capable of responding to various editing environments and user editing tendencies.

[0577] Meanwhile, the device (30) can perform training of an artificial intelligence model to derive an updated interior design screen in the process of storing changed component information and providing an updated interior design screen. At this time, a detailed explanation of the process of performing training of the artificial intelligence model will be described later with reference to FIG. 7.

[0578] FIG. 7 is a flowchart illustrating the process of storing modified component information and providing an updated interior design screen according to one embodiment.

[0579] Referring to FIG. 7, first in step S701, the device (30) can extract editing characteristic keywords and spatial response characteristic keywords.

[0580] Editing characteristic keywords can refer to units of information that summarize the key features of the component editing process by reflecting both the spatial arrangement characteristics of components within the floor plan and user editing tendencies.

[0581] For example, editing characteristic keywords may include, but are not limited to, keywords such as layout balance, risk of interference between components, precision layout requirements, repetitive editing intensity, attribute change sensitivity, and screen intensive operation.

[0582] Specifically, the device (30) can analyze editing activity information including component selection records, component movement records, component rotation records, component attribute change records, and screen operation history performed by the user to extract editing characteristic keywords that reflect the spatial arrangement characteristics of components within the plan view and the user's editing tendencies.

[0583] The device (30) can normalize editing activity information by sorting component selection records, component movement records, component rotation records, component attribute change records, and screen operation history collected from the user's terminal (10) in chronological order, and connecting each record based on a component identifier to determine which component each record was applied to.

[0584] The device (30) can calculate the distribution of movement distances of components, patterns of changes in rotation angles, frequency of occurrence of attribute modifications, frequency of use of screen zooming in and out, and whether repetitive operations are performed on specific components from normalized editing activity information, and can extract spatial editing features such as the possibility of interference between components, the degree of balance of placement, the degree of need for precise control, and the presence or absence of a user-focused editing range based on this information.

[0585] Through this, the device (30) can move beyond simply listing operation details and construct a structure capable of interpreting the semantic context of the operation and the degree of editing influence.

[0586] The device (30) can generate characteristic information reflecting the editing tendency of each user by applying a user editing tendency analysis procedure to evaluate the intensity, repeatability, and continued intention of user operation to the extracted spatial editing features.

[0587] For example, the device (30) can recognize a record of repeated movement operations for a specific component with high intentionality, interpret a record in which a rotation angle occurs continuously within a certain range as an intention for precise placement, and determine a point in time where the screen magnification frequency is concentrated as a section requiring precise editing.

[0588] Based on these analysis results, the device (30) derives editing characteristic keywords that represent both spatial structural characteristics and user behavioral characteristics, and these keywords can be used in subsequent steps of calculating editing priority, suggesting automatic corrections, and generating artificial intelligence model training data.

[0589] In order to derive editing characteristic keywords based on editing activity information, the device (30) first arranges records related to the movement, rotation, attribute change, and screen operation of components in chronological order and can generate operation units by grouping consecutive operations on the same component.

[0590] Subsequently, the device (30) can calculate quantitative indicators such as the distance traveled, the change in rotation angle, the frequency of attribute changes, and the usage pattern of zooming in and out included in each operation unit, and analyze the change in distance between adjacent components, the repeatability of operations, and whether there is concentrated editing at a specific location to quantify spatial arrangement characteristics and user behavior characteristics.

[0591] The device (30) can evaluate the correlation, variation pattern, and influence between the feature values ​​calculated in this way to extract semantically distinct attributes, and can derive editing characteristic keywords by summarizing or classifying them according to specific criteria.

[0592] The keyword for spatial response characteristics refers to a unit of information that represents a user's visual perception tendencies and spatial manipulation responsiveness through changes in positional relationships between components and user operation patterns.

[0593] Keywords for spatial response characteristics may include, for example, collision avoidance tendency keywords, spacing sensitivity keywords, relative direction adjustment tendency keywords, zoom-based precision manipulation tendency keywords, repetitive selection concentration keywords, spatial attention concentration keywords, but are not limited thereto.

[0594] According to one embodiment, the device (30) can model the operation flow by first arranging the coordinates, size, rotation value of each component and the placement state of adjacent components in chronological order to comprehensively analyze interaction information including whether there is interference between components, whether a placement conflict occurs, changes in spacing before and after editing, changes in relative direction between components, screen zoom in and out timing, and the repetition pattern of a selection point.

[0595] The device (30) can determine the sensitivity of spatial manipulation by collecting the amount of change in minimum distance between components, whether a collision condition occurs, a pattern of repeated operation in a specific direction, and the frequency of selection in an enlarged state based on this operation flow, and by extracting the operation context that appears repeatedly by the same user.

[0596] Additionally, the device (30) can quantify the tendency of components to interfere or collide with each other during the editing process to determine the stability of component placement, the tendency to maintain spacing, and the tendency to adjust relative directions.

[0597] The device (30) can calculate characteristics related to the user's visual perception method and operation difficulty based on the spatial changes and operation patterns collected in this way, and extract semantic units by applying weights such as the magnitude of the change amount, the frequency of repetition, whether there is intensive operation at a specific point in time, the necessity of operation in an enlarged state, and the tendency to maintain distance between components.

[0598] Next, the device (30) can derive spatial response characteristic keywords including characteristics such as visual responsiveness, spacing maintenance tendency, collision avoidance tendency, and direction adjustment sensitivity by analyzing the correlation of each semantic unit and the influence of user behavior.

[0599] These keywords can be utilized as input variables for an artificial intelligence model by reflecting user editing trends, and can contribute to enabling the model to generate optimal suggestions that consider fine-tuning requirements on floor plans, field-of-sight-based manipulation patterns, and spatial attention.

[0600] In step S702, the device (30) can identify a first candidate combination.

[0601] Specifically, the device (30) can calculate the semantic similarity between an editing characteristic keyword and a spatial response characteristic keyword, and identify combinations where the similarity is greater than or equal to a preset standard as a first candidate combination. At this time, the preset standard may be set differently depending on the embodiment.

[0602] In order to calculate the semantic similarity between editing characteristic keywords and spatial response characteristic keywords, the device (30) can first convert the semantic attributes, occurrence conditions, range of influence, and operation pattern features represented by each keyword into numerical characteristic vectors.

[0603] The device (30) can express the frequency of operation, magnitude of change, and tendency to focus on specific components included in editing characteristic keywords, and the tendency to avoid collisions, sensitivity to maintaining spacing, and tendency to perform precise operation based on enlargement included in spatial response characteristic keywords, on a vector space of the same standard, and calculate the semantic proximity between the two characteristics by comparing the correlation of each dimension, the degree of agreement of the direction of change, and whether the pattern occurs simultaneously.

[0604] In this calculation process, the device (30) may include, but is not limited to, Euclidean distance, cosine similarity, or time-based pattern matching techniques.

[0605] Additionally, the device (30) can improve the precision of similarity calculation by reflecting the synchronization of the timing of occurrence between keywords, the repetition of the operation pattern, and the commonality of specific direction or interval change as weights.

[0606] The device (30) can evaluate the calculated semantic similarity value and identify a keyword combination whose similarity is greater than or equal to a preset standard as a first candidate combination.

[0607] When setting a reference value, the device (30) can set an appropriate threshold value by considering the distribution of user editing history, the frequency of occurrence of specific keyword combinations, the possibility of linked operation errors, and the level of editing automation required by the system, and the reference can be composed of a static numeric value or an adaptive value.

[0608] For example, the device (30) may preferentially include combinations with high semantic similarity and high simultaneous occurrence rates of operation patterns in the first candidate combination, and conversely, keyword combinations with low similarity or unclear correlation may be excluded from the candidates.

[0609] The device (30) can structure and store the first candidate combination derived in this way so that it can be used for selecting training data in a subsequent step, configuring model input variables, or initializing weights of an editing automation algorithm.

[0610] In step S703, the device (30) can identify a second candidate combination.

[0611] Specifically, the device (30) can identify a combination among the first candidate combinations that satisfies preset conditions based on the distribution of time points between edit records, diversity of component types, and consistency of arrangement changes as a second candidate combination.

[0612] The device (30) can evaluate whether the timestamps of the operation occurrences are evenly distributed by analyzing the time distribution of the edit record for each keyword combination constituting the first candidate combination.

[0613] To this end, the device (30) can determine the temporal diversity of the combination by normalizing the position on the time axis where each keyword occurred to calculate the variance of the operation interval, the concentration at a specific point in time, and the duration of the pattern, and by comparing these time series characteristics.

[0614] Next, the device (30) can collect the types of components associated with each keyword to verify the diversity of component types included in the combination, and evaluate the generalizability of the combination by examining whether it is biased only toward similar types.

[0615] In addition, the device (30) can determine whether the combination contains a stable pattern by comparing whether the editing results within the same combination maintain a certain regularity in the direction of position change, the direction of rotation, the tendency of spacing adjustment, and the pattern of attribute change in order to determine the consistency of the arrangement change.

[0616] The device (30) can identify the corresponding keyword combination as a second candidate combination based on the analysis results, if the time distribution of the editing record is balanced, the component types appear in a diverse range, and the consistency of the arrangement change is maintained above a certain standard.

[0617] According to one embodiment, the device (30) can arrange each editing record constituting the first candidate combination along the time axis and check whether the distribution of the time points is balanced by analyzing the distribution of the operation occurrence interval, the concentration of specific time points, and the temporal continuity, and at the same time, evaluate type diversity by classifying the types of components by referring to the coordinates, size, direction, and attribute information of the components included in the combination, and determine the consistency of the arrangement change by analyzing whether the arrangement change maintains a certain regularity by comparing the positional movement direction, rotation change pattern, and spacing maintenance or adjustment tendency that occurred in each editing result.

[0618] Pre-set conditions may refer, for example, to a combination where the variance of the time point distribution is below a threshold value, the component type diversity index is above a threshold, and the degree of agreement of the batch change pattern satisfies a threshold value.

[0619] The criteria for selecting the second candidate combination may consist of quantitative indicators, such as, for example, a time-varying variance threshold, a component type diversity index, and a score for the consistency of batch change patterns, but are not limited thereto.

[0620] The device (30) may exclude from the second candidate combinations combinations that do not meet these criteria or are limited to specific editing situations, and may preferentially include combinations that show a tendency to be reproducible in various editing environments.

[0621] The device (30) can store and manage the second candidate combination identified in this way so that it can be used as input for the contribution evaluation, balance verification, and final training data selection process in subsequent steps.

[0622] In step S704, the device (30) can calculate a combination balance score.

[0623] For each keyword combination included in the second candidate combination, the device (30) can calculate a contribution score by calculating the difference in cross-validation accuracy of the design screen correction performance in the state where the combination is included in the learning and the state where it is not included.

[0624] The contribution score refers to a value that quantitatively indicates how much a specific keyword combination actually contributes to improving AI-based editing correction performance.

[0625] The device (30) can compare the design screen correction accuracy for two learning results by generating cases where the combination is included and excluded in the artificial intelligence model's training data configuration, respectively, in order to evaluate the extent to which each keyword combination included in the second candidate combination contributes to the actual editing automation performance.

[0626] To this end, the device (30) can generate two learning results with the same edit record set, the same model structure, and the same learning parameters applied, and calculate cross-validation accuracy by applying quantitative indicators such as position alignment accuracy, collision prevention success rate, and direction matching rate of the edit correction results to a verification dataset.

[0627] The device (30) determines that the calculated difference in accuracy reflects the influence of a specific keyword combination and can quantify the contribution of the combination based on whether the model's performance is more stable and shows improved results when the combination is included.

[0628] The device (30) can calculate a higher contribution score as the correction accuracy in cases including the combination is higher, the performance deviation in various editing situations is lower, and the effect of improving the stability and generalization ability of the model is greater.

[0629] The device (30) can also perform sensitivity and stability analysis for each combination during the accuracy comparison process. For example, some combinations may show performance improvement only in specific types of editing situations, while other combinations may provide consistent performance improvement under various editing conditions.

[0630] The device (30) can calculate a contribution score by comprehensively considering the scope of application of the combination, the magnitude of performance improvement, the risk of overfitting, and the degree of improvement in model stability based on these evaluation results.

[0631] Additionally, the device (30) may give a higher contribution score to combinations that have low performance deviation in various test cases and increase the generalization ability of the model, and give a relatively lower score to combinations that only affect specific points in time or specific component editing situations.

[0632] The calculated contribution score can be used for optimizing the structure of training data, extracting priority keywords, and initializing weights during model retraining.

[0633] Next, the device (30) can calculate a combination balance score based on the temporal balance between edit records within each candidate combination, the balance of the distribution of component types, the degree of bias in time-changes, and the stability of the edit history.

[0634] The combination balance score refers to a value that quantitatively indicates how balanced a candidate combination is in terms of temporal distribution, types of components, changes in timelines at each editing stage, and the stability of the editing history.

[0635] The device (30) can calculate a higher combination balance score as the temporal balance of the editing record increases, the distribution of component types becomes more uniform, the bias of the time change decreases, and the stability of the editing history increases.

[0636] The device (30) can first analyze the temporal balance of the editing records included in the combination to evaluate whether the candidate combination evenly reflects various editing situations.

[0637] To this end, the device (30) can calculate the temporal distribution balance by aligning the occurrence times of the edited records belonging to the combination, and quantifying the ratio of records concentrated within a certain interval, the gaps in consecutive time intervals, and the degree of bias in a specific time interval.

[0638] Additionally, the device (30) can measure the balance of component distribution by aggregating the frequency of each component type to evaluate the diversity of component types handled within the combination and checking whether there is a bias toward the same type. Through this analysis, the device (30) can provide basis data to determine whether a particular combination can represent the entire scene.

[0639] The device (30) can then evaluate the degree of bias of the time change included in the candidate combination and the stability of the editing history.

[0640] Specifically, the degree of viewpoint change bias can be calculated based on whether major events in each editing process, such as selection, movement, rotation, and attribute change, are excessively concentrated in a specific stage, and the stability of the editing history can be calculated by analyzing repetitive editing patterns for the same component, consistency of operation results, and the degree of abrupt fluctuation in user input.

[0641] The device (30) can determine whether a candidate combination has a structural balance suitable for use in model learning by evaluating the temporal balance, component distribution balance, degree of bias in time change, and editing history stability for each item and then applying weights to calculate an integrated score.

[0642] The combinational balance score calculated at this time is used as one of the final criteria for selecting training data, and can be utilized to prioritize the selection of data combinations that are unbiased and ensure generality.

[0643] In step S705, the device (30) can select the final training data.

[0644] Specifically, the device (30) can select the keyword combination having the highest combination evaluation score as the final training data of the artificial intelligence model based on a weighted sum calculated by applying preset weights to the contribution score and the combination balance score, respectively. At this time, the preset weights may be set differently depending on the embodiment.

[0645] The combination evaluation score refers to a value that quantitatively indicates how suitable a given keyword combination is for training an artificial intelligence model by weightedly integrating the contribution score and the combination balance score.

[0646] The device (30) can produce a higher combination evaluation score as the contribution score is higher, the combination balance score is higher, and the deviation between the two scores is smaller.

[0647] To this end, the device (30) first normalizes the contribution score for each combination to reflect the relative difference in contribution to the improvement of editing performance, and then normalizes the combination balance score according to the same standard to convert the balance level of the data structure into a comparable form.

[0648] Subsequently, the device (30) can calculate a combination evaluation score by applying a first weight corresponding to the contribution score and a second weight corresponding to the combination balance score, respectively, and adding the two values.

[0649] This weighted sum calculation method can be configured to reflect the two objectives of improving actual editing quality and ensuring data generality in a balanced manner, without being overly biased toward specific criteria.

[0650] The device (30) can compare the combination evaluation scores calculated for all candidate combinations and select the combination with the highest score as the final training data for the artificial intelligence model.

[0651] The device (30) determines that combinations with relatively high combination evaluation scores are likely to effectively reflect actual structural patterns and user editing behaviors, thereby inducing the artificial intelligence model to more accurately reproduce various user behaviors and spatial arrangement characteristics during the learning process.

[0652] That is, the device (30) can learn an artificial intelligence model to derive an updated interior design screen by analyzing editing activity information and interaction information to select a meaning-based keyword combination and configuring optimal learning data through performance verification and balance evaluation.

[0653] The device (30) can systematically analyze the history of selection, movement, rotation, and attribute change that constitute the entire user editing activity and the history of screen operation to extract editing characteristic keywords and spatial response characteristic keywords, derive candidate combinations based on the semantic association between the two keywords, and then comprehensively evaluate the performance contribution and data balance for each combination to construct optimal training data.

[0654] Through this, the device (30) performs advanced learning that reflects user behavior patterns and spatial arrangement structures simultaneously, rather than simply reproducing past inputs, thereby enabling precise design screen correction results that adapt to each user situation.

[0655] Additionally, the device (30) can improve model performance to stably reflect various editing scenarios through a data selection process that combines semantic-based analysis, cross-validation, and weighted integrated evaluation, which can contribute to implementing a high-efficiency editing support function that precisely reflects the relationships between complex components and user intent in the floor plan-based interior design process.

[0656] FIG. 8 is a flowchart for explaining a process of changing at least one of the position, size, direction, or attribute of a target component according to user operation in one embodiment.

[0657] Referring to FIG. 8, first, in step S801, the device (30) can collect an editing history including the time when the user selected a component in the plan view, the distance moved, the direction rotated, the frequency of attribute changes, and the screen operation pattern.

[0658] The device (30) can collect an editing history by recording all operation information that occurs in chronological order as the user selects, moves, rotates, or adjusts attributes of components in the plan view.

[0659] To this end, the device (30) can analyze in real time touch coordinates, drag vectors, rotation angle changes, attribute adjustment command inputs, and operation signals regarding screen movement, enlargement, and reduction transmitted from the user's terminal (10), and store the time at which each input occurred.

[0660] In addition, the device (30) can recognize specific values ​​such as the coordinates at the moment the selection of a component occurs, the identifier of the selected component, the length of the movement path, the amount of rotation change, and the type and number of attribute changes, and convert them into a standardized editing record.

[0661] This collection method can be designed to be reliably applied across various user terminal environments, input methods, and screen aspect ratios.

[0662] The device (30) can precisely record the number of times the user moved the plan view and the direction of movement, the amount of change in magnification when zooming in or out, and the frequency of repeatedly zooming in and observing a specific area in order to include screen operation patterns as part of the editing history.

[0663] Next, the device (30) can extract structural features of user editing behavior by analyzing contextual information such as the time interval between individual operations, whether they occur repeatedly, the concentration of a specific type of operation, and continuous operations occurring immediately after component selection.

[0664] In step S802, the device (30) can analyze user editing habit information reflecting component placement methods, movement direction preferences, repetitive rotation patterns, or attribute adjustment tendencies from the collected editing history.

[0665] User editing habit information may refer to placement methods, operation flows, and adjustment tendencies that appear repeatedly during the process of a user selecting, moving, rotating, or adjusting attributes of components in a plan view. For example, it may include, but is not limited to, information regarding preferred directions when moving components, repetitive patterns of rotation angles, tendencies to prioritize the application of specific attribute changes, or conditions for screen zooming in and out.

[0666] To this end, the device (30) can determine the tendency of the direction in which the user mainly places components by aggregating the magnitude and direction of the vector moved immediately after the component is selected, and can also analyze whether there is a tendency to align components based on a specific axis when placing components by comparing consecutive placement records.

[0667] Additionally, the device (30) can identify a component setting pattern preferred by the user by analyzing the conditions, amount of change, and order of operation in which a component size change or attribute change occurred.

[0668] This analysis can be performed by considering both temporal continuity and semantic relationships between inputs, rather than simply counting the number of operations.

[0669] The device (30) can generate a structured habit indicator by tracking the tendency to rotate a specific component multiple times in the same direction, the pattern of color and material changes applied repeatedly, and the method of adjusting attributes that appears only in specific situations, in order to include repetitive patterns such as rotation operations or attribute adjustments as user editing habit information.

[0670] In addition, the device (30) can identify contextual characteristics of the user editing method by analyzing the sequential relationships between operations, such as a pattern of rotating immediately after moving a component, or a pattern of enlargement operation following an attribute change.

[0671] In step S803, the device (30) can determine the editing weight to apply to component movement, rotation, alignment, and attribute change based on user editing habit information.

[0672] To this end, the device (30) analyzes indicators such as movement direction preference, rotation angle repetition pattern, attribute change frequency, and layout method consistency included in user editing habit information, and can quantify the influence each indicator has on the editing process.

[0673] For example, the device (30) can increase the movement weight so that the movement operation in that direction is reflected more naturally when the frequency of movement in a specific direction appears high during the movement record, and can set the rotation weight so that the rotation precision is automatically adjusted based on the angle when a repetitive change of a certain angle appears in the rotation operation.

[0674] The weights calculated in this way can be directly reflected in manipulation amount correction, operation unit size adjustment, application priority setting, etc., when each editing operation is performed.

[0675] Editing weights may refer to adjustment coefficients used to control the impact of each operation by reflecting user editing habits and context during the process of moving, rotating, aligning, and changing components and attributes.

[0676] The device (30) can apply not only simple frequency-based calculations but also a weight adjustment algorithm that considers user intent and editing context in the process of determining editing weights.

[0677] The device (30) can calculate the reliability of a habit by analyzing whether a specific editing habit appears continuously, the stability of the operation pattern repeated in the same component, and the relationship between the continuous occurrence of screen operation and editing operation, and can assign a higher weight to habits with high reliability.

[0678] In addition, the device (30) can readjust weights regardless of user habits in the event of a risk of placement conflict between components or reduced screen readability, thereby preventing excessive movement, rotation, and alignment operations.

[0679] According to one embodiment, the device (30) can calculate a higher editing weight as the frequency of movement in a specific direction is higher, the repeating rotation pattern of the same angle is more distinct, the attribute change occurs repeatedly, and the contextual consistency of the editing process is higher.

[0680] In step S804, the device (30) can adjust the amount of change of the target component or adjust the size of the automatic correction value by applying the determined editing weight.

[0681] The device (30) can first quantitatively calculate the amount of change in movement, the amount of change in rotation, the amount of change in attribute value, or the amount of change in magnification scale to adjust the amount of change in the target component by applying a determined editing weight, and calculate the corrected amount of change by multiplying each amount of change by an adjustment coefficient that reflects the editing weight.

[0682] The device (30) can recalculate the final movement distance, rotation angle, attribute change width, or display scale of the component based on the corrected change amount, and convert the change amount to reflect the user's editing habits and editing context, thereby enabling the user to more precisely implement the desired direction of operation.

[0683] Additionally, the device (30) can set the sensitivity high for operation types with a high editing weight and apply a reduced amount of change for operation types with a low weight, thereby providing a sophisticated editing experience that reflects the user's repetitive patterns and differences in operation difficulty.

[0684] The device (30) can variably control the correction strength of at least one of scale alignment correction, placement collision avoidance correction, precision rotation angle correction, or attribute balance correction by utilizing the determined editing weight as an input value for the automatic correction algorithm to adjust the magnitude of the automatic correction value.

[0685] The device (30) can be configured so that the correction result varies depending on the user's editing habits and editing context, even for the same editing task, by dynamically updating the minimum unit of the automatic correction value, the correction range, the correction threshold condition, and the correction priority in conjunction with the editing weight.

[0686] The device (30) can control the automatic correction process by applying the correction amount smoothly to maintain the continuity of the user operation flow, or by suppressing abrupt changes when necessary, so that the user's intention is not distorted due to excessive correction.

[0687] In addition, the device (30) can provide visual feedback to the user by reflecting the correction results in real time, thereby providing the effect of improving the predictability of the operation results and the accuracy of the editing.

[0688] That is, the device (30) can analyze user editing habits based on user editing history to set an editing weight, and apply the set editing weight to precisely control the position, size, direction, or attribute change of the target component.

[0689] The device (30) can extract user-specific operation patterns from various editing histories and reflect them as editing weights, thereby interpreting user intent more precisely during component movement, rotation, alignment, and attribute change processes and providing customized correction functions that reflect differences in operation difficulty or preference.

[0690] The device (30) can automatically adjust the amount of change or dynamically control the correction strength based on these editing weights, thereby generating natural results that reflect different editing contexts for each user even with the same operation, and thereby prevent distortion caused by excessive automatic correction and realize the results expected by the user with high accuracy.

[0691] The device (30) can implement an intelligent editing control system based on user behavior patterns through this, thereby providing much higher operability, predictability, and improved design quality than simple rule-based editing functions.

[0692] FIG. 9 is an example diagram of the configuration of a device (30) according to one embodiment.

[0693] A device (30) according to one embodiment includes a processor (31) and a memory (32). A device (30) according to one embodiment may be the server or terminal described above. The processor (31) may include at least one device described through FIGS. 1 to 8 or perform at least one method described through FIGS. 1 to 8. The memory (32) may store information related to the method described above or store a program in which the method described above is implemented. The memory (32) may be volatile memory or non-volatile memory.

[0694] The processor (31) can execute a program and control the device (30). The code of the program executed by the processor (31) can be stored in memory (32). The device (30) can be connected to an external device (e.g., a personal computer or a network) through an input / output device (not shown in the drawing) and exchange data.

[0695] The embodiments described above may be implemented as hardware components, software components, and / or combinations of hardware and software components. For example, the devices, methods, and components described in the embodiments may be implemented using one or more general-purpose or special-purpose computers, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing unit may execute an operating system (OS) and one or more software applications executed on said operating system. Additionally, the processing unit may access, store, manipulate, process, and generate data in response to the execution of the software. For ease of understanding, the processing unit may be described as being used as a single unit, but those skilled in the art will understand that the processing unit may include multiple processing elements and / or multiple types of processing elements. For example, the processing unit may include multiple processors or one processor and one controller. Additionally, other processing configurations, such as parallel processors, are also possible.

[0696] The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc., either alone or in combination. The program instructions recorded on the medium may be those specifically designed and configured for the embodiment, or they may be those known and available to those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes; optical recording media such as CD-ROMs and DVDs; magneto-optical media such as floptical disks; and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, and flash memory. Examples of program instructions include machine code, such as that generated by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc. The hardware devices described above may be configured to operate as one or more software modules to perform the operation of the embodiment, and vice versa.

[0697] Software may include computer programs, code, instructions, or a combination of one or more of these, and may configure a processing unit to operate as desired or command the processing unit independently or collectively. Software and / or data may be permanently or temporarily embodied in any type of machine, component, physical device, virtual equipment, computer storage medium or device, or transmitted signal wave so as to be interpreted by the processing unit or to provide instructions or data to the processing unit. Software may be distributed over networked computer systems and may be stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.

[0698] Although the embodiments have been described above with reference to the limited drawings, those skilled in the art can apply various technical modifications and variations based on the above. For example, suitable results may be achieved even if the described techniques are performed in a different order than described, and / or if the components of the described system, structure, device, circuit, etc. are combined or assembled in a form different from described, or replaced or substituted by other components or equivalents.

[0699] Therefore, other implementations, other embodiments, and equivalents to the claims also fall within the scope of the claims set forth below.

Claims

Claim 1 An interior design method using floor plan-based precision component selection and editing control performed by a device, comprising: a step of generating or receiving and displaying a floor plan; a step of determining a target component among the components included in the floor plan based on a user input point; a step of displaying the determined target component at a reference location and setting reference information for component selection and switching; and a step of changing at least one of the position, size, direction, and attribute of the target component according to a preset control unit based on user operation input. The method includes the step of storing changed component information and providing an updated interior design screen, and the step of changing the location, size, direction, and attributes of the target component comprises: collecting placement information of components included in a floor plan to verify the coordinates, placement direction, adjacency relationship, and attribute information of each component; collecting input information related to user operation to verify the input point, operation type, operation duration, screen movement history, and zoom in / out operation history; generating interrelationship data by matching the collected placement information and input information based on component identifiers and operation timing; determining the editing index of the component by verifying the amount of position change, amount of rotation change, whether a request for attribute change was made, and the possibility of interference with adjacent components from the interrelationship data; determining the user editing intention index by analyzing the highlight expressions, whether repetitive operation, whether continuous input within a specific operation range, and the intensive editing pattern for the target component appearing in the user input; calculating the editing priority index of the target component based on the editing index and the user editing intention index; and inputting the editing priority index into a pre-trained artificial intelligence model to produce an editing result for the target component, wherein the artificial intelligence model includes the position movement and direction occurring during the component editing process By analyzing the frequency and scope of influence of rotation, attribute change requests, and screen zoom in and out inputs, editing factors are derived, andBased on the influence of the aforementioned editing factors, an editing weight is set; training data is generated based on the set editing weight and editing priority index; and based on the training data, at least one editing suggestion result is output according to preset criteria, such as improvement of component position alignment, collision prevention placement adjustment, and automatic correction of user editing patterns; at least some of the target component selection point, movement point, rotation point, attribute change point, screen zoom point, component switching point, component addition point, and editing result saving point are input as time point variables; the interrelationship between the above time point variables is analyzed to learn the temporal relationship affecting component editing operations; the editing weight is evaluated higher by determining that precise control is required when the time interval between the point where the target component is moved and the point where screen zoom occurs is shorter; the editing correction intensity is increased by setting the section where user operation is concentrated as an editing caution section; the component placement pattern on the floor plan is traced back based on past editing history to search for sections where editing errors are likely to occur; continuous learning is performed reflecting actual user modification results based on the editing result saving point; and based on the training results of the above artificial intelligence model, the adjustment position of the target component, recommended placement direction, or editing correction result is the interior Interior design method using floor plan-based precision component selection and editing control, characterized by providing on a design screen. Claim 2 In claim 1, the step of determining the target component includes: determining whether the user's input point is included in the display area of ​​the component; if the input point is not included in the display area of ​​any component, setting a search area centered on the input point; and determining the target component according to selection criteria based on distance information between the center position of each component located within the search area and the input point; the step of displaying the target component at a reference position and setting reference information includes: aligning and displaying the determined target component at a reference position on the screen; setting tracking information so that the reference position is maintained according to the movement or rotation of the target component; and setting reference information for component switching based on the relative positional relationship between the target component and surrounding components; the step of changing the position, size, direction, and attributes of the target component includes: analyzing the user's operation input and executing at least one of movement, rotation, resizing, and attribute change; correcting the corresponding operation according to a pre-set control unit when the target component moves or rotates; and magnifying the display of the target component or restoring the scale in response to user operation; and if a new component is placed during the change process, the reference position of the screen is a plan view The method includes the steps of converting to an upper placement point, creating a component selected by a user at the said placement point, and storing initial attribute information of the created component in the floor plan; if replacement, deletion, and display switching are requested during the change process, the method includes the steps of replacing the selected component with another component while maintaining its reference position, removing the component from the floor plan, and switching the display status of the component; and the step of storing the operation history that occurred during the component selection and editing process includes the step of storing the state prior to each operation.An interior design method using floor plan-based precision component selection and editing control, comprising the steps of restoring a saved state upon a user's revert request, and providing feedback to the user in one or more ways among screen pop-up, vibration, and voice upon completion of operation. Claim 3 delete