From 37620c5461e806f2cb73b7214ef5d190d1b783b0 Mon Sep 17 00:00:00 2001 From: Markus Lampert Date: Fri, 31 Aug 2018 19:48:18 -0700 Subject: [PATCH] Added multi base model support to CircularHoleBase op --- src/Mod/Path/PathScripts/PathCircularHoleBase.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/Mod/Path/PathScripts/PathCircularHoleBase.py b/src/Mod/Path/PathScripts/PathCircularHoleBase.py index 47628fcf30..5e82b12e4a 100644 --- a/src/Mod/Path/PathScripts/PathCircularHoleBase.py +++ b/src/Mod/Path/PathScripts/PathCircularHoleBase.py @@ -187,19 +187,21 @@ class ObjectOp(PathOp.ObjectOp): if not self.getJob(obj): return features = [] - if self.baseIsArchPanel(obj, self.baseobject): - holeshapes = self.baseobject.Proxy.getHoles(self.baseobject, transform=True) + if 1 == len(self.model) and self.baseIsArchPanel(obj, self.model[0]): + panel = self.model[0] + holeshapes = panel.Proxy.getHoles(panel, transform=True) tooldiameter = obj.ToolController.Proxy.getTool(obj.ToolController).Diameter for holeNr, hole in enumerate(holeshapes): PathLog.debug('Entering new HoleShape') for wireNr, wire in enumerate(hole.Wires): PathLog.debug('Entering new Wire') for edgeNr, edge in enumerate(wire.Edges): - if PathUtils.isDrillable(self.baseobject, edge, tooldiameter): + if PathUtils.isDrillable(panel, edge, tooldiameter): PathLog.debug('Found drillable hole edges: {}'.format(edge)) - features.append((self.baseobject, "%d.%d.%d" % (holeNr, wireNr, edgeNr))) + features.append((panel, "%d.%d.%d" % (holeNr, wireNr, edgeNr))) else: - features = self.findHoles(obj, self.baseobject) + for base in self.model: + features.extend(self.findHoles(obj, base)) obj.Base = features obj.Disabled = []