diff options
| author | Lex Neva <github.com@lexneva.name> | 2019-02-25 19:49:38 -0500 |
|---|---|---|
| committer | Lex Neva <github.com@lexneva.name> | 2019-03-08 19:57:11 -0500 |
| commit | 53a9bd6b31ca3a1f50d41f228e0b598a7d9da8ea (patch) | |
| tree | 3a25ae8a48ef01d749d60fe071ed5509f5472fd7 /lib/extensions | |
| parent | 4ba3cd708561870a731d9634d9cdd5c18579cac7 (diff) | |
add trims in stitches.auto_satin
Diffstat (limited to 'lib/extensions')
| -rw-r--r-- | lib/extensions/auto_satin.py | 52 |
1 files changed, 4 insertions, 48 deletions
diff --git a/lib/extensions/auto_satin.py b/lib/extensions/auto_satin.py index 90d8fe33..12588d1e 100644 --- a/lib/extensions/auto_satin.py +++ b/lib/extensions/auto_satin.py @@ -38,22 +38,6 @@ class AutoSatin(CommandsExtension): if command is not None: return command.target_point - def effect(self): - if not self.check_selection(): - return - - if self.options.preserve_order: - # when preservering order, auto_satin() takes care of putting the - # newly-created elements into the existing group nodes in the SVG - # DOM - new_elements, trim_indices = self.auto_satin() - else: - group = self.create_group() - new_elements, trim_indices = self.auto_satin() - self.add_elements(group, new_elements) - - self.add_trims(new_elements, trim_indices) - def check_selection(self): if not self.get_elements(): return @@ -65,38 +49,10 @@ class AutoSatin(CommandsExtension): return True - def create_group(self): - first = self.elements[0].node - parent = first.getparent() - insert_index = parent.index(first) - group = inkex.etree.Element(SVG_GROUP_TAG, { - "transform": get_correction_transform(parent, child=True) - }) - parent.insert(insert_index, group) - - return group + def effect(self): + if not self.check_selection(): + return - def auto_satin(self): starting_point = self.get_starting_point() ending_point = self.get_ending_point() - return auto_satin(self.elements, self.options.preserve_order, starting_point, ending_point) - - def add_elements(self, group, new_elements): - for i, element in enumerate(new_elements): - if isinstance(element, SatinColumn): - element.node.set("id", self.uniqueId("autosatin")) - - # L10N Label for a satin column created by Auto-Route Satin Columns extension - element.node.set(INKSCAPE_LABEL, _("AutoSatin %d") % (i + 1)) - else: - element.node.set("id", self.uniqueId("autosatinrun")) - - # L10N Label for running stitch (underpathing) created by Auto-Route Satin Columns extension - element.node.set(INKSCAPE_LABEL, _("AutoSatin Running Stitch %d") % (i + 1)) - - group.append(element.node) - - def add_trims(self, new_elements, trim_indices): - if self.options.trim and trim_indices: - for i in trim_indices: - add_commands(new_elements[i], ["trim"]) + auto_satin(self.elements, self.options.preserve_order, starting_point, ending_point, self.options.trim) |
