Browse Source

Check first if we have valid vertex data

The convex hull calculation may fail. If it does, we want to just tomit the convex hull shadow, rather than crash.

Fixes Sentry issue CURA-ST.
Ghostkeeper 4 years ago
parent
commit
edf7fdad75
1 changed files with 2 additions and 2 deletions
  1. 2 2
      cura/Scene/ConvexHullDecorator.py

+ 2 - 2
cura/Scene/ConvexHullDecorator.py

@@ -224,7 +224,7 @@ class ConvexHullDecorator(SceneNodeDecorator):
         if self._node is None:
             return None
         if self._node.callDecoration("isGroup"):
-            points = numpy.zeros((0, 2), dtype=numpy.int32)
+            points = numpy.zeros((0, 2), dtype = numpy.int32)
             for child in self._node.getChildren():
                 child_hull = child.callDecoration("_compute2DConvexHull")
                 if child_hull:
@@ -268,7 +268,7 @@ class ConvexHullDecorator(SceneNodeDecorator):
             # Do not throw away vertices: the convex hull may be too small and objects can collide.
             # vertex_data = vertex_data[vertex_data[:,1] >= -0.01]
 
-            if len(vertex_data) >= 4:  # type: ignore # mypy and numpy don't play along well just yet.
+            if vertex_data is not None and len(vertex_data) >= 4:  # type: ignore # mypy and numpy don't play along well just yet.
                 # Round the vertex data to 1/10th of a mm, then remove all duplicate vertices
                 # This is done to greatly speed up further convex hull calculations as the convex hull
                 # becomes much less complex when dealing with highly detailed models.