Browse Source

Merge pull request #8510 from Ultimaker/CURA-7754_add_disallowed_areas

Mark disallowed areas as disallowed areas
Remco Burema 4 years ago
parent
commit
9f929298d7
1 changed files with 3 additions and 4 deletions
  1. 3 4
      cura/Arranging/Nest2DArrange.py

+ 3 - 4
cura/Arranging/Nest2DArrange.py

@@ -68,7 +68,7 @@ def findNodePlacement(nodes_to_arrange: List["SceneNode"], build_volume: "BuildV
             converted_points.append(Point(point[0] * factor, point[1] * factor))
 
         disallowed_area = Item(converted_points)
-        disallowed_area.markAsFixedInBin(0)
+        disallowed_area.markAsDisallowedAreaInBin(0)
         node_items.append(disallowed_area)
         num_disallowed_areas_added += 1
 
@@ -88,9 +88,8 @@ def findNodePlacement(nodes_to_arrange: List["SceneNode"], build_volume: "BuildV
 
     num_bins = nest(node_items, build_plate_bounding_box, 10000, config)
 
-    # Strip the disallowed areas from the results again
-    if num_disallowed_areas_added != 0:
-        node_items = node_items[:-num_disallowed_areas_added]
+    # Strip the fixed items (previously placed) and the disallowed areas from the results again.
+    node_items = list(filter(lambda item: not item.isFixed(), node_items))
 
     found_solution_for_all = num_bins == 1