Skip to content

Commit 5b61a3e

Browse files
committed
Make acceleration/jerk_enabled control bead modes as well
This fits more with the parenting structure
1 parent e75c696 commit 5b61a3e

File tree

1 file changed

+29
-26
lines changed

1 file changed

+29
-26
lines changed

plugins/MakerbotWriter/MakerbotWriter.py

+29-26
Original file line numberDiff line numberDiff line change
@@ -258,37 +258,42 @@ def _getMeta(self, root_nodes: List[SceneNode]) -> Tuple[Dict[str, any], str]:
258258
accel_overrides = meta["accel_overrides"] = {}
259259
bead_mode_overrides = accel_overrides["bead_mode"] = {}
260260

261-
if global_stack.getProperty('acceleration_enabled', 'value'):
261+
accel_enabled = global_stack.getProperty('acceleration_enabled', 'value')
262+
263+
if accel_enabled:
262264
global_accel_setting = global_stack.getProperty('acceleration_print', 'value')
263265
accel_overrides["rate_mm_per_s_sq"] = {
264266
"x": global_accel_setting,
265267
"y": global_accel_setting
266268
}
267-
if global_stack.getProperty('acceleration_travel_enabled', 'value'):
268-
travel_accel_setting = global_stack.getProperty('acceleration_travel', 'value')
269-
bead_mode_overrides['Travel Move'] = {
270-
"rate_mm_per_s_sq": {
271-
"x": travel_accel_setting,
272-
"y": travel_accel_setting
269+
270+
if global_stack.getProperty('acceleration_travel_enabled', 'value'):
271+
travel_accel_setting = global_stack.getProperty('acceleration_travel', 'value')
272+
bead_mode_overrides['Travel Move'] = {
273+
"rate_mm_per_s_sq": {
274+
"x": travel_accel_setting,
275+
"y": travel_accel_setting
276+
}
273277
}
274-
}
275278

276-
if global_stack.getProperty('jerk_enabled', 'value'):
279+
jerk_enabled = global_stack.getProperty('jerk_enabled', 'value')
280+
if jerk_enabled:
277281
global_jerk_setting = global_stack.getProperty('jerk_print', 'value')
278282
accel_overrides["max_speed_change_mm_per_s"] = {
279283
"x": global_jerk_setting,
280284
"y": global_jerk_setting
281285
}
282-
if global_stack.getProperty('jerk_travel_enabled', 'value'):
283-
travel_jerk_setting = global_stack.getProperty('jerk_travel', 'value')
284-
if 'Travel Move' not in bead_mode_overrides:
285-
bead_mode_overrides['Travel Move' ] = {}
286-
bead_mode_overrides['Travel Move'].update({
287-
"max_speed_change_mm_per_s": {
288-
"x": travel_jerk_setting,
289-
"y": travel_jerk_setting
290-
}
291-
})
286+
287+
if global_stack.getProperty('jerk_travel_enabled', 'value'):
288+
travel_jerk_setting = global_stack.getProperty('jerk_travel', 'value')
289+
if 'Travel Move' not in bead_mode_overrides:
290+
bead_mode_overrides['Travel Move' ] = {}
291+
bead_mode_overrides['Travel Move'].update({
292+
"max_speed_change_mm_per_s": {
293+
"x": travel_jerk_setting,
294+
"y": travel_jerk_setting
295+
}
296+
})
292297

293298

294299
# Get bead mode settings per extruder
@@ -304,20 +309,18 @@ def _getMeta(self, root_nodes: List[SceneNode]) -> Tuple[Dict[str, any], str]:
304309
}
305310
for idx, extruder in enumerate(extruders):
306311
for bead_mode_setting, bead_mode_tag in available_bead_modes.items():
307-
if bead_mode_tag == "":
308-
continue
309312
ext_specific_tag = "%s_%s" % (bead_mode_tag, idx)
310-
accel_val = extruder.getProperty('acceleration_%s' % bead_mode_setting, 'value')
311-
jerk_val = extruder.getProperty('jerk_%s' % bead_mode_setting, 'value')
312-
if accel_val != 0 or jerk_val != 0:
313+
if accel_enabled or jerk_enabled:
313314
bead_mode_overrides[ext_specific_tag] = {}
314315

315-
if accel_val != 0:
316+
if accel_enabled:
317+
accel_val = extruder.getProperty('acceleration_%s' % bead_mode_setting, 'value')
316318
bead_mode_overrides[ext_specific_tag]["rate_mm_per_s_sq"] = {
317319
"x": accel_val,
318320
"y": accel_val
319321
}
320-
if jerk_val != 0:
322+
if jerk_enabled:
323+
jerk_val = extruder.getProperty('jerk_%s' % bead_mode_setting, 'value')
321324
bead_mode_overrides[ext_specific_tag][ "max_speed_change_mm_per_s"] = {
322325
"x": jerk_val,
323326
"y": jerk_val

0 commit comments

Comments
 (0)