diff options
| author | Kaalleen <36401965+kaalleen@users.noreply.github.com> | 2024-12-26 16:19:35 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-12-26 16:19:35 +0100 |
| commit | ef7d056173cc6d7782d6120c031dae9276725a3d (patch) | |
| tree | 75d2ef67976336a93424b504e42bbf1a394b9a49 /lib/extensions/base.py | |
| parent | e20161a4ec9a69cb0f1bdfdd16bcd27a8601fde7 (diff) | |
End points (#3370)
* end at nearest point to next element (if requested and possible)
Diffstat (limited to 'lib/extensions/base.py')
| -rw-r--r-- | lib/extensions/base.py | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/extensions/base.py b/lib/extensions/base.py index 5f840417..4a2895d0 100644 --- a/lib/extensions/base.py +++ b/lib/extensions/base.py @@ -7,11 +7,11 @@ import os import inkex +from ..elements.utils import iterate_nodes, nodes_to_elements from ..i18n import _ from ..metadata import InkStitchMetadata from ..svg import generate_unique_id from ..svg.tags import INKSCAPE_GROUPMODE, SVG_GROUP_TAG -from ..elements.utils import iterate_nodes, nodes_to_elements from ..update import update_inkstitch_document @@ -75,14 +75,17 @@ class InkstitchExtension(inkex.EffectExtension): return False def elements_to_stitch_groups(self, elements): + next_elements = [None] + if len(elements) > 1: + next_elements = elements[1:] + next_elements stitch_groups = [] - for element in elements: + for element, next_element in zip(elements, next_elements): if stitch_groups: last_stitch_group = stitch_groups[-1] else: last_stitch_group = None - stitch_groups.extend(element.embroider(last_stitch_group)) + stitch_groups.extend(element.embroider(last_stitch_group, next_element)) return stitch_groups |
