diff options
| -rw-r--r-- | lib/extensions/output.py | 2 | ||||
| -rw-r--r-- | lib/stitch_plan/stitch_plan.py | 10 | ||||
| m--------- | pyembroidery | 0 | ||||
| -rw-r--r-- | templates/output_params_txt.xml | 13 |
4 files changed, 15 insertions, 10 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 899c502f..b621ef07 100644 --- a/lib/stitch_plan/stitch_plan.py +++ b/lib/stitch_plan/stitch_plan.py @@ -5,7 +5,7 @@ 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 @@ -14,10 +14,6 @@ def patches_to_stitch_plan(patches, collapse_len=3.0 * PIXELS_PER_MM): """ stitch_plan = StitchPlan() - - if not patches: - return stitch_plan - color_block = stitch_plan.new_color_block(color=patches[0].color) for patch in patches: @@ -56,7 +52,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 dc5b1abf871d5d0117bd7b7461f12a7a8af6338 diff --git a/templates/output_params_txt.xml b/templates/output_params_txt.xml index 3b78df3b..451a6ca9 100644 --- a/templates/output_params_txt.xml +++ b/templates/output_params_txt.xml @@ -1,4 +1,11 @@ {# 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="dynamic_laser_power" type="boolean" gui-text="{{ _("dynamic laser power") }}" gui-description="{{ _("Use Grbl's M4 dynamic laser power mode. Ensures consistent laser cutting power regardless of motor speed. Only for PWM-capable lasers.") }}" min="0.0" max="5.0">true</param> + <param name="laser_warm_up_time" type="float" gui-text="{{ _("laser warm-up time") }}" gui-description="{{ _("When turning on the laser, wait this many seconds for laser to warm up (G4 command)") }}">0.0</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 |
