From 5f209a7d51484841ec809c49775b157f94e4c1cb Mon Sep 17 00:00:00 2001 From: adam-urbanczyk Date: Tue, 26 Feb 2019 16:29:23 +0100 Subject: [PATCH] Handle multiple inner profiles correctly --- cadquery/occ_impl/shapes.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/cadquery/occ_impl/shapes.py b/cadquery/occ_impl/shapes.py index b90b5d09..8adb6ad0 100644 --- a/cadquery/occ_impl/shapes.py +++ b/cadquery/occ_impl/shapes.py @@ -1420,7 +1420,11 @@ class Solid(Shape, Mixin3D): rv,inner_shapes = shapes[0],shapes[1:] if inner_shapes: - inner_shapes = Compound.makeCompound(inner_shapes) + if len(inner_shapes)>1: + inner_shapes = inner_shapes[0]\ + .fuse(Compound.makeCompound(inner_shapes[1:])) + else: + inner_shapes = Compound.makeCompound(inner_shapes) rv = rv.cut(inner_shapes) return rv