mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-08-06 05:23:58 -06:00
Mark disallowed areas as disallowed areas
Also improve the filtering a bit so that it's no longer dependent on the order. Doesn't really matter in this case but it should be more robust. Contributes to issue CURA-7754.
This commit is contained in:
parent
d801f9838a
commit
6bfa24686f
1 changed files with 4 additions and 5 deletions
|
@ -23,7 +23,7 @@ def findNodePlacement(nodes_to_arrange: List["SceneNode"], build_volume: "BuildV
|
|||
:param build_volume: The build volume that we want to place the nodes in. It gets size & disallowed areas from this.
|
||||
:param fixed_nodes: List of nods that should not be moved, but should be used when deciding where the others nodes
|
||||
are placed.
|
||||
:param factor: The library that we use is int based. This factor defines how accuracte we want it to be.
|
||||
:param factor: The library that we use is int based. This factor defines how accurate we want it to be.
|
||||
:return:
|
||||
"""
|
||||
|
||||
|
@ -66,7 +66,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
|
||||
|
||||
|
@ -87,9 +87,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
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue