diff options
author | j.delarago <joeydelarago@gmail.com> | 2022-02-16 17:15:31 +0300 |
---|---|---|
committer | j.delarago <joeydelarago@gmail.com> | 2022-02-16 17:15:31 +0300 |
commit | a9a533b61d5d90b3bb607cbe786d0079d3fff7e0 (patch) | |
tree | 51795b9b2cf1fc5cd396ef13d5243e3c9b0598e2 /plugins/CuraEngineBackend | |
parent | 84d9d5bec40c7f7a0220af099f2dc5e437760336 (diff) |
Duplicate modifier meshes for all objects in one at a time mode.
CURA-8031
Diffstat (limited to 'plugins/CuraEngineBackend')
-rw-r--r-- | plugins/CuraEngineBackend/StartSliceJob.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/plugins/CuraEngineBackend/StartSliceJob.py b/plugins/CuraEngineBackend/StartSliceJob.py index 7e01e96b06..97871af8fc 100644 --- a/plugins/CuraEngineBackend/StartSliceJob.py +++ b/plugins/CuraEngineBackend/StartSliceJob.py @@ -205,6 +205,12 @@ class StartSliceJob(Job): # Get the objects in their groups to print. object_groups = [] if stack.getProperty("print_sequence", "value") == "one_at_a_time": + modifier_mesh_nodes = [] + + for node in DepthFirstIterator(self._scene.getRoot()): + if node.callDecoration("isNonPrintingMesh"): + modifier_mesh_nodes.append(node) + for node in OneAtATimeIterator(self._scene.getRoot()): temp_list = [] @@ -221,7 +227,7 @@ class StartSliceJob(Job): temp_list.append(child_node) if temp_list: - object_groups.append(temp_list) + object_groups.append(temp_list + modifier_mesh_nodes) Job.yieldThread() if len(object_groups) == 0: Logger.log("w", "No objects suitable for one at a time found, or no correct order found") |