mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-10 02:48:59 +08: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
@ -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…
x
Reference in New Issue
Block a user