Fixed hole detection for bottom faces.

This commit is contained in:
Markus Lampert
2017-12-04 01:39:25 -08:00
parent 4f785cdd37
commit fdea03a594
2 changed files with 15 additions and 4 deletions

View File

@@ -166,7 +166,12 @@ def isDrillable(obj, candidate, tooldiameter=None, includePartials=False):
drillable = True
elif type(face.Surface) == Part.Plane and PathGeom.pointsCoincide(face.Surface.Axis, FreeCAD.Vector(0,0,1)):
if len(face.Edges) == 1 and type(face.Edges[0].Curve) == Part.Circle:
return True
center = face.Edges[0].Curve.Center
if obj.isInside(center, 1e-6, False):
if tooldiameter is not None:
drillable = face.Edges[0].Curve.Radius >= tooldiameter/2
else:
drillable = True
else:
for edge in candidate.Edges:
if isinstance(edge.Curve, Part.Circle) and (includePartials or edge.isClosed()):