Draft: minor fix in Shapestring

This commit is contained in:
Yorik van Havre 2014-09-10 15:56:50 -03:00
parent d1fb7fa839
commit 9af4df3ce5

View File

@ -4915,9 +4915,11 @@ class _ShapeString(_DraftObject):
def makeFaces(self, wireChar):
import Part
compFaces=[]
allEdges = []
wirelist=sorted(wireChar,key=(lambda shape: shape.BoundBox.DiagonalLength),reverse=True)
fixedwire = []
for w in wirelist:
allEdges.extend(w.Edges)
compEdges = Part.Compound(w.Edges)
compEdges = compEdges.connectEdgesToWires()
fixedwire.append(compEdges.Wires[0])
@ -4953,13 +4955,18 @@ class _ShapeString(_DraftObject):
sep_wirelist.append(w)
wirelist = sep_wirelist
sep_wirelist = []
face = Part.Face(wire2Face)
face.validate()
if face.Surface.Axis.z < 0.0:
face.reverse()
compFaces.append(face)
try:
face = Part.Face(wire2Face)
face.validate()
if face.Surface.Axis.z < 0.0:
face.reverse()
except:
stick = True
wirelist = []
else:
compFaces.append(face)
if stick:
ret = Part.Compound(fixedwire)
ret = Part.Compound(allEdges)
elif compFaces:
ret = Part.Compound(compFaces)
return ret