Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/Ultimaker/Cura.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfieldOfView <aldo@fieldofview.com>2018-03-23 18:35:36 +0300
committerfieldOfView <aldo@fieldofview.com>2018-03-23 18:35:36 +0300
commit78b49e8400b62472c322e2b755482372fdf57588 (patch)
treee61d9689e734b1a5141b2883c3e2f874e75d5d62 /cura/MultiplyObjectsJob.py
parent977eb8c94d3364b98b27582700942884bfce8b3a (diff)
When multiplying a parented node, multiply the parent instead (like groups)
Diffstat (limited to 'cura/MultiplyObjectsJob.py')
-rw-r--r--cura/MultiplyObjectsJob.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/cura/MultiplyObjectsJob.py b/cura/MultiplyObjectsJob.py
index b9f37ec6f8..3444da249f 100644
--- a/cura/MultiplyObjectsJob.py
+++ b/cura/MultiplyObjectsJob.py
@@ -32,14 +32,19 @@ class MultiplyObjectsJob(Job):
root = scene.getRoot()
arranger = Arrange.create(scene_root=root)
+ processed_nodes = []
nodes = []
for node in self._objects:
# If object is part of a group, multiply group
current_node = node
- while current_node.getParent() and current_node.getParent().callDecoration("isGroup"):
+ while current_node.getParent() and (current_node.getParent().callDecoration("isGroup") or current_node.getParent().callDecoration("isSliceable")):
current_node = current_node.getParent()
+ if current_node in processed_nodes:
+ continue
+ processed_nodes.append(current_node)
+
node_too_big = False
if node.getBoundingBox().width < 300 or node.getBoundingBox().depth < 300:
offset_shape_arr, hull_shape_arr = ShapeArray.fromNode(current_node, min_offset=self._min_offset)