mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-06 22:47:29 -06:00
Do not slice a model if it is only one on a build plane and has setting from non_printing_mesh
CURA-4703
This commit is contained in:
parent
d70bd0ebc9
commit
5c5f08e9ca
1 changed files with 10 additions and 1 deletions
|
@ -131,12 +131,21 @@ class StartSliceJob(Job):
|
|||
Logger.log("w", "No objects suitable for one at a time found, or no correct order found")
|
||||
else:
|
||||
temp_list = []
|
||||
is_non_printing_mesh = False
|
||||
for node in DepthFirstIterator(self._scene.getRoot()):
|
||||
if type(node) is SceneNode and node.getMeshData() and node.getMeshData().getVertices() is not None:
|
||||
if not getattr(node, "_outside_buildarea", False) or getattr(node, "_non_printing_mesh", False):
|
||||
_non_printing_mesh = getattr(node, "_non_printing_mesh", False)
|
||||
if not getattr(node, "_outside_buildarea", False) or _non_printing_mesh:
|
||||
temp_list.append(node)
|
||||
if _non_printing_mesh:
|
||||
is_non_printing_mesh = True
|
||||
Job.yieldThread()
|
||||
|
||||
#If list has one node and it has non printing settings then remove it from list
|
||||
# otherwise CuraEngine will crash
|
||||
if len(temp_list) == 1 and is_non_printing_mesh:
|
||||
temp_list.clear()
|
||||
|
||||
if temp_list:
|
||||
object_groups.append(temp_list)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue