summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/extensions/output.py2
-rw-r--r--lib/stitch_plan/stitch_plan.py12
m---------pyembroidery0
-rw-r--r--templates/output_params_txt.xml11
4 files changed, 16 insertions, 9 deletions
diff --git a/lib/extensions/output.py b/lib/extensions/output.py
index 8b99c027..ccf4d7cb 100644
--- a/lib/extensions/output.py
+++ b/lib/extensions/output.py
@@ -46,7 +46,7 @@ class Output(InkstitchExtension):
return
patches = self.elements_to_patches(self.elements)
- stitch_plan = patches_to_stitch_plan(patches)
+ stitch_plan = patches_to_stitch_plan(patches, disable_ties=self.settings.get('laser_mode', False))
temp_file = tempfile.NamedTemporaryFile(suffix=".%s" % self.file_extension, delete=False)
diff --git a/lib/stitch_plan/stitch_plan.py b/lib/stitch_plan/stitch_plan.py
index 808fa626..b55ccc1f 100644
--- a/lib/stitch_plan/stitch_plan.py
+++ b/lib/stitch_plan/stitch_plan.py
@@ -1,11 +1,11 @@
-from .stitch import Stitch
-from .ties import add_ties
from ..svg import PIXELS_PER_MM
-from ..utils.geometry import Point
from ..threads import ThreadColor
+from ..utils.geometry import Point
+from .stitch import Stitch
+from .ties import add_ties
-def patches_to_stitch_plan(patches, collapse_len=3.0 * PIXELS_PER_MM):
+def patches_to_stitch_plan(patches, collapse_len=3.0 * PIXELS_PER_MM, disable_ties=False):
"""Convert a collection of inkstitch.element.Patch objects to a StitchPlan.
* applies instructions embedded in the Patch such as trim_after and stop_after
@@ -56,7 +56,9 @@ def patches_to_stitch_plan(patches, collapse_len=3.0 * PIXELS_PER_MM):
del stitch_plan.color_blocks[-1]
stitch_plan.filter_duplicate_stitches()
- stitch_plan.add_ties()
+
+ if not disable_ties:
+ stitch_plan.add_ties()
return stitch_plan
diff --git a/pyembroidery b/pyembroidery
-Subproject 47b795a084bdc3281fbf944b940609bf86193fd
+Subproject 6d14167c94bb63f4f1536f9467945e2e7beb435
diff --git a/templates/output_params_txt.xml b/templates/output_params_txt.xml
index 3b78df3b..767ddc1a 100644
--- a/templates/output_params_txt.xml
+++ b/templates/output_params_txt.xml
@@ -1,4 +1,9 @@
{# these parameters are for g-code files (*.txt) #}
- <param name="flip_x" type="boolean" gui-description="{{ _("Negate x coordinates") }}">false</param>
- <param name="flip_y" type="boolean" gui-description="{{ _("Negate y coordinates") }}">false</param>
- <param name="stitch_z_travel" type="float" gui-description="{{ _("increment z coordinate by this amount per stitch") }}">5.0</param>
+ <param name="laser_mode" type="boolean" gui-text="{{ _("laser mode") }}" gui-description="{{ _("Laser mode (generate g-code for grbl laser mode)") }}">false</param>
+ <param name="flip_x" type="boolean" gui-text="{{ _("negate X coordinate values") }}" gui-description="{{ _("Negate x coordinates") }}">false</param>
+ <param name="flip_y" type="boolean" gui-text="{{ _("negate Y coordinate values") }}" gui-description="{{ _("Negate y coordinates") }}">false</param>
+ <param name="stitch_z_travel" type="float" gui-text="{{ _("Z travel per stitch") }}" gui-description="{{ _("increment z coordinate by this amount per stitch") }}">5.0</param>
+ <param name="spindle_speed" type="int" gui-text="{{ _("spindle speed") }}" gui-description="{{ _("spindle speed (laser power for laser mode, set to -1 to omit)") }}" min="-1" max="1000000000">-1</param>
+ <param name="min_spindle_speed" type="int" gui-text="{{ _("min spindle speed") }}" gui-description="{{ _("minimum spindle speed value (grbl $31 setting)") }}" min="-1" max="1000000000">-1</param>
+ <param name="max_spindle_speed" type="int" gui-text="{{ _("max spindle speed") }}" gui-description="{{ _("minimum spindle speed value (grbl $30 setting)") }}" min="-1" max="1000000000">-1</param>
+ <param name="feed_rate" type="int" gui-description="{{ _("feed rate (in mm/min, set to -1 to omit)")}}" min="-1" max="1000000000">-1</param> \ No newline at end of file