Sewing simulation method and device for clothing paper patterns
By adjusting the mesh properties of the 3D virtual garment and inserting virtual springs, the problem of simulating the sewing relationship and pleat shape changes between garment patterns was solved, achieving realism and accuracy in garment design.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- CLO VIRTUAL FASHION INC
- Filing Date
- 2023-12-14
- Publication Date
- 2026-07-14
Smart Images

Figure CN122397046A_ABST
Abstract
Description
Technical Field
[0001] The following embodiments relate to a sewing simulation method and apparatus for garment patterns. Background Technology
[0002] When clothing is worn, it may appear to be three-dimensional, but in reality, because clothing is made by assembling fabric pieces cut from two-dimensional patterns, it is closer to two-dimensional. Because the fabric used as clothing material is flexible, its shape can change in various ways depending on the wearer's body shape, movements, or sewing methods.
[0003] Typically, to represent realistic wrinkles in clothing, it's also necessary to simulate the sewing relationships between the garment's pattern pieces. For example, different parts of a garment may have different sewing methods, and the resulting wrinkle shapes can vary depending on the sewing method. Therefore, a simulation method that can realistically represent these sewing relationships may be required. Summary of the Invention
[0004] Technical methods for solving problems
[0005] A three-dimensional virtual clothing simulation method according to one embodiment may include the following steps: receiving a user's first selection input for sewing lines between patterns in a three-dimensional virtual clothing; receiving a second selection input from the user for at least one of ease sewing and stretch sewing, with respect to the sewing lines; adjusting the properties of a mesh of a sewing area adjacent to the sewing lines based on the user's second selection input; and simulating the three-dimensional virtual clothing with the adjusted mesh properties applied.
[0006] The step of adjusting the properties of the mesh may include the following steps: inserting one or more virtual springs into the sewing area of at least one of the patterns in the sewing area.
[0007] The virtual spring can adjust its ratio or stiffness in response to a third user input.
[0008] The sewing area adjacent to the sewing thread can be: the area in which the properties of the polygons adjacent to the virtual spring in the polygons included by the mesh change as the scale or stiffness of the virtual spring is adjusted.
[0009] The stitching can be described as: inserting the virtual spring or imparting elasticity to the stitching area of the paper pattern that includes a shorter stitch line, thereby causing the length of the stitch line to be biased towards the length of the shorter stitch line between the paper patterns.
[0010] The step of adjusting the properties of the grid may include the following steps: when a selection input for the stitching pattern is received in the user's second selection input, in response to a change in the properties of the polygon of the stitching area of the pattern including the shorter stitching line, the properties of the polygon of the stitching area of the remaining pattern in the pattern are changed.
[0011] The stretch sewing can be: inserting the virtual spring or imparting elasticity into the sewing area of the paper pattern including a longer sewing thread, so that the length of the sewing thread is biased towards the length of the longer sewing thread between the paper patterns.
[0012] The step of adjusting the properties of the grid may include the following steps: when a selection input for the stretch sewing is received in the user's second selection input, in response to a change in the properties of the polygon of the sewing area of the pattern including the longer sewing line, the properties of the polygon of the sewing area of the remaining pattern in the pattern are changed.
[0013] It may also include the following steps: in response to receiving a first selection input from the user for the sewing thread, displaying a property editor interface for adjusting the properties of the sewing thread.
[0014] It may also include the following steps: displaying on the attribute editor interface an interface for receiving a second selection input from the user for at least one of the ribbing and stretching sewing, and an interface for receiving adjustment input for the proportion or stiffness of the virtual spring; and displaying the sewing area adjacent to the sewing thread in response to the user's second selection input and the adjustment input for the proportion or stiffness of the virtual spring.
[0015] It may also include the following steps: receiving a fourth selection input from the user and generating a notch on the sewing line; and based on the notch, receiving a sewing generation input from the user for using the ease sewing or the stretch sewing for the sewing line.
[0016] It may also include the following steps: in response to receiving the sewing generation input, generating a combination of the stretch sewing or the tension sewing on the sewing line based on the position of the cut generated on the sewing line.
[0017] The simulation apparatus according to one embodiment may include: a memory including instructions; an output device displaying a user interface; and a processor configured to: receive a user's first selection input for a sewing line between patterns in a three-dimensional virtual garment, and for the sewing line, receive a second selection input from the user for at least one of ease sewing and stretch sewing, and based on the user's second selection input, adjust the properties of a mesh in a sewing area adjacent to the sewing line, and simulate the three-dimensional virtual garment with the adjusted mesh properties applied.
[0018] A server according to one embodiment may include: a communication unit configured to receive input from a terminal for performing a sewing simulation and to transmit the result of performing the sewing simulation; a memory including instructions; and a processor configured to: receive a user's first selection input for a sewing line between patterns in a three-dimensional virtual garment, and, for the sewing line, receive a user's second selection input for at least one of ease sewing and stretch sewing, and, based on the user's second selection input, adjust the properties of a mesh in a sewing area adjacent to the sewing line, and simulate the three-dimensional virtual garment with the adjusted mesh properties applied. Attached Figure Description
[0019] Figure 1 A flowchart illustrating a sewing simulation method according to one embodiment.
[0020] Figure 2 This is a schematic diagram illustrating a grid according to one embodiment.
[0021] Figures 3 to 5b This is a schematic diagram illustrating a sewing method according to one embodiment.
[0022] Figure 6a and Figure 6b This is a schematic diagram illustrating a sewing simulation according to one embodiment.
[0023] Figure 7a and Figure 7b This is a schematic diagram illustrating a sewing simulation according to one embodiment.
[0024] Figure 8a and Figure 8b This is a schematic diagram illustrating a user interface according to one embodiment.
[0025] Figure 9 This is a block diagram of an electronic device according to an embodiment. Detailed Implementation
[0026] The specific structural or functional descriptions of the embodiments are for illustrative purposes only, and various modifications can be made to the embodiments. Therefore, the embodiments are not limited or restricted to the specific form of disclosure, and all variations, equivalents, or substitutions of the embodiments are included within the scope of the claims.
[0027] In the description of various components, terms such as "first" or "second" may be used, which are used only to distinguish one component from another. For example, a first component may be referred to as a second component, and similarly, a second component may be referred to as a first component.
[0028] When a constituent element is described as being “connected” to another constituent element, it should be understood that the constituent element can be directly connected to or attached to the other constituent element, or that the other constituent element is “connected” to the constituent elements.
[0029] Unless otherwise specified in the text, singular expressions include plural meanings. In this specification, terms such as "comprising" or "having" are used to indicate the presence of the features, numbers, steps, operations, constituent elements, accessories, or combinations thereof described in the specification, and do not exclude the presence of one or more other features, numbers, steps, operations, constituent elements, accessories, or combinations thereof, or additional functions.
[0030] In this document, expressions such as “A or B”, “at least one of A and B”, “at least one of A or B”, “A, B or C”, “at least one of A, B and C”, and “at least one of A, B or C” can all refer to any one of the listed items, or all possible combinations thereof.
[0031] Unless otherwise defined, all terms used herein, including technical or scientific terms, shall have the ordinary meaning as understood by one of ordinary skill in the art. Terms that are commonly used and are identical to their dictionary definitions shall be understood to have a meaning consistent with the general content of the relevant art, and shall not be overly idealized or interpreted as having a formal meaning unless expressly stated in this application.
[0032] Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Furthermore, in the description with reference to the drawings, the same reference numerals are used for the same constituent elements, and repeated descriptions thereof are omitted.
[0033] Figure 1 A flowchart illustrating a sewing simulation method according to one embodiment.
[0034] For ease of explanation, it is described as follows: Figure 1 Steps 110 to 140 shown are by Figure 9 The electronic device 900 shown (e.g., an analog device) performs the operation. Furthermore, it can be combined with... Figure 2 Steps 110 to 140 are described in detail up to Figure 8. However, steps 110 to 140 can also be performed by any other suitable electronic device and in any suitable system.
[0035] also, Figure 1 The operations shown can be performed in the order and manner shown. However, without departing from the spirit and scope of the illustrated embodiments, the order of some operations may be changed, or some operations may be omitted. Figure 1 The operations shown can also be performed in parallel or simultaneously.
[0036] Processor (e.g.: Figure 9 The processor 930 can control the overall operation of the electronic device 900. In one embodiment, the processor 930 can be implemented as a plurality of logic gate arrays, or as a combination of a general-purpose microprocessor and a memory storing a program executable by the microprocessor. Furthermore, those skilled in the art to which this disclosure pertains will understand that it can also be implemented using other types of hardware.
[0037] Reference Figure 2 Three-dimensional (3D) clothing and two-dimensional (2D) patterns can be constructed as a mesh 200 comprising multiple polygons. According to an embodiment, the mesh 200 can be modeled in various ways. For example, the vertices of the polygons included in the mesh 200 can be point masses, and the edges of the polygons can be represented as springs with elasticity connecting their point masses. Therefore, a three-dimensional garment according to one embodiment can be modeled, for example, using a mass-spring model. Depending on the physical properties of the fabric used, the springs can have resistance values for stretching, shearing, and bending, respectively.
[0038] Alternatively, mesh 200 can also be modeled using a strain model. The polygons included in mesh 200 can be, for example, as follows: Figure 2 The mesh 200 can be modeled as a triangle or as a polygon with more than four sides, depending on the situation. When modeling a three-dimensional volume is required, the mesh 200 can also be modeled as a three-dimensional polyhedron.
[0039] The vertices of the polygons included in mesh 200 can move under external forces such as gravity and internal forces such as stretching, shearing, and bending. By calculating the forces applied to each vertex by measuring the external and internal forces, the displacement velocity and movement of each vertex can be obtained. The movement of clothing can be simulated by measuring the movement of the vertices of the polygons forming mesh 200 at each time step.
[0040] For example, when a garment composed of a polygonal mesh 200 is draped over a three-dimensional doll, a natural three-dimensional virtual garment based on the laws of physics can be realized. The vertices of the polygons included in the mesh 200 can move according to the reaction of external forces such as gravity and internal forces such as tension, shear, and bending. By calculating the forces applied to each vertex by calculating the external and internal forces, the movement speed and displacement of each vertex can be obtained. Furthermore, the movement of the virtual garment can be simulated by the movement of the polygonal vertices of the mesh 200 in each time step. When a two-dimensional pattern formed by the polygonal mesh 200 is draped over a three-dimensional doll, a natural three-dimensional virtual garment based on the laws of physics can be realized.
[0041] According to one embodiment, a three-dimensional garment may include at least one of the following: a virtual garment adapted to a user's body shape, a virtual garment for a three-dimensional virtual character, and a virtual garment for a three-dimensional virtual avatar.
[0042] Three-dimensional clothing can be generated by connecting or "sewing" the outlines of any two-dimensional pattern with the outlines of another two-dimensional pattern. The sewing of virtual clothing can be achieved by connecting the outlines included in a mesh 200 of one two-dimensional pattern with the outlines included in a mesh 200 of another two-dimensional pattern. More specifically, on the outlines of the two two-dimensional patterns, there can be polygonal vertices of the mesh 200 that form their patterns. In this case, when the processor 930 receives input regarding the outline and length ("sewing line") to be set, the sewing of the virtual clothing can be achieved by welding the polygonal vertices of the mesh 200 located on the sewing line in each two-dimensional pattern. That is, in a three-dimensional virtual clothing simulation, in order for the pattern represented by the mesh 200 to be sewn, the number and edges of the polygons included in the mesh 200 may need to touch each other to form a sewing line.
[0043] In step 110, the processor 930 according to one embodiment may receive a first selection input from a user regarding the sewing line 320 between patterns (e.g., small pattern 310 and large pattern 330) in a three-dimensional virtual garment. The user's first selection input may refer to the user clicking on the sewing line in the three-dimensional virtual garment to edit the sewing line 320.
[0044] For ease of explanation, the dimensions of the paper patterns are represented by different sizes in the above embodiments, but the embodiments are not limited to those described above. Sewing between paper patterns can include: 1) sewing between paper patterns of the same size and shape; 2) sewing between paper patterns of different sizes or shapes but with the same length of sewing thread 320; and 3) sewing between paper patterns of different sizes or shapes but with different lengths of sewing thread 320. Paper patterns can be sewn one-to-one as shown in the accompanying drawings, but are not limited to the embodiments described. Garment designs can also be represented by repeated sewing of three or more paper patterns or sewing in different directions. For example, two small paper patterns can be connected and sewn into one large paper pattern. Furthermore, the sewing thread 320 can vary depending on the sewing position of each paper pattern, and may appear to be the same length during actual garment sewing, but the length of each paper pattern can be different when the paper patterns are unfolded and represented as shown in the accompanying drawings. That is, the length of the sewing thread 320 can vary depending on the sewing method.
[0045] In one embodiment, the processor 930 may receive a user's first selection input for the sewing thread 320 and display the sewing relationship of multiple patterns hierarchically included in the three-dimensional virtual garment according to visual depth. For example, when the top of the three-dimensional virtual garment is a T-shirt, the patterns may include a front pattern, a back pattern, sleeve patterns, etc.
[0046] According to one embodiment, the processor 930 can utilize an exploded view (e.g.: Figure 3 Sewing technique 301 Figure 4 The sewing relationship is generated by the stretching sewing 302 and the exploded view 500 of Figure 5, wherein the exploded view is adjusted to increase the distance between at least one of the multiple patterns and at least one other pattern based on visual depth. The exploded view can be a diagram in a 3D virtual garment simulation that decomposes and separates the multiple patterns included in the 3D virtual garment from each other. For example, in the exploded view, the processor 930 can adjust the distance between the patterns to further increase the distance between them. Through this adjustment, the user can perform detailed operations on the pattern attributes such as sewing thread 320, material, and size conversion for each pattern in the 3D virtual garment design image.
[0047] In step 120, according to one embodiment, the processor 930 can receive the user's ease of sewing for the sewing thread 320 (e.g.: Figure 3 Stretch sewing (301) and stretch sewing (e.g.: Figure 4 The second selection input for at least one of the following: stretch sewing 302. The user's second selection input may be: after the user selects sewing thread 320 on the 3D virtual garment to edit the sewing thread 320, the user selects on the interface whether to perform stretch sewing 301 or stretch sewing 302 on the sewing thread 320.
[0048] According to one embodiment, the stretch sewing 301 can be a sewing method that involves gathering a large pattern 330 to fit a small pattern 310. Typically, the stretch sewing 301 can be applied to the armhole portion of a garment.
[0049] According to one embodiment, the stretch sewing 302 can be a sewing method that involves stretching a small paper pattern 310 to fit a large paper pattern 330. Typically, the stretch sewing 302 can be frequently applied to parts such as the neckband and hem of garments.
[0050] Therefore, in order to simulate the natural shape of clothing in 3D virtual clothing simulation, it is necessary to naturally implement stretch sewing 301 and stretch sewing 302.
[0051] In step 130, according to one embodiment, the processor 930 can adjust the properties of the mesh 200 of the sewing area adjacent to the sewing thread 320 based on the user's second selection input.
[0052] Realistic fabric typically possesses elasticity. In 3D virtual clothing simulations, this elasticity is achieved through a mesh, and depending on the sewing method, the elasticity can be maintained under stretched or contracted conditions. Therefore, in 3D virtual clothing simulations, mesh properties need to be adjusted to achieve elasticity similar to real-world conditions. Mesh properties can vary depending on the mesh implementation, but the above embodiment assumes a mass-spring model. Therefore, adjusting mesh properties could involve adjusting the coefficients of the mass-spring model of the mesh polygons, or changing the positions of the polygon vertices.
[0053] In the feed-through sewing 301, the processor 930 can insert a virtual spring or impart elasticity to the sewing area of a pattern with shorter sewing thread (e.g., the sewing area of small pattern 310) to bias the length of the sewing thread 320 toward the shorter sewing thread length among multiple patterns (e.g., the length of small pattern 310). For example, feed-through sewing 301 may include biasing the sewing thread toward the shorter sewing thread length, and may include biasing the sewing thread toward the shorter sewing thread length while inserting a virtual spring whose length corresponds to a ratio of the shorter sewing thread length into the shorter sewing thread. Therefore, when the processor 930 receives a second selection input from the user for the sewing pattern 301, it can change the properties of the polygons of the sewing areas of the pattern that include shorter sewing lines (e.g., the sewing area of the small pattern 310), and in response to the change in the properties of the polygons of the sewing areas of the pattern that include shorter sewing lines, it can change the properties of the polygons of the sewing areas of the remaining patterns (e.g., the large pattern 330).
[0054] In stretch sewing 302, processor 930 may insert a virtual spring or impart elasticity to the sewing area of a pattern with a longer sewing thread (e.g., the sewing area of the large pattern 330) to bias the length of the sewing thread 320 toward the longer sewing thread among multiple patterns (e.g., the length of the large pattern 330). For example, stretch sewing 302 may include biasing the sewing thread toward the longer sewing thread length, and may include biasing the sewing thread toward the longer sewing thread length while inserting a virtual spring whose length corresponds to a ratio of the longer sewing thread length. Therefore, when the processor 930 receives a second selection input from the user for the stretch sewing 302, it can change the properties of the polygons of the sewing areas of the pattern that include longer sewing lines (e.g., the sewing area of the large pattern 330), and in response to the change in the properties of the polygons of the sewing areas of the pattern that include longer sewing lines, it can change the properties of the polygons of the sewing areas of the remaining patterns (e.g., the small pattern 310).
[0055] According to an embodiment, the processor 930 can insert a virtual spring into the sewing area of a paper pattern sewn by sewing thread 320, and change the properties of the polygons included in the sewing area where the virtual spring is inserted. In response to the change in the properties of the polygons, the processor 930 can make the paper pattern appear as if it has been ironed after sewing.
[0056] The following will explain the changes in the properties of polygons.
[0057] According to one embodiment, the processor 930 can insert one or more virtual springs into the sewing area of at least one of the paper patterns in the sewing area. In response to a third selection input from the user, the ratio and stiffness (strength) of the virtual springs can be adjusted. Stiffness can be expressed as the strength of the virtual spring. The strength of a virtual spring typically refers to its ability to resist deformation or support a load. The stiffness in a virtual spring is primarily used to measure the force required to deform the spring; it can be the spring's resistance to deformation. The ratio of the virtual spring typically refers to its length, and the longer the length, the easier it is for the spring to deform.
[0058] That is, a virtual spring can be inserted into either of the two paper patterns (or sewing thread) to provide tension. The stiffness of the virtual spring is its elastic modulus; the stronger the stiffness, the greater the tension the virtual spring will have for the same proportion (or the length of the virtual spring).
[0059] More specifically, the "proportion" can be converted into the elastic modulus of the virtual spring. Referring to the following mathematical formula 1, the proportion of the virtual spring provided to the user can represent the length of the virtual spring corresponding to the length of the reference sewing thread according to the sewing method.
[0060] For example, when the sewing method is 301 (adjustment sewing), a shorter sewing thread can be used as a reference based on the small pattern 310. Therefore, the processor 930 can set a reference value where the shorter sewing thread length is 100%. When the user adjusts the ratio to 70%, the length of the virtual spring can be adjusted to 70% of the shorter sewing thread length. As the virtual spring length shortens, the tension can increase according to the spring's characteristics. Conversely, in 301 (adjustment sewing), when the user adjusts the ratio to 200%, the length of the virtual spring can be adjusted to 200% of the shorter sewing thread length. In this case, the tension can decrease according to the spring's characteristics.
[0061] For example, when the sewing method is stretch sewing 302, a longer sewing thread can be used as a reference based on the large pattern 330. Therefore, the processor 930 can set a reference value that makes the length of the longer sewing thread 100%. When the user adjusts the ratio to 70%, the length of the virtual spring can be adjusted to 70% of the length of the longer sewing thread. As the length of the virtual spring shortens, the tension can increase according to the characteristics of the spring. Conversely, in stretch sewing 302, when the user adjusts the ratio to 200%, the length of the virtual spring can be adjusted to 200% of the length of the longer sewing thread. In this case, the tension can decrease according to the characteristics of the spring.
[0062] For ease of explanation, the above embodiments are described using small pattern 310 and large pattern 330, but are not limited thereto. When the stretch sewing 301 or the tension sewing 302 is not performed between small pattern 310 and large pattern 330, but between the same pattern or between sewing threads of the same size or length, the length of the reference sewing thread can be the same.
[0063] That is, the spring tension can be adjusted using the spring's stiffness, strength, and ratio, and users can represent stretching sewing (301) or tension sewing (302) on a 3D virtual garment by adjusting the characteristics of the virtual spring. The user's third input option can be performed through an interface for adjusting the virtual spring's ratio or stiffness. For example, the interface can provide a bar-like interface or a numerical input interface for adjusting the ratio or stiffness.
[0064] The virtual spring is not necessarily inserted into the garment, but is a tool used to simulate the changes caused by external forces applied during sewing. That is, the user can set the proportion of the virtual spring (e.g., the spring length relative to the small paper pattern 310) and its stiffness (e.g., the degree to which the spring resists external forces), and the processor 930 can perform simulations based on the set virtual spring to display the results of stretch sewing 301 and tension sewing 302 to the user.
[0065] The sewing area adjacent to sewing thread 320 can be the following area: as the scale or stiffness of the virtual spring is adjusted, the properties of the polygons adjacent to the virtual spring within the polygons included in the mesh change. As the virtual spring is adjusted, the degree to which the virtual spring affects the small pattern 310 and the large pattern 330 can differ. That is, the polygons of the mesh in the pattern are affected by external forces, and the physical properties of the polygons (e.g., the vertex positions when the polygon is a mass-spring model) can change.
[0066] Reference Figure 3The processor 930 can insert a first virtual spring 311 into the small pattern 310 to simulate the weave stitch 301. The processor 930 can insert the first virtual spring 311 with a predetermined ratio and stiffness based on the physical properties of the fabric to be realized in the 3D virtual garment and the size difference between the small pattern 310 and the large pattern 330. The processor 930 can insert the first virtual spring 311 by setting its initial ratio and initial stiffness to arbitrary values (or experimental values). Here, arbitrary values can be set to dominant values unaffected by the pattern type. For example, when the pattern is cotton, the predetermined initial ratio and initial stiffness of the first virtual spring 311 can be set as follows: a ratio of 0.9 relative to the longitudinal length of the small pattern 310, and a stiffness value of 10 times the general stiffness value of cotton fabric, thereby setting the first virtual spring 311 as a virtual spring that dominates relative to the fabric.
[0067] The processor 930 can receive user input and adjust the scale or stiffness of the first virtual spring 311. For example, the user can directly adjust the scale of the first virtual spring 311 from 0.8 to 0.9. Alternatively, when an input is executed to reduce the elasticity of the first virtual spring 311, a virtual spring with a length of 0.9 times relative to the longitudinal length of the small paper pattern 310 can be achieved. However, as mentioned above, this does not mean that the first virtual spring 311 is displayed in the simulation, but rather that the processor 930 simulates the effect as if the first virtual spring 311 were inserted.
[0068] Reference Figure 4 The processor 930 can insert a second virtual spring 331 into the small pattern 310 to simulate stretch sewing 302. The processor 930 can insert the second virtual spring 331 with a predetermined ratio and stiffness based on the physical properties of the fabric to be realized in the 3D virtual garment and the size difference between the small pattern 310 and the large pattern 330. The processor 930 can insert the second virtual spring 331 by setting its initial ratio and initial stiffness to arbitrary values (or experimental values). Here, arbitrary values can be set to dominant values unaffected by the pattern type. For example, when the pattern is cotton, the predetermined initial ratio and initial stiffness of the second virtual spring 331 can be set as follows: a ratio of 0.9 relative to the longitudinal length of the large pattern 330, and a stiffness value of 10 times the general stiffness value of cotton fabric, thereby setting the second virtual spring 331 as a virtual spring that dominates relative to the fabric.
[0069] Similarly, the processor 930 can receive user input and adjust the scale or stiffness of the second virtual spring. For example, the user can directly adjust the scale of the second virtual spring 331, which is 0.9, to 0.8. Alternatively, when the user inputs to increase the elasticity of the second virtual spring 331, a virtual spring with a length 0.8 times that of the longitudinal length of the large pattern 330 can be achieved. However, as mentioned above, this does not mean that the second virtual spring 331 is displayed in the simulation, but rather that the processor 930 simulates the effect as if the second virtual spring 331 were inserted.
[0070] For ease of explanation, only one of the first virtual spring 311 and the second virtual spring 331 is shown, but it is not limited to the above embodiment. Two or more virtual springs can be inserted to perform various sewing simulations.
[0071] Reference Figure 5a The processor 930 can perform polygonal elastic adjustment sewing 303. The processor 930 can adjust the elasticity of the polygons in the mesh to simulate stretch sewing 301 and tension sewing 302.
[0072] For example, the grid of the paper pattern can be implemented as a mass-spring model. In this example, each side forming a polygon can be considered as a single spring. Therefore, in order to adjust the elasticity of each polygon, the processor 930 can insert a third virtual spring 341 into each side of the polygon, or directly adjust the elasticity of each side of the polygon.
[0073] The sewing area can vary depending on the degree of execution of the stretch sewing 301 and the tension sewing 302 (e.g., the stiffness applied to the first virtual spring 311, the second virtual spring 331, and the third virtual spring 341). For example, when the stretch sewing 301 is executed strongly, the large pattern 330 can be more dependent on the small pattern 310. In this case, compared to when the stretch sewing 301 is executed weakly, the effect of the stretch sewing 301 can extend from the sewing line 320 of the pattern to a more distant area when the stretch sewing 301 is executed strongly. Therefore, the deformation of the pattern mesh can occur more strongly, and the processor 930 can calculate the degree of mesh deformation and reflect it in the three-dimensional virtual garment simulation.
[0074] In step 140, the processor 930 according to one embodiment can simulate a three-dimensional virtual garment with the properties of the adjusted mesh applied.
[0075] The above steps are described as performing either the stretch sewing 301 or the tension sewing 302 on the sewing thread 320. However, in actual garment design, when sewing between patterns, the stretch sewing 301 or tension sewing 302 can be performed multiple times with different proportions and stiffnesses, or in combination, to represent various garment designs. Therefore, the simulation device can combine the above steps and apply them to the sewing thread 320 to perform multiple stretch sewing 301 or tension sewing 302 to represent various garment designs. The processor 930 can perform combined sewing 304 to perform stretch sewing 301 or tension sewing 302 multiple times.
[0076] Reference Figure 5b According to one embodiment, the processor 930 can receive a fourth selection input from a user to generate a notch 350 on the sewing thread 320. Here, the user's fourth selection input includes a selection input for distinguishing the sewing thread 320, which may include input for dividing the sewing thread 320 into two or more sewing threads. The processor 930 can receive a sewing generation input from the user for using a stretch sewing 301 or a tension sewing 302 on the sewing thread 320, based on the notch 350. In response to receiving the sewing generation input, the processor 930 can generate a combination of stretch sewing or tension sewing on the sewing thread based on the position of the notch 350 generated on the sewing thread.
[0077] When the processor 930 generates a notch 350 on the sewing thread 320 (the sewing thread of the small pattern 310 and the large pattern 330) that has been generated on the three-dimensional virtual garment, and performs multiple sewing operations based on the notch 350, it can form a stretch sewing 301 or a tension sewing 302 between a portion of the sewing thread of the small pattern and a portion of the sewing thread of the large pattern.
[0078] More specifically, the sewing threads 320 of the small pattern 310 and the large pattern 330 can be sewn together in a 1:1 correspondence, thereby applying tension evenly to the springs of the small pattern 310 or the large pattern 330, and the mesh properties can be modified. Furthermore, when the sewing thread 320 is divided by the notch 350 to perform multiple sewings, the processor 930 can perform a simulation, allowing multiple tensions to be applied to a single sewing thread 320. Here, the processor 930 does not perform sewing by overlapping sewing threads 320 that have already generated multiple sewings, but rather divides (or separates) a single sewing thread 320 by the notch 350, thereby setting the tension (or sewing method) applied to the first part 321 of the sewing thread 320 to be different from the tension (or sewing method) applied to the second part 322 of the sewing thread 320.
[0079] For example, a user can perform a stretching stitch 301 on one half of the sewing thread 320 and a pulling stitch 302 on the other half. The processor 930 can receive a first selection input from the user and generate a cut 350 on the sewing thread 320. The cut 350 can be generated on the sewing thread 320 and can be a vertex indicated on the sewing thread 320, allowing the user to arbitrarily divide the sewing thread 320 and perform different stitches. The cut 350 can be generated at the vertices of polygons on the sewing thread 320, but when the user inputs to generate the cut 350 at non-vertex locations, a natural mesh shape can be generated by deforming the polygon. The processor can divide the sewing thread 320 according to the generated cut 350, thereby forming multiple sewing threads. The processor 930 can receive a second selection input from the user regarding the desired ease sewing 301 or stretch sewing 302 to be performed on each of the multiple sewing threads formed, and performs ease sewing 301 or stretch sewing 302 on each sewing thread. Based on the cuts 350 generated on the sewing thread 320, when the user performs ease sewing 301 or stretch sewing 302, the processor 930 can simulate a three-dimensional virtual garment with combinations of ease sewing 301 or stretch sewing 302. That is, instead of performing only one sewing method on a single sewing thread 320, a dividing point is generated on a single sewing thread 320, and based on this dividing point, the user can combine the desired sewing methods in various ways, thereby simulating three-dimensional virtual garments with various designs. The method of performing ease sewing 301 or stretch sewing 302 on each part can be performed separately through steps 110 to 140 described above.
[0080] Figure 2 This is a schematic diagram illustrating a grid according to one embodiment.
[0081] Reference Figure 2 In one embodiment, for ease of illustration, an example of mesh 200 comprising triangles is shown, but it is not limited thereto. According to the embodiment, mesh 200 can also be modeled with polygons of various shapes.
[0082] In one embodiment, the mesh 200 can be modeled in various forms. For example, the vertices of the polygons included in the mesh 200, in other words, the vertices of the polygons, can be point masses. The edges of the polygons included in the mesh 200 can be represented as springs connecting point masses and having elasticity. Therefore, the 3D model of clothing according to one embodiment can be modeled using a mass-spring model. For example, depending on the physical properties of the fabric used, the spring can have resistance values for stretching, shearing, and bending, respectively. Alternatively, the mesh 200 can also be modeled using a strain model. As another example, the polygons included in the mesh 200 can be modeled as triangles or as polygons with four or more sides. When it is necessary to model a 3D volume, the mesh 200 can also be modeled as a 3D polyhedron. The 3D model of clothing according to one embodiment can include at least one of the following: virtual clothing for a 3D virtual character and virtual clothing for a 3D virtual avatar.
[0083] Figure 3 Figure 5 is a schematic diagram illustrating a sewing method according to one embodiment.
[0084] Figure 3 Figure 5 is an exemplary exploded view illustrating a sewing simulation, which briefly shows the grid of the small pattern 310, sewing thread 320, and large pattern 330. In the exploded view, the sewing thread 320 can be shared by the small pattern 310 and the large pattern 330. The length of the sewing thread 320 can vary depending on the sewing method. For example, in the case of stretch sewing 301, the length of the sewing thread 320 can be similar to the longitudinal length of the small pattern 310. Conversely, in the case of stretch sewing 302, the length of the sewing thread 320 can be similar to the longitudinal length of the large pattern 330.
[0085] Figure 6a and Figure 6b This is a schematic diagram illustrating a sewing simulation according to one embodiment.
[0086] Combination Figure 1 The explanation provided in Figure 5 is also applicable. Figure 6a and Figure 6b Therefore, any repetitive explanations will be omitted.
[0087] Figure 6a It is a cross-sectional simulation diagram of the result of sewing the large paper pattern 330 to the small paper pattern 310 through the feed stitch 301. Figure 6bThis is an attached diagram showing the result of simulating the sewing of a large paper pattern 330 to a small paper pattern 310 at the armhole of a 3D virtual garment using the ease sewing technique 301. (Refer to...) Figure 6a The large pattern 330 is presented as if it has been folded into the small pattern 310. Similarly, refer to... Figure 6b The armhole area of the garment has pleats. That is, as a result of the stretch sewing 301, the inside of the armhole is sewn with a large paper pattern 330 with pleats, and some stretch pleats 601 are formed near the sewing line 320.
[0088] Figure 7a and Figure 7b This is a schematic diagram illustrating a sewing simulation according to one embodiment.
[0089] Figure 7a It is a cross-sectional simulation diagram of the state in which the small paper pattern 310 is sewn into the large paper pattern 330 by stretch sewing 302. Figure 7b This is an attached diagram simulating the process of sewing a small paper pattern 310 to a large paper pattern 330 at the neckline of a 3D virtual garment using stretch sewing 302. (Refer to...) Figure 7a The small paper pattern 310 is stretched and sewn onto the large paper pattern 330. Similarly, refer to... Figure 7b The neckline of the garment is pleated. That is, as a result of stretch sewing 302, the inside of the neckline is sewn with a stretched paper pattern 310, and some stretch pleats 701 are formed near the sewing line 320.
[0090] Figure 8a and Figure 8b This is a schematic diagram illustrating a user interface according to one embodiment.
[0091] Combination Figures 1 to 7b The instructions provided also apply to Figure 8a and Figure 8b Therefore, any repetitive explanations will be omitted.
[0092] According to one embodiment, the user interface 800 is an interface provided to a user that can simulate a three-dimensional virtual garment, provide visual depth for sewing lines, and display pattern pieces to facilitate garment editing. Furthermore, the user interface 800 may also provide editing tools on the left and right sides to assist the user in editing the garment.
[0093] Reference Figure 8a and Figure 8b According to one embodiment, the processor 930 may, in response to receiving a first selection input for the sewing thread 320 on the user interface 800, display a property editor interface 801 for adjusting the properties of the sewing thread 320 to the user via an output device.
[0094] According to one embodiment, the attribute editor interface 801 may include: a Type interface 810, 811 for receiving ease and stretch sewing input; a Strength (or Stiffness) interface 820, 821 for adjusting the strength (or Stiffness) of the inserted virtual spring; and a Ratio interface 830, 831 for adjusting the Ratio of the inserted virtual spring. The Ratio interface 831 may be displayed as a percentage (0 to 100%) or a decimal.
[0095] According to one embodiment, the processor 930 can display type interfaces 810 and 811 on the attribute editor interface 801 to receive a second selection input from the user for at least one of the yield stitch 301 and the stretch stitch 302. The processor 930 can also display interfaces 820, 821, 830, and 831 for receiving a third selection input from the user, which is an adjustment input for the scale or stiffness of the virtual spring. The user's third selection input may be adjusting the properties of the virtual spring by entering a value in the strength (or stiffness) interface 820, 821 and the scale interface 830, 831. However, the method of adjusting the properties of the virtual spring is not limited to numerical input; a bar scrolling interface can also be provided to allow the user to adjust the properties of the virtual spring more conveniently.
[0096] According to one embodiment, the processor 930 can display the sewing area adjacent to the sewing thread 320 in response to a second selection input from the user and a third selection input from the user regarding the adjustment of the proportion or stiffness of the virtual spring.
[0097] A diagram of the sewing area can be combined with... Figures 6a to 7b Please provide an explanation. For example, when performing stretching sewing, such as... Figure 6b As shown, a stretch pleat 601 can be formed near the armhole seam. The portion forming the stretch pleat 601 can then be defined as the sewing area. Similarly, when performing stretch sewing, as... Figure 7b As shown, stretch pleats 701 can be formed near the neckline seam. The portion forming the stretch pleats 701 can be defined as the sewing area. As mentioned above, since stretch pleats and creases are generated by deforming the properties of the mesh polygons, the area affected by stretch sewing and crease sewing can be considered the sewing area.
[0098] Figure 9 This is a block diagram of an electronic device according to an embodiment.
[0099] Reference Figure 9An electronic device 900 (e.g., a terminal or server) according to one embodiment may include a processor 930, a memory 950, and an output device 970 (e.g., a display). The processor 930, memory 950, and output device 970 may be connected to each other via a communication bus 905. For ease of explanation, it may be assumed that at least one of the above-described methods or algorithms corresponding to at least one method are executed by more than one processor 930.
[0100] The output device 970 can display the user interface for sewing simulation provided by the processor 930.
[0101] The memory 950 can store information related to sewing relationships, ease-of-motion sewing, and stretch sewing techniques associated with the sewing simulation executed by the processor 930. Furthermore, the memory 950 can also store various information generated during the processing of the processor 930. Additionally, the memory 950 can store various data and programs. The memory 950 can include volatile or non-volatile memory. The memory 950 can include a high-capacity storage medium such as a hard disk to store various types of data.
[0102] In addition, the processor 930 can execute via Figure 1 The process described above involves at least one method or an algorithm corresponding to at least one method, as shown in Figure 8. While the processor 930 is described as being included in the electronic device 900, it could also be included in a server performing the sewing simulation. The processor 930 can be a hardware-implemented data processing device with a circuitry having a physical structure for performing desired operations. For example, the desired operations could include code or instructions included in a program. For example, the hardware-implemented electronic device 900 could include a microprocessor, a central processing unit, a processor core, a multi-core processor, a multiprocessor, application-specific integrated circuits (ASICs), or a field-programmable gate array (FPGA).
[0103] The processor 930 can execute programs and control the electronic device 900. The program code executed by the processor 930 can be stored in the memory 950.
[0104] The embodiments described above can be implemented using hardware components, software components, and / or combinations of hardware and software components. For example, the apparatus and components described in the embodiments can be implemented using, for example, a processor, controller, arithmetic logic unit (ALU), digital signal processor, microcomputer, field-programmable array (FPA), programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions, and can be embodied using more than one general-purpose computer or special-purpose computer. The processing device can execute an operating system (OS) and more than one application software running within said operating system. Furthermore, the processing device responds to the execution of the software, thereby accessing, storing, manipulating, processing, and generating data. For ease of understanding, the description is presented as having only one processing device, but those skilled in the art will understand that a processing device can include multiple processing elements and / or multiple types of processing elements. For example, a processing device can include multiple processors, or one processor and one controller. Furthermore, other processing configurations, such as parallel processors, are also possible.
[0105] Software can include computer programs, code, instructions, or a combination of more than one of these, enabling a processing device to operate in a desired manner, or to individually or collectively command the processing device. For interpretation by the processing device or to provide commands or data to the processing device, software and / or data can be permanently or temporarily embodied in any type of device, component, physical device, virtual equipment, computer storage medium, or device. Software is distributed across computer systems connected via a network and can be stored or executed in a distributed manner. Software and data can be stored on more than one computer read / write storage medium.
[0106] The method according to the embodiments is embodied in the form of program instructions executable by various computer means and recorded in a computer read / write medium. The computer read / write medium may include program instructions, data files, data structures, etc., individually or in combination. The program instructions recorded on the medium may be instructions specifically designed and configured to implement the embodiments, or instructions that can be used by a person skilled in the art of computer software based on commonly known methods. The computer read / write recording medium may include magnetic media such as hard disks, floppy disks, and magnetic tapes; optical media such as CD-ROMs and DVDs; magneto-optical media such as floppy disks; and hardware devices specifically configured to store and execute program instructions, such as read-only memory (ROM), random access memory (RAM), and flash memory. Examples of program instructions include not only machine language code generated by a compiler, but also high-level language code executable by a computer using an interpreter or similar means.
[0107] To perform the operations of the embodiments, the hardware device can be configured to implement the operations with one or more software modules, or vice versa.
[0108] In summary, the embodiments have been described with reference to the limited accompanying drawings. Those skilled in the art can make various modifications and variations based on the description. For example, appropriate results can be obtained by performing the described techniques in a different order than the described methods, and / or by combining or integrating the described systems, structures, devices, circuits, and other constituent elements in a different manner than the described methods, or by replacing or substituting them with other constituent elements or equivalents.
[0109] Therefore, other embodiments, other implementations, and equivalents within the scope of the claims are all within the scope of the claims of this invention.
Claims
1. A method for simulating three-dimensional virtual clothing, characterized in that, Includes the following steps: Receive the user's first selection input regarding the sewing lines between paper patterns in a 3D virtual garment; For the sewing thread, the system receives a second selection input from the user for at least one of slip sewing and stretch sewing; Based on the user's second selection input, adjust the properties of the mesh in the sewing area adjacent to the sewing thread; and The simulation applies the properties of the adjusted mesh to the three-dimensional virtual garment.
2. The three-dimensional virtual clothing simulation method according to claim 1, characterized in that, The steps for adjusting the properties of the mesh include the following: Insert one or more virtual springs into the sewing area of at least one of the paper patterns in the sewing area.
3. The three-dimensional virtual clothing simulation method according to claim 2, characterized in that, The virtual spring responds to a third selection input from the user, adjusting the scale or stiffness of the virtual spring.
4. The three-dimensional virtual clothing simulation method according to claim 3, characterized in that, The sewing area adjacent to the sewing thread is: As the scale or stiffness of the virtual spring is adjusted, the properties of the polygons adjacent to the virtual spring within the polygons included in the mesh change.
5. The three-dimensional virtual clothing simulation method according to claim 2, characterized in that, The stitching technique described is as follows: The virtual spring is inserted or elasticized into the sewing area of the paper pattern that includes the shorter sewing thread, so that the length of the sewing thread is biased towards the length of the shorter sewing thread between the paper patterns.
6. The three-dimensional virtual clothing simulation method according to claim 5, characterized in that, The steps for adjusting the properties of the mesh include the following: When a selection input for the stitching pattern is received in the user's second selection input, the properties of the polygons of the stitching areas of the remaining patterns in the pattern are changed in response to a change in the properties of the polygons of the stitching areas of the pattern that includes the shorter stitching line.
7. The three-dimensional virtual clothing simulation method according to claim 2, characterized in that, The stretch sewing is as follows: The virtual spring is inserted or elasticized into the sewing area of the paper pattern, which includes a longer sewing thread, such that the length of the sewing thread is biased towards the length of the longer sewing thread between the pieces of paper.
8. The three-dimensional virtual clothing simulation method according to claim 7, characterized in that, The steps for adjusting the properties of the mesh include the following: When a selection input for the stretch sewing is received in the user's second selection input, the properties of the polygons of the sewing areas of the remaining patterns in the pattern are changed in response to a change in the properties of the polygons of the sewing areas of the pattern that includes the longer sewing line.
9. The three-dimensional virtual clothing simulation method according to claim 1, characterized in that, It also includes the following steps: In response to receiving a user's first selection input for the sewing thread, a property editor interface for adjusting the properties of the sewing thread is displayed.
10. The three-dimensional virtual clothing simulation method according to claim 9, characterized in that, It also includes the following steps: The attribute editor interface displays an interface for receiving the user's second selection input for at least one of the rigging and stretching sewing, and an interface for receiving adjustment input for the proportion or stiffness of the virtual spring. as well as In response to the user's second selection input and adjustment input for the scale or stiffness of the virtual spring, the sewing area adjacent to the sewing thread is displayed.
11. The three-dimensional virtual clothing simulation method according to claim 1, characterized in that, It also includes the following steps: Receive the user's fourth selection input and generate a cut on the sewing line; as well as Based on the cut, the system receives sewing generation input from the user for the sewing thread, using either the ease sewing or the stretch sewing.
12. The three-dimensional virtual clothing simulation method according to claim 11, characterized in that, It also includes the following steps: In response to receiving the sewing generation input, a combination of the stretch sewing or the tension sewing is generated on the sewing line based on the position of the cut generated on the sewing line.
13. A computer program, which is incorporated with hardware and stored in a computer-readable recording medium, to perform the method of claim 1.
14. A simulation device, characterized in that, include: Memory, which includes instructions; Output device, which displays the user interface; and The processor is configured as follows: Receive the user's first selection input regarding the sewing lines between paper patterns in a 3D virtual garment. For the sewing thread, the system receives a second selection input from the user regarding at least one of ease sewing and stretch sewing. Based on the user's second selection input, adjust the properties of the mesh in the sewing area adjacent to the sewing thread. The simulation applies the properties of the adjusted mesh to the three-dimensional virtual garment.
15. A server, characterized in that, include: The communication unit is configured to receive input from the terminal for performing a sewing simulation and to transmit the result of performing the sewing simulation; Memory, which includes instructions; and The processor is configured as follows: Receive the user's first selection input regarding the sewing lines between paper patterns in a 3D virtual garment. For the sewing thread, the system receives a second selection input from the user regarding at least one of ease sewing and stretch sewing. Based on the user's second selection input, adjust the properties of the mesh in the sewing area adjacent to the sewing thread. The simulation applies the properties of the adjusted mesh to the three-dimensional virtual garment.