Abstract:
A method and the device for scaling or changing embroidery patterns ( 1 ) for sewing machines that allows a quick calculation of optimized stitching data. For one or more different change factors q j , data sets d j  with optimized stitching data (x ji ,y ji ) are stored. A target data set z with stitching data changed according to a given change value v is determined by selecting one of the stored data sets d j  and performing an extrapolation or an interpolation with the associated stitching data (x ji ,y ji ). For a pattern with several sub-patterns, these sub-patterns can be changed individually and combined to form a changed pattern.

Description:
BACKGROUND 
       [0001]    The subject matter of the invention is a device and a method for changing embroidery patterns. 
         [0002]    Modern sewing machines frequently include embroidery devices with an embroidery hoop that can be coupled to the sewing machine. For embroidering, the material to be sewn is set in tension in the embroidery hoop. This can be displaced in the two directions of the sewing plane by means of two independent drives. In the embroidery mode, the embroidery hoop, controlled by the sewing machine controller, is moved as a function of stored embroidery pattern data to the next stitching point, where a corresponding embroidery stitch is formed. The software controlling the movements of the embroidery hoop and the needle bar of the sewing needle is usually stored in a program memory of the sewing machine. The data for an embroidery pattern can also be stored in an internal memory of the sewing machine. Alternatively, the embroidery pattern data can also be stored in an external memory, e.g., a USB stick, which can be connected to the sewing machine. 
         [0003]    There are many different formats for embroidery pattern data, e.g., “.ART” or “.EXP”. In principle, distinctions can be made between vector-based and stitching data-based formats. Stitching data-based formats are usually optimized for use on certain sewing machine models. In contrast, vector-based formats can be used universally, but require more complex data-processing devices. Computer programs are known that allow the conversion of embroidery pattern data from one format to the other. In addition, computer programs, e.g., “ARTE Engine,” are known, with which embroidery patterns can be created and/or modified. 
         [0004]    For enlarging and/or reducing embroidery patterns, it is advantageous when the corresponding data is provided in a vector format, e.g., “.ART”. For changing the size of the embroidery pattern up to approximately ±20% of the original size, it is possible to change the stitch length (or their components into the two directions of movement of the embroidery hoop) according to the appropriate scaling, without significantly decreasing the quality of the embroidered image. This type of modification to the embroidery pattern is also designated as “resizing.” 
         [0005]    For scaling values greater than approximately 20% to 25% in terms of magnitude, the stitches or the puncture points for the embroidery pattern to be created must be recalculated, with the number of puncture points usually increasing or decreasing, so that the stitching density quality is changed to be within tolerable limits. This type of modification to the embroidery pattern data is also designated as “recalculation.” For performing such a recalculation process, CAD software, e.g., “ARTE Engine” is necessary. Moreover, the embroidery pattern data must be provided in a suitable vector format, e.g., “.ART”. The recalculation of embroidery pattern data is computationally intensive and requires a computer with correspondingly high computing power. Therefore, in conventional sewing machines without powerful CAD software, sometimes alternative algorithms are used for the recalculation of embroidery pattern data. This has the result, especially for stitching data-based embroidery formats, e.g., “.EXP”, that the stitching density quality decreases for increasing sizes, and that fillings in the embroidery pattern can be lost. 
       SUMMARY 
       [0006]    Therefore the object of the present invention is to create a device and a method for scaling embroidery patterns, with which qualitatively good, new embroidery pattern data can be calculated relatively quickly even for given scaling values above approximately 120% and below approximately 80%. 
         [0007]    Another object of the invention is to construct the device and the method so that fillings of embroidery patterns are not lost even for embroidery pattern-based formats. 
         [0008]    These are met by a device and by a method according to the invention. 
         [0009]    With the method according to the invention and the device according to the invention, an embroidery pattern can be scaled and changed easily and quickly, without negatively affecting the quality of the embroidery pattern. For this purpose, several data sets are created, which represent the embroidery pattern with the associated stitching data for different fixed or adjustable scaling factors. (Because the invention can be applied not only to changes in size with constant proportions, but generally to parameterizable changes, from here on instead of the term “scale factor,” the term “change factor” will be used and instead of the term “scale value,” the term “change value” will be used.) The stitching data of each data set is optimized in terms of the stitching density quality. The given change factors are preferably dimensioned so that the enlargements or reductions of the embroidery pattern correspond to steps of approximately 20% of the original size. 
         [0010]    For enlarging or reducing an embroidery pattern, the user can set or select the desired change value. The machine controller determines the change factor lying closest to the desired change factor with reference to this user input. With reference to the given stitching data of the associated data set, the machine controller calculates the actual stitching data for the desired change value. Thus it is not necessary to recalculate the arrangement of stitches for an embroidery pattern when a change in size greater than approximately 20% of the original size is desired for the embroidery pattern. 
         [0011]    With the storage of embroidery pattern data according to the invention, embroidery patterns can be scaled or changed quickly and without additional software for calculating new stitching arrangements directly by the sewing machine controller within a large range. All possible filling patterns are preserved independent of the change value. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0012]    The invention will be described in more detail below. Shown are 
           [0013]      FIG. 1  a simple embroidery pattern in the original size, 
           [0014]      FIG. 2   a  the embroidery pattern from  FIG. 1  reduced by a change value with stitch intervals reduced according to the change value, 
           [0015]      FIG. 2   b  the reduced embroidery pattern from  FIG. 2   a,  but with modified stitch intervals, 
           [0016]      FIG. 3  a flow chart, 
           [0017]      FIG. 4  a transformation of a rectangle into a circle, 
           [0018]      FIG. 4   a  an embroidery pattern assembled from sub-patterns, 
           [0019]      FIG. 4   b  the embroidery pattern from  FIG. 4   a  with sub-patterns changed independently from each other. 
       
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
       [0020]      FIG. 1  shows, in a coordinate system with the reference axes x and y (these correspond to the independent displacement directions of an embroidery hoop), an example embroidery pattern  1  in the original size. The term “embroidery pattern  1 ” comprises, in connection with the present protective rights, a certain picture or motif, to which is allocated a sequence of discrete stitching or puncture points  3  according to the size and the desired stitching density quality of the pattern. The embroidery pattern  1  can be enlarged or reduced or scaled, wherein its form is preserved through proportional size changes, but the number and arrangement of the puncture points  3  can be adjusted. 
         [0021]    The units of length of the coordinate system are represented on the reference axes x and y by tick marks. For better understanding, the embroidery pattern  1  is kept very simple. It represents the outline of a bird&#39;s head. The eye and the beak are filled with a simple filling pattern. The individual puncture points  3  are represented as small circular rings. The sewing yarn  5  between these puncture points  3  is represented as solid lines. 
         [0022]    The embroidery pattern  1  can be stored, e.g., by storing coordinates (x i , y i ) in the sequence of sewing stitches to be formed for each cohesive object that can be formed by a continuous sequence of sewing stitches. The index i here corresponds to the number of relevant sewing stitches. The coordinates (x i , y i ) can be specified, e.g., relative to the origin or relative to each preceding sewing stitch (x i-1 , y i-1 ). 
         [0023]      FIG. 2   a  shows the embroidery pattern  1  from  FIG. 1 . In comparison to the original size, however, this embroidery pattern  1  is approximately 40% smaller (the units of length of the coordinate system match those from  FIG. 1 ). For vector-based sewing stitch coordinates (x i , y i ) the new coordinate values x i  and y i  in the present example can be calculated by multiplying the original coordinate values by a factor of approximately 0.6. 
         [0024]    The puncture points  3  of the reduced embroidery pattern  1  thus lie closer together or the stitching density is increased relative to the embroidery pattern  1  in the original size. 
         [0025]      FIG. 2   b  corresponds to the embroidery pattern  1  from  FIG. 2   a  reduced by approximately 0.6 with puncture points  3  that have been recalculated or adapted to the new size. In comparison with  FIG. 2   a,  the embroidery pattern  1  in  FIG. 2   b  comprises fewer puncture points  3 , so that the stitching density quality corresponds approximately to that of the embroidery pattern  1  in the original size. 
         [0026]    The optimized stitching data or coordinates (x i , y i ) for different change factors q j  (the index j is a natural number) can be calculated, e.g., with corresponding algorithms in CAD software. For each of the change factors q j , a data set d j  with the associated stitching data (x i , y i ) is calculated. The calculations are usually performed on a computer that is independent from the sewing machine. For a corresponding construction of the sewing machine, the calculations can obviously also be executed there. In a storage medium that can be accessed by the sewing machine controller, not only is the first data set d 0  stored with the stitching data or coordinates (x i , y i ) of the embroidery pattern  1  in the original size, but also one or more other data sets d j  with the optimized stitching data or coordinates (x i , y i ) for one or more scalings or enlargements or reductions of the embroidery pattern  1  as well as the associated change factors q j . The number of such stored scaled embroidery pattern data sets of an embroidery pattern  1  or the value range of the index j can either be fixed or—in an alternative construction of the invention—can be selected freely. 
         [0027]      FIG. 3  shows an example sequence for scaling an embroidery pattern  1 , wherein in addition to the first data set d 0  with the stitching data (x i , y i ) of the embroidery pattern  1  in the original size, nine other data sets d 1  to d 9  corresponding to change factors of q 1 =20%, q 2 =40%, q 3 =60%, q 4 =80%, q 5 =120%, q 6 =140%, q 7 =160%, q 8 =180%, and q 9 =200% are stored in the working memory of the sewing machine. For scaling the selected embroidery pattern  1 , in a first step S 1  the user can select, adjust, or set a desired change value v on a correspondingly constructed user interface. In the present example, v=67%. This can be set, e.g., by means of a rotary knob that can be set continuously or in steps on the sewing machine with corresponding values shown on a display. In a second step S 2 , processing software of the sewing machine stored in a program memory determines which of the stored change factors q j  lies closest to the input, desired change value v, for example, by finding the minimum of the expression ¦v−q j ¦ from all of the stored change factors q j  (including q 0 =1). In the example from  FIG. 3 , the corresponding change factor q 3  and the associated data are outlined by bold lines. 
         [0028]    As step S 3 , the associated data set d 3  with the coordinates (x 31 ,y 31 ), (x 32 ,y 32 ) . . . (x 3k ,y 3k ) of the corresponding puncture points  3  is selected. It is used as a basis for calculating the stitching data for the embroidery picture  1  enlarged or reduced according to the change value v. The sewing machine controller first calculates the value w:=v/q 3 . Then, in step S 4  the x and y coordinates of the puncture points  3  stored in data set d 3  are multiplied with this value w. This produces the desired coordinates of a target data set z with the optimized stitching data for the embroidery pattern  1  enlarged or reduced according to the change value v. 
         [0029]    Alternatively, a different comparison criteria could also be used for determining the base data set d b  (in the shown example, the index b=3) suitable for the scaling or change. For example, instead of the change factor q j  lying closest to the selected change value v in terms of magnitude, the next larger or next smaller change factor q j  could be selected. 
         [0030]    The scaling of an embroidery pattern  1  corresponds to a special transformation or conversion, in which the stitching data coordinates (x i , y i ) in the embroidery pattern are enlarged or reduced proportionally. The form or the outline of the transformed embroidery pattern is preserved in the scaling. 
         [0031]    Other special transformations are, e.g., compressions, extensions, distortions, rotations, reflections, or any combinations or sequences of such transformations. 
         [0032]    In general, parameterizable transformations are understood as functions F, which assign one pixel F(x i , y i ) to each point (x i , y i ) of an embroidery pattern. Analogous to scaling an embroidery pattern, a transformation, which changes the shape of an embroidery pattern, can be divided into several intermediate steps.  FIG. 4  shows, as an example, the transformation of a rectangle  7  into a circle  9  by means of a function F. This corresponds to a change factor of 100%. The function can be understood as a continuous transition from an original picture (rectangle  7 ) to a transformed picture (circle  9 ). Accordingly, intermediate functions F j  can be calculated for one or more change factors q j  lying between 0% and 100%. For the illustrated example, an intermediate function F 1  is shown for the change factor q 1 =33.3% and an intermediate function F 2  is shown for the change factor q 2 =66.6%. For two actual points (x i , y i ) and (x 2 , y 2 ), the assigned pixels F 1 (x 1 ,y 1 ), F 1 (x 2 ,y 2 ), F 2 (x 1 ,y 1 ), F 2 (x 2 ,y 2 ) und F(x 1 ,y 1 ), F(x 2 ,y 2 ) are listed. 
         [0033]    Analogous to the proportional scaling of an embroidery pattern, the user can specify a desired change value v, wherein these values v must now lie between 0% and 100%. The control software determines from these value the two adjacent change values q j  and q j+1  and calculates the desired pixels, e.g., through linear interpolation. 
         [0034]    In another construction of the invention, embroidery pattern data from several different transformations or functions F can be stored in a memory that can be accessed by the sewing machine controller. It is also possible not to store any data sets for intermediate functions for one or more of these functions F. For example, for an embroidery pattern, in addition to the data set do with the stitching data of the original, data sets d j  with stitching data of simple transformations, such as reflections or rotations by 45° or 90° can be stored and retrieved via a selection menu of the sewing machine. 
         [0035]    In another alternative construction of the invention, an embroidery pattern can comprise several sub-patterns. The sub-patterns can be combined individually or into groups and scaled or changed with the same or different change values. For illustration, in  FIGS. 4   a  and  4   b,  an embroidery pattern is shown, which comprises three sub-patterns, namely writing  11   a  shown symbolically as the letter “A”, a square  11   b,  and a star  11   c.  Each of these sub-patterns has a unique coordinate system with a reference point  13   a,    13   b,    13   c.  The sub-patterns can be stored individually in their original size and/or with optimized stitching data. For scaling or changing an embroidery pattern with sub-patterns, the sub-patterns can be changed according to the invention with the same change value or alternatively with different change values v. In addition, there is the possibility of rearranging the reference points of the scaled or changed sub-patterns when the embroidery pattern is changed. 
       LEGEND OF REFERENCE SYMBOLS  
       [0000]    
       
           1  Embroidery pattern 
           3  Puncture point 
           5  Sewing thread 
           7  Rectangle 
           9  Circle 
           11   a  Writing 
           11   b  Square 
           11   c  Star 
           13   a,b,c  Reference points