This application claims priority from Japanese Patent Application No. 2006-324785, filed Nov. 30, 2006, the disclosure of which is hereby incorporated by reference in its entirety.
The present disclosure generally relates to technical fields including a sewing data creation apparatus and a sewing data creation program recorded on a computer-readable recording medium. More specifically, the disclosure relates to a sewing data creation apparatus and a sewing data creation program recorded on a computer-readable recording medium, both of which may create sewing data used to form stippling stitches.
In the related art, a stippling stitch has been known as one type of stitch for quilting. In a quilting process, an inner cotton is placed between a main fabric and a lining and they are sewn together with a stitch pattern such as a line or a curve. For example, a stitch 902 shown in
However, a problem occurs with a stippling stitch when the stitch line intersects itself, a part of the stitch line is too close to other parts of the stitch, the stitch line creates a high density portion and a low density portion in a sewing area, the stitch line has stitches with uneven stitch lengths, or the stitch line forms a curve with a pointed portion. In other words, a stippling stitch may be considered to be beautiful if the stitch line creates a smooth curve that is well balanced and evenly arranged in a sewing area, does not intersect itself, has no part of the stitch too close to other parts of the stitch, and has uniform stitch lengths.
Moreover, a stippling stitch may be decorated with a plurality of small decorative patterns. For example, as shown in
Further, an embroidery data creation apparatus may transform a part of a profile line of an embroidery pattern to be sewn into a Bezier curve (see, for example, Japanese Patent Application Laid Open Publication No. Hei 9-137357).
However, there is a problem in that a sewing operator must be highly skilled to sew a stitch line by a sewing machine while moving a cloth by hand in such a manner that the stitch line makes a curve. The curve is smooth, well-balanced, and evenly arranged in the sewing area, does not intersect itself, has no part of the stitch too close to other parts of the stitch, and has uniform stitch lengths. Further, a conventional embroidery data creation apparatus only changes a profile line of an embroidery design into curves and cannot arrange stitches evenly in the embroidery design in a balanced manner. Also, in order to dispose a plurality of small decorative patterns on a stippling stitch at predetermined intervals in a balanced manner, or sew the patterns with equal sizes onto a cloth with a sewing machine while moving the cloth by hand, the operator must be even more skilled. Therefore, general operators and beginners may hardly sew such exquisite decorative patterns with a sewing machine.
Exemplary embodiments provide a sewing data creation apparatus and a sewing data creation program recorded on a computer-readable recording medium that may create sewing data used to easily sew a stippling stitch having decorative patterns thereon with a sewing machine.
Exemplary embodiments provide a sewing data creation apparatus for creating sewing data used for sewing by a sewing machine including a unit pattern storage device that stores pattern data of a unit pattern of a predetermined design, a pattern disposition device that determines a position of the unit pattern stored in the unit pattern storage device on a stitch path, the stitch path including at least a curve-like portion, and a sewing data creation device that creates the sewing data for forming stitches on the stitch path and stitches of the unit pattern at the position determined by the pattern disposition device.
Exemplary embodiments provide a computer-readable recording medium storing a computer sewing data creation program for creating sewing data used for sewing by a sewing machine, the program including unit pattern instructions for acquiring pattern data of a unit pattern of a predetermined design, pattern disposition instructions for determining a position of the unit pattern acquired in the unit pattern acquisition instructions on a stitch path, the stitch path including at least a curve-like portion, and sewing data creation instructions for creating the sewing data used to form stitches on the stitch path and stitches of the unit pattern at the position determined in the pattern disposition instructions.
Exemplary embodiments will be described below in detail with reference to the accompanying drawings in which:
Hereinafter, sewing data creation apparatus 1 according to exemplary embodiments will be described with reference to drawings. The sewing data creation apparatus 1 may create sewing data used to form a stippling stitch by an embroidery sewing machine 3 in an area specified as a sewing area. To the stippling stitch, decorative patterns 913 such as shown in
First, the embroidery sewing machine 3 is described below. The embroidery sewing machine 3 shown in
Next, an exemplary embodiment of the embroidery data creation apparatus 1 will be described below with reference to
Next, an exemplary embodiment of the electrical constitution of the embroidery data creation apparatus 1 will be described below with reference to the block diagram in
The sewing data storage area 121 may store sewing data created by the sewing data creation program and to be read into the embroidery sewing machine 3. The unit pattern storage area 122 may store the shape of a pattern (unit pattern) to be attached as a decorative pattern to a stippling stitch. The program storage area 123 may store the sewing data creation program to be executed by the CPU 11. The miscellaneous information storage area 124 may store other information to be used in the sewing data creation apparatus 1. The program may be stored in the ROM 13 if the sewing data creation apparatus 1 is a dedicated apparatus not equipped with the hard disk drive 120.
The mouse 21, a video controller 16, a key controller 17, a CD-ROM drive 18, the memory card connector 23, and the image scanner 25 may be connected to the I/O interface 14. The display 24 may be connected to the video controller 16, and the keyboard 22 may be connected to the key controller 17. The CD-ROM 114 to be inserted into the CD-ROM drive 18 may store the sewing data creation program, which may be a control program for the sewing data creation apparatus 1. At the time of introduction, the control program may be set up from the CD-ROM 114 to the hard disk drive 120 and stored in the program storage area 123. Further, through the memory card connector 23, information may be read from and written into the memory card 115.
Next, an exemplary embodiment of the storage areas provided in the RAM 12 will be described below with reference to
The reference distance storage area 1201 may store a reference distance that may be used as a reference when determining the size of a unit area (see
The selected unit pattern storage area 1213 may store information that indicates a unit pattern selected by a user as a decorative pattern (see
Next, exemplary embodiments of operations of the sewing data creation apparatus 1 will be described below with reference to
As shown in
Next, a unit pattern to be attached as a decorative pattern may be selected and its disposition interval may be inputted (S2). At this time, on the display 24, a screen may show a list of the unit patterns stored in the unit pattern storage area 122. If the user enters a unit pattern to be attached as a decorative pattern by manipulating the mouse 21 or the keyboard 22, the entry may be accepted and information of the selected unit pattern may be stored in the selected unit pattern storage area 1213 in the RAM 12. Subsequently, a screen for an entry of a disposition interval of the unit pattern may appear on the display 24. If the user enters the disposition interval, the entry may be accepted and the disposition interval may be stored in the disposition interval storage area 1214.
Subsequently, entry of a stitch length may be accepted (S3). For example, an entry screen of the stitch length may be displayed, a value entered into an input field by the user may be accepted, and the value may be stored in the stitch length storage area 1202 as the stitch length. Subsequently, the entry of a reference distance may be accepted (S4). For example, an entry screen of the reference distance may be displayed, a value input entered into an input field by the user may be accepted, and the value may be stored in the reference distance storage area 1201 as the reference distance. The reference distance may be used to determine the length of a size of a regular hexagon, which provides a unit area.
Then, offset processing on the reference distance may be performed (S5). In the present embodiment, when attaching decorative patterns (unit patterns) to the stippling stitch, the reference distance may be increased by the size of the unit pattern so that the decorative patterns do not overlap with each other. The unit pattern storage area 122 may store the shapes of the unit patterns, reference points (disposition reference points), which may be used when disposing unit patterns with the specific shape, and values (heights) by which these unit patterns may protrude from a curve path when they are disposed on it. Accordingly, the height of the unit pattern, which may be stored in the selected unit pattern storage area 1213, may be added to a value which inputted in S4 and stored in the reference distance storage area 1201.
The following will describe a reason why an offset is given, with reference to
In order to clarify the relationship between a reference distance and a size of the regular hexagon, a description will be given to an example where a unit pattern is disposed on the stitch path, not on the curve path. A unit pattern 580 shown in
An example of a unit pattern includes a height of h=n1×½ on a stitch path 591, which may be created based on regular hexagons with a side length of n1 as shown in
As shown in
Subsequently, a profile line network 210 may be created (S7). For example, a size of the unit area may be determined based on a reference distance stored in the reference distance storage area 1201. In the present embodiment, the unit area may be a regular hexagon and the length of its side may be calculated as (reference distance)× 3/2. As shown in
In the present embodiment, as shown in
Each side of the profile line of the regular hexagon, which is a unit area, is hereinafter referred to as a “side line segment”. Also, a point which is a vertex of one regular hexagon, at which vertexes of three hexagons overlap, and at which endpoints of three side line segments overlap is hereinafter referred to as a “branch point”. Further, the three side line segments of which one of the endpoints overlap at a branch point are hereinafter referred to as “peripheral side line segments” of the branch point, the three regular hexagons that share this branch point as their vertexes are hereinafter referred to as “peripheral regular hexagons”, and the respective three endpoints of the three peripheral side line segments which are at the other end of the side line segment from this branch point are hereinafter referred to as “peripheral branch points”. Information that distinguish all the regular hexagons disposed in the sewing area 119 and the coordinates of the vertexes (branch points) of the regular hexagons may be stored as the information of the profile line network 210 in the profile line network storage area 1204 in the RAM 12.
Further, for creation of the profile line network 210, if there is no regular hexagon in the created profile line network 210, it may be difficult to create a stitch path. In such a case, the value stored in the reference distance storage area 1201 may be subtracted by a predetermined numeral (for example, 0.5 mm), to create a new profile line network 210. If, as a result, the value stored in the reference distance storage area 1201 becomes smaller than a predetermined threshold value (for example, 2 mm), even if a well-balanced stitch path is created, actual sewing may become difficult with the embroidery sewing machine 3. Therefore, in such a case, the CPU 11 may determine that it is impossible to form a stippling stitch in this sewing area and so may display an error message and end the processing.
After the profile line network 210 is created (S7), the stitch path starting point P1 and the stitch path ending point P99 may be determined based on the profile line network 210 (S8). For example, a branch point closest to the starting point SP, which may be specified by the user and stored in the starting point storage area 1205, may be set as the stitch path starting point P1 and stored in the stitch path storage area 1207. Similarly, a branch point closest to the ending point EP, which may be specified by the user and stored in the ending point storage area 1206, may be set as the stitch path ending point P99 and stored in the stitch path storage area 1207 as the next point to the stitch path starting point P1.
Subsequently, an initial stitch path 310 may be created on the profile line network 210 (S9). Having the stitch path starting point P1 as a starting point, a side line segment located in a first predetermined direction (clockwise direction along the outer periphery of the sewing area in the present embodiment) may be determined as the initial stitch path 310. Then, focusing on the last branch point on the initial stitch path being created, a side line segment in a second predetermined direction (clockwise direction along the profile line of the regular hexagon to which the last branch point of the initial stitch path being created belongs in the present embodiment) may be traced, to determine the next branch point on the initial stitch path. The line segments obtained by continuously connecting the branch points on the initial stitch path thus determined may produce the initial stitch path 310. The creation of the initial stitch path 310 may be terminated when the last branch point on the initial stitch path comes to the stitch path ending point P99. As a result of such a processing, the initial stitch path 310 may extend on the side line segments, which may be located closer to the outer periphery of the sewing area 119 in the clockwise direction.
For example, if the profile line network 210, the stitch path starting point P1, and the stitch path ending point P99 that are disposed in the sewing area 119 as shown in
If the number of the branch points on the initial stitch path 310 is less than six (which is the number of the vertexes of a hexagon), it may be difficult to develop a well-balanced stitch path. To avoid this situation, the value stored in the reference distance storage area 1201 may be subtracted by a predetermined numeral (for example, 0.5 mm). Then, a new profile line network 210 may be created (S7), a new stitch path starting point and a stitch path ending point may be determined (S8), and a new initial stitch path 310 may be created (S9). If the value stored in the reference distance storage area 1201 becomes smaller than a predetermined threshold value (for example, 2 mm), it may become difficult to sew the stitches with the embroidery sewing machine 3, even if a well-balanced sewing path is created. Therefore, in such a case, the CPU 11 may determine that it is impossible to form a stippling stitch in this sewing area and may end the processing after displaying an error message.
After the initial stitch path 310 is created (S9), movement processing may be performed (see S10 and
After the stitch path 410 is evenly arranged in the sewing area 119 by the movement processing (S10), special processing may be performed (S11). The special processing may be performed to move the stitch path if there is a pointed portion or a tapered end portion in the sewing area 119. This will be described in detail later with reference to
After the special processing (S11), transformation processing of the stitch path 410 may be performed (S12). In the transformation processing, the coordinates of the branch points on the stitch path 410 may be moved, and may thereby create a transformed stitch path 510 as shown in
Subsequently, a transformed stitch path 510 may be changed into a Bezier curve to create, for example, a curve path 610 shown in
Subsequently, pattern disposition processing may be performed (S14). In the pattern disposition processing, the unit pattern selected in S2 may be disposed on the curve path at the intervals input in S2. In the example shown in
Subsequently, stitch creation processing may be performed (S15). In the stitch creation processing, needle drop points may be determined on the curve path 610 based on the stitch length that may be stored in the stitch length storage area 1202 and the stitch information storage area 1209. In the sewing data creation apparatus 1, the coordinates of the needle drop points may be determined in such a manner as to provide an even stitch length, that is, an even distance between the needle drop points. A method for determining the coordinates of the needle drop points will be described in detail later with reference to, for example,
For example, as shown in
After the stitch creation processing (S15), sewing data, which may be used in the embroidery sewing machine 3, may be created based on the information of the needle drop points stored in the stitch information storage area 1209 (S16), and the main processing may be terminated.
In such a manner, the initial stitch path 310 may be created on the profile line network 210 disposed in the sewing area 119 (S9), the initial stitch path 310 may be moved through the movement processing in such a manner that the stitch path may be evenly arranged in the sewing area 119, and may thereby create the stitch path 410 (S10). Further, the stitch path 410 may be transformed to create the transformed stitch path 510 (S12) and the transformed stitch path 510 may be further changed into a Bezier curve to create the curve path 610 (S13), thereby determining a path for a stippling stitch. Then, the unit patterns may be disposed on the determined curve path 610 (S14) to create stitches including the unit patterns (S15), and may further create the sewing data that enables sewing by the embroidery sewing machine 3 (S16). Based on thus created sewing data, the embroidery sewing machine 3 may be driven to sew the stippling stitch and the unit patterns as decorative patterns onto the work cloth held by the embroidery frame 31.
Next, an example of a method for creating the initial stitch path 310 will be described in detail below with reference to
In an exemplary embodiment, the initial stitch path 310 may be formed by tracing the side line segment closer to the outer profile line 113 of the sewing area 119 leftward from the stitch path starting point P1 as a starting point up to the stitch path ending point P99. In other words, the side line segment closer to the outer periphery of the sewing area 119 may be successively traced clockwise along the outer periphery of the sewing area 119. For example, first, a line segment intersected by the outer profile line 113 of the sewing area 119 may be searched for from among the peripheral side line segments of the stitch path starting point P1, that is, seg1, seg2, and seg3. In an example shown in
Next, a direction in which the initial stitch path may be extended from the branch point P4 will be described below with reference to
The example shown in
Subsequently, the coordinates of the branch point P6 on the right side may be calculated and it may be determined whether its coordinates are stored in the stitch path storage area 1207. For example, at the stage of
Next, as shown in
In such a manner, the next branch point of the branch point newly determined on the initial stitch path may be sequentially determined, thereby creating the initial stitch path 310 as shown in
The following will describe an example of special processing for creation of the initial stitch path 310 with reference to
As shown in
In such an example, two of the side line segments among seg201, seg202, and seg203 having the branch point P211 as the endpoint may be selected, excluding one of the side line segments already determined as the initial stitch path 720. Then focus may be made on a regular hexagon, which has the selected two side line segments. In the example of
If the line segment seg204 and the profile line 711 intersect, the line segment seg204 connecting the branch points P215 and P211 may pass through outside the sewing area 710. In such a case, the branch points P215 and P211 need not be connected. Therefore, the initial stitch path 720 may not be extended any further and the stitch path ending point P209 may not be reached. In such a manner, there may be a case where none of the three peripheral branch points satisfy the conditions for being a new point on the initial stitch path 720. In a regular hexagon that has two side line segments excluded from the initial stitch path 720 out of three peripheral side line segments of this branch point, a line segment connecting the facing vertexes may intersect with a profile line of a sewing area. In this case, a message may be displayed to notify the user that a stitch path is difficult to create and the processing may be terminated. Therefore, the user may change the sewing area, for example, subdivide the sewing area into right and left regions at the narrowed portion, and may perform the main processing again.
Next, an example of the operations of moving the initial stitch path 310 to thereby create a stitch path 410 evenly arranged in the sewing area 119 will be described in detail below with reference to the flowchart of
For example, the initial stitch path 310 may be an initial state, and the branch points on the stitch path may be sequentially traced from the stitch path starting point P1 to the stitch path ending point P99. It may then be determined whether the state corresponds to a pattern (movement pattern) that the stitch path may be moved. If the state corresponds to a stitch path movement pattern, the stitch path may be moved. In the present example, various modes may be provided to define a probability of moving the stitch path, depending on the state of a branch point, which may correspond to a movement pattern. In tracing the branch points from the stitch path starting point P1 to the stitch path ending point P99, the probability may be determined in accordance with the corresponding mode. Thus, the stitch path may be moved at random, to result in the stitch path arranged in the sewing area 119 in a balanced manner.
In the following, first, examples of the movement patterns will be described and then examples of the modes will be described, with reference to
First, the movement pattern A will be described below. Focusing on one branch point, branch points may be traced counterclockwise. The branch points may be, for example, respective vertexes of a regular hexagon having the focused-on branch point (target point) as one of its vertexes. Then, it may be determined whether these branch points have their coordinates stored in the stitch path storage area 1207 and are thus already on the stitch path. If none of the first, second, or third vertexes is on the stitch path, as counted from the target branch point counterclockwise, while the fourth vertex is a point on the stitch path, this state may be determined to correspond to the movement pattern A. In other words, it may be a state where a side line segment connecting the target point and the fifth vertex when counted counterclockwise and another side line segment connecting the fifth and fourth vertexes may have already been determined as the stitch path.
If the movement pattern A applies, two side line segments, a side line segment connecting the target point and the fifth vertex and another side line segment connecting the fifth and fourth vertexes, may have been determined as the stitch path. Because the regular hexagon may be formed by six side line segments, none of the remaining four side line segments may be determined to be the stitch path. Therefore, because the total length of the four side line segments may be longer than that of the two side line segments, the stitch path may be moved to the four side line segments. That is, the stitch path may be changed to the side line segments connecting, counterclockwise, the target point and the first vertex, the first and second vertexes, the second and third vertexes, and the third and fourth vertexes.
In the example shown in
Accordingly, the information of the branch point P4 (the fifth point as counted from the target point counterclockwise) may be deleted from the stitch path storage area 1207. Instead, the information of the branch point P3 (for example, the first point as counted from the target point counterclockwise), P10 (for example, the second point as counted from the target point counterclockwise), and P11 (for example, the third point as counted from the target point counterclockwise) may be stored in the stitch path storage area 1207 where the information of the branch point P4 may have been previously stored. As a result, the information of the branch points P1, P3, P10, P11, P6, P7, . . . may be stored in the stitch path storage area 1207, for example, in this order.
Consequently, as shown in
Next, the movement pattern B will be described below. In this example, with one branch point as a target point, branch points may be traced counterclockwise. The branch points may be the respective vertexes of a regular hexagon having the target point. Then, it may be determined whether these branch points have their coordinates stored in the stitch path storage area 1207 and are already on the stitch path. If none of the first, second, third, and fourth vertexes, as counted from the target point counterclockwise, are on the stitch path, but the fifth vertex is on the stitch path, this state may be determined as corresponding to the movement pattern B. In other words, the stitch path in the target regular hexagon may be referred to as a state where only one side line segment connecting the target point and the fifth vertex.
If the movement pattern B applies, only one side line segment connecting the target point and the fifth vertex may be on the stitch path. Because the regular hexagon may be formed by six side line segments, none of the remaining five side line segments need to be determined as the stitch path. Because the total length of five side line segments may be longer than the length of the one side line segment, the CPU 11 may move the stitch path to the five side line segments. That is, the CPU 11 may change the stitch path to the side line segments connecting the target point and the first vertex, the first and the second vertexes, the second and the third vertexes, the third and the fourth vertexes, and the fourth and the fifth vertexes when counted counterclockwise.
In the example shown in
Accordingly, in the stitch path storage area 1207, the information of the branch points P32, P33, P34, and P35 may be stored between the branch point P31 (target point) and the P36 (the fifth point as counted counterclockwise from the target point), so that the information of the branch points P30, P31, P32, P33, P34, P35, P36, P37, . . . may be stored in this order.
As a result, as shown in
The following will describe an example of a method for determining which one of three peripheral regular hexagons of a target point should preferably be focused on as a target regular hexagon. As shown in
If the target point is not the stitch path starting point P1, but another point on the stitch path, two peripheral side line segments may be focused on, excluding one side line segment that may be the stitch path on the side where the movement determination has already been made. A regular hexagon that has these two side line segments on the profile lines may be referred to as the target regular hexagon. In the example shown in
Next, an example of a mode, which defines a probability of actually moving the stitch path when the movement pattern A or B applies, will be described below with reference to
Further, if the movement pattern B applies, there may be two cases depending on the type of the target point. The first case may be when the branch point next to the current target point in the clockwise direction is a branch point which satisfies the following conditions. The conditions may be that the branch point has been newly determined as a point on the stitch path when the stitch path was moved as its state corresponded to the movement pattern B, and is a vertex facing a vertex, which may have been the target point in the regular hexagon when the stitch path was moved. For example, as shown in
Consider moving the stitch path when the first case applies. In the example shown in
In the second case, the first case as shown in
If the movement pattern B may be applied to both of the side line segments segB2 and segB4, the probability of actually moving the stitch path may be ⅓. Further, if the movement pattern B may be applied to only one of the side line segments segB2 and segB4, the probability of actually moving the stitch path may be 1/15. Even further, if the movement pattern B may be applied to neither of the side line segments segB2 and segB4, the probability of actually moving the stitch path may be 0. The fact that the movement pattern B may be applied to neither of the side line segments segB2 and segB4 means that there may be no possibility of further moving the stitch path after the movement, which may result in a stitch path with a complicated shape. On the other hand, if the movement pattern B may be applied to one of the side line segments segB2 and segB4, this may mean that there may be a possibility of further moving the stitch path after the movement, which may result in a stitch path with a complicated shape. Further, the fact that the movement pattern B may be applied to both of the side line segments segB2 and segB4 means that there may be a higher possibility of further moving the stitch path after the movement, which results in a stitch path with a complicated shape. Therefore, the higher the possibility of further moving the stitch path after the movement and developing into a complicated shape, the higher the probability may become.
Next, the “mode 2” will be described below. In the mode 2, if the movement pattern A applies, the probability of actually moving the stitch path may be set to ¼. On the other hand, if the movement pattern B applies, similar to the mode 1, there may be two cases, which may be classified based on the type of the target point. In the first case, if a branch point next to the current target point in the clockwise direction is a branch point that has been newly determined as the point on the stitch path when the stitch path was moved as its state corresponded to the movement pattern B and that was a vertex facing the target point in the regular hexagon when the stitch path was moved, the probability of actually moving the stitch path may be set to 0. If the target point does not correspond to the first case, and the second case applies, the probability may be set to 1.
Next, the “mode 3” will be described below. In the mode 3, for example, in both cases where the movement pattern A and the movement pattern B apply, the probability of actually moving the stitch path may be set to 1. That is, if the state corresponds to one of the two movement patterns, the stitch path should be moved.
In such a manner, the probability of actually moving the stitch path may increase in the order of modes 1, 2, and 3. In mode 3, if any one of the movement patterns applies, the stitch path may be moved. Therefore, if the processing is performed repeatedly on the branch points on the stitch path in mode 3, there may be no branch point whose state corresponds to the movement pattern A or B in the end.
The following will describe in detail the movement processing with reference to the flowchart of
Then, it may be determined whether the processing has been performed on all of the branch points (S23). For example, it may be determined whether the target point is the stitch path ending point P99. For example, if the value stored in the target point storage area 1212 is equal to the number of the coordinates of the branch points stored in the stitch path storage area 1207, it may be determined that the target point is the stitch path ending point P99.
If the processing has not yet been performed on all of the branch points (NO in S23), it may be first determined whether the movement pattern A applies (S24). The determination may be made based on whether the above-described movement pattern A applies. For example, the determination may be based on whether the first, second, and third vertexes of a target regular hexagon as counted from the target point counterclockwise are not on the stitch path, but the fourth vertex is on the stitch path.
If it is determined that the movement pattern A applies (YES in S24), a determination may be made based on the probability of actually moving the stitch path (S26). For example, the probability defined for the mode may be used, as described above. Because the current mode is the “mode 1”, the probability may be ¼, if the target point is on the initial stitch path. On the other hand, if the target point is not on the initial stitch path, that is, if the target point is on the stitch path after the movement, the probability may be 1/12.
The determination of the probability may be based on random numbers. To obtain the random numbers, a known random number generation program may be used. If a predetermined value is given to the random number generation program as an argument, the predetermined number may be passed as the random number. In an exemplary embodiment, the random number may be obtained by giving the sequence number of the target point as the argument to the random number generation program. In determination of whether to actually move the stitch path, values for determining to “move” based on a defined probability may be set beforehand. Then, it may be determined whether to move the stitch path according to whether the obtained random number is one of the defined values or not. The number of random numbers generated by the random number generation program may be defined by the random number generation program. For example, if the probability is ¼, ¼ of the random numbers generated by the random number generation program may be defined as values based on which determination is made to “move”. Those values may be stored in the miscellaneous information storage area 123 in the hard disk drive 120.
If the starting point SP and ending point EP are at the same position in the same sewing area 119, the initial stitch path 310 may also be the same. Therefore, the branch points to be the target points in the movement processing and arguments given to the random number generation program may also be the same. Accordingly, if the starting point SP and ending point EP are at the same position for the same sewing area 119, the initial stitch path 310 may be moved based on the same target points, resulting in the same stitch path 410. If the starting point SP and the ending point EP are not at the same position, the stitch path 410 may extend from the stitch path starting point P1 to the stitch path ending point P99.
If it is determined to “move” the stitch path (YES in S26), the stitch path may be moved according to the movement pattern A (S27) as described above with reference to
On the other hand, if it is not determined to “move” the stitch path (NO in S26), a branch point following the current target point on the stitch path may be set as the next target point (S30) and the process returns to S23. More specifically, the value in the target point storage area 1212 may be incremented by 1.
If the movement pattern A does not apply (NO in S24), it may be determined whether the movement pattern B applies (S25). This determination may be made on whether the current state corresponds to the above-described movement pattern B, that is, whether the first, second, third, and fourth vertexes of a target regular hexagon, when traced counterclockwise, are not on the stitch path, but the fifth vertex is on the stitch path.
If it is determined that the state corresponds to the movement pattern B (YES in S25), it may then be determined whether the stitch path is to be actually moved based on a probability of moving the stitch path (S31). For example, the predetermined probability for the current mode as described above may be used. Because the current mode is the “mode 1” in the above-described first case (when the branch point next to the current target point in the clockwise direction has been newly determined as a point on the stitch path when the stitch path was moved as the movement pattern B was applied, and is a vertex facing another vertex, which was the target point in the regular hexagon when the stitch path was moved) the probability of actually moving the stitch path may be 0. Therefore, if the current state corresponds to the first case, it may not be determined to move the stitch path (NO in S31).
On the other hand, if the current state does not correspond to the first case, but corresponds to the second case, as described above with reference to
Similar to the case of the movement pattern A, the random numbers generated by the random number generation program may be employed to determine whether the stitch path is to be moved.
If it is determined to “move” the stitch path (YES in S31), the stitch path may be moved according to the movement pattern B (S32), and the movement counter may be incremented by 1 (S33) as described above with reference to
On the other hand, if it is determined to “move” the stitch path (NO in S31), the next branch point of the branch point currently being the target point on the stitch path may be set as the next target point (S35), and the process returns to S23. For example, the value in the target point storage area 1212 may be incremented by 1.
Further, if the current state does not correspond to the movement pattern B either (NO in S25), the next branch point of the branch point currently being the target point on the stitch path may be set as the next target point (S36), and the process returns to S23. For example, the value in the target point storage area 1212 may be incremented by 1.
Then, the processing of S23-S36 may be repeated and, if it is determined that the movement pattern A or B may be applied and that the stitch path is actually to be moved, the processing of moving the stitch path may be performed. If the target point becomes the stitch path ending point P99 and all of the branch points have been through the processing, the process may advance to S41.
In S41, it may be determined whether the stitch path has been moved. The determination may be made by checking whether the value of the movement counter is at least 1. If the stitch path has been moved (YES in S41), there still exists a possibility that the stitch path may be further moved in the “mode 1”, so that the process may return to S21 to initialize the movement counter to 0 (S21) and the stitch path starting point P1 may be set as the target point (S22). Then, the processing of S23-S36 may be repeated and, if it is determined that the movement pattern A or B may be applied and the stitch path is to be moved, the processing of moving the stitch path may be performed. If the target point becomes the stitch path ending point P99 and all of the branch points have been through the processing, the process may advance to S41.
Then, the processing of S21-S41 is repeated. If the stitch path may not be moved any more in the “mode 1” (NO in S41), it may be determined whether the process is in the “mode 3” (S42). Because it may still be in the “mode 1”, not in the “mode 3” (NO in S42), 1 may be added to the value stored in the mode storage area 1211 to proceed to the “mode 2” (S43). Then, the process may return to S21.
Then, the processing of S21-S36 may be repeated in the “mode 2”. This time, in S26 and S31, the predetermined probability for the “mode 2” may be employed to determine whether to move the stitch path. For example, if the movement pattern A applies (YES in S24), it may be determined to move the stitch path at a probability of ¼. If the movement pattern B applies (NO in S25) and the state corresponds to the first case, the probability of moving the stitch path may be 0 and so it may not be necessary to move the stitch path (NO in S31). On the other hand, if the state does not correspond to the first case, the probability may be 1 and it may be determined that the stitch path should be moved (YES in S31).
In the “mode 2”, the processing of S21-S36 may be repeated. If it is also determined that the movement pattern A or B may be applied and the stitch path may be moved, the processing of moving the stitch path may be performed. If the target point becomes the stitch path ending point P99 and all of the branch points have been through the processing, the process may advance to S41.
In S41, it may be determined whether the stitch path has been moved (S41). The determination may be made by checking whether the value of the movement counter is at least 1. If the stitch path has been moved (YES in S41), there still exists a possibility that the stitch path may be further moved in the “mode 2”, so that the process returns to S21 to initialize the movement counter to 0 (S21), and the stitch path starting point P1 may be set as the target point (S22). Then, the processing of S23-S36 may be repeated. If it is also determined that the movement pattern A or B may be applied and the stitch path is to be moved, the processing of moving the stitch path may be performed. If the target point becomes the stitch path ending point P99 and the branch points have been through the processing, the process may advance to S41.
Thus, the processing of S21-S41 may be repeated. If the stitch path may also not be moved any more in the “mode 2” (NO in S41), it may be determined whether the process is in the “mode 3” (S42). At this time, because it is in the “mode 2”, not in the “mode 3” (NO in S42), 1 may be added to the value stored in the mode storage area 1211 and may proceed to the “mode 3” (S43). Then, the process may return to S21.
Then, the processing of S21-S36 may be performed in the “mode 3”. Here, in S26 and S31, the predetermined probability for the “mode 3” may be employed to determine whether to actually move the stitch path. For example, in both cases where the movement patterns A or B apply, the probability may be 1. In other words, when the movement pattern A applies (YES in S24) or when the movement pattern B applies (YES in S25), it may be determined that the stitch path is to be moved (YES in S26, YES in S31).
In the “mode 3”, the processing of S21-S36 may be repeated. If it is also determined that the movement pattern A or B may be applied and the stitch path is to be moved, the processing of moving the stitch path may be performed. If the target point becomes the stitch path ending point P99 and the branch points have been through the processing, the process may advance to S41.
In S41, it may be determined whether the stitch path has been moved (S41). The determination may be made by checking whether the value of the movement counter is at least 1. If the stitch path has been moved (YES in S41), there still exists a possibility that the stitch path may be further moved in the “mode 3”, so that the process may return to S21 to initialize the movement counter to 0 (S21), and the stitch path starting point P1 may be set as the target point (S22). Then, the processing of S23-S36 may be repeated. If it is also determined that the movement pattern A or B may be applied and the stitch path is to be moved, the processing of moving the stitch path may be performed. If the target point becomes the stitch path ending point P99 to indicate that all of the branch points have been through the processing, the process may advance to S41.
Then, the processing of S21-S41 may be repeated. If the stitch path also may not be moved any more in the “mode 3” (NO in S41), it may be determined whether the process is in the “mode 3” (S42). For example, if the process is in the “mode 3” (YES in S42), the movement processing may be terminated, and the process may return to the main processing.
By thus performing the movement processing, the stitch path of the initial stitch path 310 (see
Next, an example of the special processing (S11 of
As shown in
Considering this, as shown in
For example, from the information of the branch points P100, P101, and P102 previously stored in this order in the stitch path storage area 1207, the information of the branch point P101 may be deleted. Instead, the information of the branch points P106 and P107 may be inserted. Consequently, the information of the branch points P100, P106, P107, and P102 may be stored in this order in the stitch path storage area 1207.
Next, by way of example, the processing of creating the transformed stitch path 510 (S12 of
Subsequently, the second movement may be performed. As shown in
The first movement and the second movement may be performed in such a manner as to change the coordinates of the branch point P52 into those of P62. Consequently, as shown in
The above-described first movement and second movement may be performed on all of the branch points on the stitch path 410 evenly arranged in the sewing area 119 by the movement processing (S10 of
Next, by way of example, unit pattern disposition processing will be described below with reference to the flowcharts of
Subsequently, an initial value of “0” may be stored in the total interval storage area 1217 in the RAM 12 (S53). Then, “1” may be added to the variable m to provide “2” (S54). It may then be determined whether the processing has been completed on all of the points, based at least on whether the value of the variable m exceeds the number of points whose information may be stored in the curve storage area 1208 (S55). At this time, because the variable is still m=2 and the processing may not have been completed on all of the points (NO in S55), coordinates of the m'th point, that is, the second point in this example, may be determined as those of an expected disposition point and may be stored in the expected disposition position storage area 1216 (S56). Then, a distance from the (m−1)'th point to the m'th point on the curve path may be added to the total interval storage area 1217 (S57). In this example, the distance from the first point, that is, the distance from the starting point to the second point on the curve path may be added.
Then, a value stored in the total interval storage area 1217 may be compared to a value (disposition interval) stored in the disposition interval storage area 1214 and it may be determined whether a predetermined disposition interval has been gained from the last disposition point (S58). When a disposition point is determined and has its coordinates stored in the pattern information storage area 1215 (S51, S60, and S61), the total interval storage area 1217 may be cleared to the initial value of “0” (S53). Accordingly, the value stored in the total interval storage area 1217 may indicate the distance from the last disposition point to the current expected disposition point.
If a sufficient distance of the disposition interval has not yet been gained from the last disposition point (NO in S58), the process may advance to S54 and add “1” to the variable m (S54). That is, the next point may be selected from the sequence of points stored in the curve storage area 1208. If the processing has not yet been completed on all of the points (NO in S55), the coordinates of the m'th point, that is, the coordinates of the third point in this example, may be determined as those of the expected disposition point and may be stored in the expected disposition position storage area 1216 (S56). The distance from the (m−1)'th point to the m'th point may be added to the total interval storage area 1217 (S57). In this example, the distance from the second point to the third point may be added. If the predetermined interval has not yet been gained from the last disposition point (NO in S58), the process may return to S54 again and the processing of S54-S58 may be repeated until the predetermined interval has been gained from the last disposition point.
If the predetermined interval has been gained from the last disposition point (YES in S58), it may then be determined whether there is a disposition point in a predetermined area (S59). In the present exemplary embodiment, the predetermined area may be a circle which has the expected disposition point as its center and has a radius half of the disposition interval between the unit patterns, which may be stored in the disposition interval storage area 1214. In an example shown in
Then, the process may return to S53, “0” may be stored as the total interval in order to determine the next disposition point (S53), and the processing of S54-S58 may be repeated. If the disposition interval has been gained (YES in S58), it may be determined at the current expected disposition point whether there is a disposition point in the predetermined area (circle having the expected disposition point as its center and half the disposition interval as its radius) (S59). If there is no disposition point (NO in S59), the expected disposition point may be determined as a disposition point (S61) and the process may return to S53.
On the other hand, if there is a disposition point in the predetermined area (YES in S59), expected disposition position movement processing may be performed (see S60 and
Consequently, in the expected disposition position movement processing, the expected disposition point is moved on the curve path by a predetermined distance in a direction in which the disposition point has been already positioned. Also, it may be determined whether a destination of this movement may be set as a disposition point. Hereinafter, a direction in which a disposition point has been already positioned on the curve path is referred to as a “retreating direction”. In the expected disposition position movement processing, as shown by the flowchart of
Then, for example, “1” is added to the variable i so that it may be “1” (S72). Subsequently it may be determined whether the value of the variable i is larger than “5” (S73). Here, the variable is compared to “5”, because movement of the expected disposition position in the retreating direction should be tried up to five times. In this example, the value of variable i is 1 and not larger than 5 (NO in S73), so that the expected disposition point is moved (S74). For example, a portion of the curve path between the expected disposition point and the last disposition point may be divided into ten and a point which divides the portion internally at a ratio of i:(10−i) may be determined as the expected disposition point after movement. In this example, the variable i is 1, so that the point which divides the portion internally at 1:9 may be determined as the expected disposition point. That is, the expected disposition point may be moved on the curve path in the retreating direction by 1/10 of the distance along the curve path between the expected disposition point and the last disposition point. Coordinates of this point may be stored in the expected disposition position storage area 1216. In an example shown in
Then, it may be determined whether there is a disposition point in a circle C4, which has the point MP3 as its center and (disposition interval)×½ as its radius (S75). In the example shown in
Then, it may be determined whether there is a disposition point in a circle C5 which may have the point MP4 as its center and (disposition interval)×½ as its radius (S75). In the example shown in
On the other hand, if there is a disposition point in the predetermined area even when the variable i=2, the processing of S72-S75 may be further performed. The processing of S72-S75 may be repeated and, if the value of variable i becomes larger than 5 (YES in S73), the movement in the retreating direction may be stopped because further movement in the retreating direction disposes the point too close to the last disposition position. Therefore, the expected disposition point may be moved in a direction opposite to the retreating direction, that is, in a direction in which a disposition point has not yet been positioned on the curve path (hereinafter referred to as “advancing direction”). For example, the initial value 0 may be first stored as a variable j (S81). This variable j, whose storage area may be provided in the RAM 12, may be used to count the number of times of moving the expected disposition point from its first expected disposition point in the advancing direction.
Then, for example, 1 may be added to the variable j so that it may become 1 (S82). Subsequently, it may be determined whether the value of the variable j is larger than 5 (S83). In this example, the variable is compared to 5, because movement of the expected disposition position in the advancing direction should be tried up to five times. The value of the variable j at this example is still 1 and not larger than 5 (NO in S83), so that the expected disposition point may be moved (S84). For example, the expected disposition point on the curve path may be moved in the advancing direction by 1/10 of a distance between the expected disposition point and the last disposition point along the curve path. Coordinates of this point may be stored in the expected disposition position storage area 1216. In an example shown in
Then, it may be determined whether there is a disposition point in a circle C10, which has a point MP10 as its center and (disposition interval)×½ as its radius (S85). In the example shown in
If there is no disposition point in the predetermined area (NO in S85), it means that the expected disposition point may be determined as a disposition point, so that coordinates of this point may be stored as those of the disposition point in the pattern information storage area 1215 (S91). Then, the process may return to the pattern disposition processing (see
In such a manner, unit patterns specified by a user may be disposed on a curve path at a disposition interval specified by the user. Further, if there is a disposition point already in the vicinity of an expected disposition point (in a predetermined area), the disposition point of the unit pattern may be determined by moving the expected disposition point little by little in order to prevent the unit patterns from overlapping with or coming too close to each other. Therefore, this determination may prevent the patterns from overlapping or coming too close to each other to disturb the balance of a design as a whole, thereby obtaining the sewing data used to form stitches of a high quality design.
Next, by way of example, determination of coordinates of needle drop points from the curve path 610 will be described below with reference to
First, it may be sequentially determined whether an angle is less than 120 degrees formed at each of the points that constitute the curve path 650 as a vertex, starting from the next point to the stitch path starting point P601. In the case of the n'th point, the angle between a line segment connecting the (n−1)'th point and the n'th point and a line segment connecting the n'th point and the (n+1)'th point may be compared with 120 degrees. If the angle is less than 120 degrees, the point may be determined as a feature point. In the example shown in
First, the number of needle drop points to be disposed on each of the divided curves may be calculated. For this purpose, the length of the divided curves may first be calculated. To calculate the length, the distance between each pair of the neighboring points may be added up. Then, the length may be divided by the stitch length which may be stored in the stitch length storage area 1202 to obtain a quotient. Then, the quotient may be rounded to the whole number and 1 may be added to it, which may provide the number of needle drop points which are to be disposed on the divided curve.
Next, a distance between the needle drop points on this divided curve may be calculated. For example, (distance between the needle drop points)=(length of the divided curve)/(number of needle drop points). Then, as shown in
In the example shown in
In such a manner, a curve path may be divided at a feature point into divided curves and the distance between the needle drop points along the divided curve may be calculated based on a value, for example, stored in the stitch length storage area 1202. As a result, the needle drop points may be evenly disposed between the feature points, and between the feature point and the stitch path starting point or ending point, thereby obtaining sewing data used to form stitches of a design having a beautiful shape.
Further, the unit patterns may be disposed on the curve path 650. The information of the needle drop points relating to the unit patterns may be stored in the unit pattern storage area 122. The information may refer to the disposition reference point 589 (see
For example, next to the coordinates of the needle drop point determined as the closest, the coordinates of the disposition point may be inserted in the stitch information storage area 1209. Then, an inclination of a tangent line of the curve path at the disposition point may be calculated. Next, the coordinates of the other needle drop points used to form the unit pattern may be rotated in such a manner as to match the inclination of the tangent line by using the disposition reference point as an axis point. Using the disposition reference point as a disposition point, the coordinates of the other needle drop points after the rotation may be calculated. Then, a group of the coordinates of the other needle drop points may be inserted following the coordinates of the disposition reference point (disposition point) in the stitch information storage area 1209. Finally, the coordinates of the needle drop point determined as being the closest may be stored in the stitch information storage area 1209. In such a manner, the information of the needle drop points which may create stitches to form a unit pattern may be added to the information of the needle drop points which may create stitches to form the curve path.
The present disclosure is not limited to the above-described embodiment, but, of course, may be modified variously. Although the above embodiment has employed a regular hexagon as a unit area, instead, a line-symmetrical hexagon may be employed. Preferably, the hexagon has a vertex with an angle smaller than 180 degrees. Other than a hexagon, the unit area may be a polygon such as a regular triangle, a rectangle, a rhomboid, a parallelogram, or a pentagon. When disposing the polygons as the unit areas, orientation of the polygons need not be constant. Further, although the above embodiment has disposed the regular hexagons in such a manner as to fill the sewing area, there may be a gap between the unit areas as far as they are in contact with each other.
In the above-described embodiment, the stitch path 410 that is evenly disposed in the sewing area 119 may be transformed through the transformation processing (S12), changed into a curve through the Bezier curve processing (S13), and then the needle drop points may be disposed on the curve, thereby creating stitch information. However, the stitch information may be created by disposing the needle drop points on a stitch path after the movement processing of S10 is completed. Alternatively, the stitch information may be created by disposing needle drop points on a stitch path after the special processing of S11 is completed or it may be created after disposing unit patterns on a transformed stitch path after the transformation processing of S12 is completed.
In the above embodiment, a stitch path may be created in the sewing area 119 which may be given an offset from the overall sewing area 110 in S6 in the main processing shown in
In the above-described embodiment, the information of a curve path may be created in the main processing of sewing data creation. However, it is not always necessary to create a curve path when disposing a unit pattern. Rather than creating a curve path, a curve path already created and stored in the hard disk drive 120, or a curve path created in any other apparatus and read from the memory card 115 or the CD-ROM 114, may be used. Also, if the sewing data creation apparatus 1 is connected to a network, a curve path stored in any other apparatus connected to the network may be used. The curve path which is used here is not limited to that created particularly for stippling stitches but may be information that indicates one curve. For example, a curve drawn by drawing software or a curve which is transformed from an equation may be used. Any information that represents a curve by an aggregate of a plurality of points may also be used as a curve path.
Then, the pattern disposition processing may be performed in a manner similar to that of the above-described embodiment (S107), and the stitch creation processing may be performed (S108). Subsequently, sewing data that may be used for sewing may be created based on the information of the needle drop points that may be in the stitch information storage area 1209 (S109), and the processing may be terminated. The embroidery sewing machine 3 may be driven on the basis of the previously created sewing data, to sew a stippling stitch and the unit patterns serving as decorative patterns on the work cloth held by the embroidery frame 31.
In the above-described embodiment, when the unit patterns are disposed on the curve path, they may be oriented in an advancing direction of the curve path. The direction, however, may be specified by the user. For example, besides the “advancing direction of the curve path”, the direction may be a “retreating direction of the curve path”, a “rightward direction with respect to the advancing direction of the curve path”, a “leftward direction with respect to the advancing direction of the curve path”, a “downward direction (for example, increasing direction along the y-axis) of the sewing area 119”, an “upward direction (for example, decreasing direction along the y-axis) of the sewing area 119”, a “rightward direction (for example, increasing direction along the x-axis) of the sewing area 119”, and a “leftward direction (for example, decreasing direction along the x-axis) of the sewing area 119”. A screen may be displayed on the display 24 to show these various directions in such a manner that they may be selected. Thus, the user may selectively enter the direction of the unit pattern by manipulating the mouse 21 or the keyboard 22.
Examples will be described below with reference to
The orientation of the unit patterns is not limited to these. Also, the number of the orientations of the unit patterns is not limited to one, so that a plurality of orientation may be used sequentially.
Although the above embodiment has selected one kind of unit pattern, a plurality of unit patterns may be stored in a set in the unit pattern storage area 122. In this case, the plurality of unit patterns may be disposed in sequence. For example, if two unit patterns of a unit pattern 450 and a flower-shaped unit pattern 481 shown in
The number of the kinds of the unit patterns need not be two, but, of course, may be larger than two, for example, 3, 4, or 100. Further, as shown in
Instead of setting the same disposing interval for all the unit patterns, the disposing interval may be set for each of the unit patterns. For example, in an example shown in
In the above embodiment, a determined size for each of the unit patterns may be stored in the unit pattern storage area 122. However, only basic information of the graphic of the unit patterns may be stored beforehand, to permit the user to specify the size of the unit patterns.
In the above embodiment, the needle drop points used to create stitches of the unit patterns may be inserted into the needle drop points used to create stitches of the curve path, and may thereby create the information of the needle drop points. That is, the information may be the sewing data for sewing decorative patterns together with the stippling stitch line. However, the sewing data may be separately prepared for sewing the stippling stitch line and the decorative patterns. For example, if different thread colors are employed for the stippling stitch and the decorative patterns, it may be useful to create different information for the needle drop points of the stippling stitch and the decorative patterns. If a plurality of colors is employed for the decorative patterns, the needle drop point information may be created for each of the colors. In such a case, the needle drop point information of the stippling stitch may be created from the information of the needle drop points on the curve path alone, without inserting the needle drop point information of the decorative patterns as described above. On the other hand, the information of the needle drop points of the decorative patterns may be created from only the needle drop points inserted into the information of the needle drop points created from the curve path in the above-described embodiment. Then, based on the previously created sewing data, a so-called multi-needle type embroidery sewing machine equipped with a plurality of needle bars may be used for sewing in place of the embroidery sewing machine 3 of the above-described embodiment. In this case, if thread spools for desired thread colors are set to the respective needle bars beforehand, it may eliminate the trouble to replace the thread spool each time the thread color is changed.
In the above-described embodiment, the height of a unit pattern may be added as an offset when determining the size of a unit area. However, the value to be added is not limited to the height of the unit pattern itself but may include its multiplied value by a predetermined value (for example, 0.9, 1.1, or 1.2). Further, the offset of the sewing area is not limited to the (height of the unit pattern)×½. The value by which the height of the unit pattern is multiplied is not limited to ½, but may be any other predetermined value (for example, 0.55 or 0.6). In the above embodiment, when determining a disposition point, the expected disposition point may be moved by 1/10 of the distance from the last disposition point (disposition interval) each time, up to five times. However, the movement distance and the number of times of the movement are not limited to these. The movement distance may be any other value of 1/9 or 1/11 of the distance from the last disposition point or any other value, such as 0.2 mm, not based on the distance from the last disposition point. Also, although the processing may be terminated when the disposition point has been moved to the middle between the last disposition point and the expected disposition point, it may be moved more than or less than five times. Of course, the number of times depend on the movement distance.
In the above embodiment, one reference distance may be set and used to determine the size of the unit area and the radius of the circle when creating the transformed stitch path by moving the branch points. However, different values may be inputted for a reference distance for the size of the unit area and a reference distance for the radius of the circle. Rather than causing the user to enter the reference distance, a predetermined value may be used as the reference distance. Further, the reference distance may be determined on the basis of the area or the size of a sewing area.
In the above embodiment, the stitch path starting point may be determined as the branch point closest to the starting point. Instead of the branch point, a point on the side line segment closest to the starting point may be employed. This also holds true for the stitch path ending point. Similarly, although the starting point and the ending point are on the profile line 111 of the sewing area 119 in the embodiment, they may be set in the sewing area 119. Further, rather than making the user specify the starting point and the ending point, arbitrary points may be set by a program.
In the above-described embodiment, when creating the initial stitch path 310, branch points may be traced in the clockwise direction along the profile line of the sewing area 119. However, they may also be traced counterclockwise.
In the movement processing (S6 of
In the above-described embodiment the vertexes of one unit area (regular hexagon), that is, the branch points on its profile line may be traced to determine whether the stitch path is to be moved. However, instead of tracing the branch points on the profile line of one unit area, the branch points on an outer periphery of a plurality of the unit areas may be traced to determine whether the stitch path may be moved.
In the above embodiment, all of the branch points on the stitch path 410 may be moved to create the transformed stitch path 510. Rather than moving all the branch points, however, only some of the points may be moved. For example, only the branch points having sequences of even numbers or those as multiples of 3 may be moved, or it may be determined whether to move each of the branch points at a predetermined probability by a random number. Further, only the first movement or the second movement may be performed. Even further, it may be arranged such that only the first movement would be performed on some points, only the second movement would be performed on other points, and both the first movement and the second movement would be performed on the other points.
In the above-described embodiment, it may be determined whether to move the stitch path if the movement pattern A or B applies in the movement processing (S6 of
In the “mode 1”, when the movement pattern A applies, the case may be further classified into two cases according to whether its target point is on the initial stitch path 310 or not. Further, when the movement pattern B applies, the case may be classified into two cases according to whether the next clockwise branch point of the current target point has been newly determined as a point on the stitch path when the stitch path was moved because the movement pattern B applied, and the current target point is a vertex facing a vertex which was the target point in the regular hexagon when the stitch path was moved. As a result, different probabilities may be used for the different cases. The conditions for the classification based on the target point are not limited to the above-described conditions. The classification may be made based on other conditions, and in the larger number of cases.
When the movement pattern A or B applies, instead of determining whether to actually move the stitch path, the stitch path may be just moved every time the movement pattern A or B applies.
In the above-described embodiment, the probability in the mode 3 may be set to 1 for both of the movement patterns A and B. Consequently, the processing to move the stitch paths may be repeated until there is no more stitch path (which may be moved) to which the movement pattern A or B may be applied. However, instead of repeating the processing until there is no more movable stitch path, the movement processing may be terminated even when there still remains a movable stitch path.
Further, the present disclosure is not limited to an embodiment of using the embroidery sewing machine 3 to sew a stippling stitch onto a work cloth held by the embroidery frame 31. For example, a stippling stitch may be sewn while a work cloth is moved by controlling the driving of a needle bar swinging mechanism (not shown) that may swing the needle bar 35 horizontally and a feed dog mechanism (not shown) that may drive the feed dog (not shown) back and forth or from front to back and from side to side, based on the embroidery data of the stippling stitches. Alternatively, they may be sewn by controlling the driving of only the feed mechanism without driving the needle bar mechanism.
As described above, according to the present disclosure, it is possible to obtain the sewing data required to easily form with the sewing machine stitches of a high quality design in which unit patterns are disposed on a stitch path which include at least a curve-like portion and which may be created by the above-described sewing data creation apparatus or entered from an outside computer.
It will be appreciated by those skilled in the art that changes could be made to the embodiments described above without departing from the broad inventive concept thereof. It is understood, therefore, that this invention is not limited to the particular embodiments disclosed, but it is intended to cover modifications within the spirit and scope of the present invention as defined by the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
2006-324785 | Nov 2006 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
4388883 | Hirota et al. | Jun 1983 | A |
4413574 | Hirota et al. | Nov 1983 | A |
4499838 | Voza | Feb 1985 | A |
5189623 | Komuro et al. | Feb 1993 | A |
5261341 | Asano | Nov 1993 | A |
5283748 | Muramatsu | Feb 1994 | A |
5839380 | Muto | Nov 1998 | A |
5867391 | Muto | Feb 1999 | A |
5957068 | Mizuno | Sep 1999 | A |
5960726 | Yamada | Oct 1999 | A |
6098559 | Hirose | Aug 2000 | A |
6161491 | Takenoya et al. | Dec 2000 | A |
6430460 | Taguchi | Aug 2002 | B1 |
6629015 | Yamada | Sep 2003 | B2 |
6968255 | Dimaridis et al. | Nov 2005 | B1 |
7680558 | Yamada | Mar 2010 | B2 |
Number | Date | Country |
---|---|---|
A 4-240474 | Aug 1992 | JP |
A 7-289760 | Nov 1995 | JP |
A 8-84876 | Apr 1996 | JP |
A 9-137357 | May 1997 | JP |
B2 2867713 | Dec 1998 | JP |
A 2002-95881 | Apr 2002 | JP |
B2 3499607 | Dec 2003 | JP |
Number | Date | Country | |
---|---|---|---|
20080127871 A1 | Jun 2008 | US |