From 8da1f8fa7d7618b2937420d609beb87190043430 Mon Sep 17 00:00:00 2001 From: Lipu Fei Date: Tue, 2 Apr 2019 14:16:54 +0200 Subject: [PATCH] Exclude support blockers in used extruders CURA-6440 --- cura/Settings/ExtruderManager.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/cura/Settings/ExtruderManager.py b/cura/Settings/ExtruderManager.py index b6b7b31936..57bc16a7fd 100755 --- a/cura/Settings/ExtruderManager.py +++ b/cura/Settings/ExtruderManager.py @@ -224,7 +224,16 @@ class ExtruderManager(QObject): # Get the extruders of all printable meshes in the scene meshes = [node for node in DepthFirstIterator(scene_root) if isinstance(node, SceneNode) and node.isSelectable()] #type: ignore #Ignore type error because iter() should get called automatically by Python syntax. + + # Exclude anti-overhang meshes + mesh_list = [] for mesh in meshes: + stack = mesh.callDecoration("getStack") + if stack is not None and stack.getProperty("anti_overhang_mesh", "value"): + continue + mesh_list.append(mesh) + + for mesh in mesh_list: extruder_stack_id = mesh.callDecoration("getActiveExtruder") if not extruder_stack_id: # No per-object settings for this node