diff options
| author | Kaalleen <36401965+kaalleen@users.noreply.github.com> | 2019-07-06 11:24:56 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-07-06 11:24:56 +0200 |
| commit | 1b18d915a91f838dce7126d80674e3207efe6374 (patch) | |
| tree | 55c8b9a3107b05cc1c5174cdba19aa6c524dd7d0 /lib/extensions | |
| parent | 62d4e35be91b04d71c560a73d5f4c510606388d7 (diff) | |
use get_pattern_interpolate_trim
This has the same inaccuracy as the previous version, but we can actually use a pyembroidery function to turn a specific number of jumps into trims.
Diffstat (limited to 'lib/extensions')
| -rw-r--r-- | lib/extensions/input.py | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/lib/extensions/input.py b/lib/extensions/input.py index a8402fdc..bfb488f1 100644 --- a/lib/extensions/input.py +++ b/lib/extensions/input.py @@ -12,6 +12,7 @@ class Input(object): def affect(self, args): embroidery_file = args[0] pattern = pyembroidery.read(embroidery_file) + pattern = pattern.get_pattern_interpolate_trim(2) stitch_plan = StitchPlan() color_block = None @@ -19,20 +20,14 @@ class Input(object): for raw_stitches, thread in pattern.get_as_colorblocks(): color_block = stitch_plan.new_color_block(thread) trim_after = False - jump_counter = 0 for x, y, command in raw_stitches: if command == pyembroidery.STITCH: if trim_after: color_block.add_stitch(trim=True) trim_after = False color_block.add_stitch(x * PIXELS_PER_MM / 10.0, y * PIXELS_PER_MM / 10.0) - jump_counter = 0 - elif len(color_block) > 0: - # some file formats use 3 or more jump stitches in a row to indicate a trim - if command == pyembroidery.JUMP: - jump_counter += 1 - if command == pyembroidery.TRIM or jump_counter >= 3: - trim_after = True + if len(color_block) > 0 and command == pyembroidery.TRIM: + trim_after = True extents = stitch_plan.extents svg = etree.Element("svg", nsmap=inkex.NSS, attrib={ |
