Draft: Fixed inverted arcs in DXF output - fixes #1513

This commit is contained in:
Yorik van Havre 2014-05-08 12:29:15 -03:00
parent 8e1ebcd6fb
commit 9cd2c750db

View File

@ -1506,6 +1506,8 @@ def getArcData(edge):
a2 = -DraftVecUtils.angle(ve2.sub(ce)) a2 = -DraftVecUtils.angle(ve2.sub(ce))
if round(a1,Draft.precision()) == round(a2,Draft.precision()): if round(a1,Draft.precision()) == round(a2,Draft.precision()):
return None,None, None, None return None,None, None, None
if edge.Curve.Axis.z < 0.0:
ang1, ang2 = ang2, ang1
pseudoarc = Part.ArcOfCircle(edge.Curve,a1,a2).toShape() pseudoarc = Part.ArcOfCircle(edge.Curve,a1,a2).toShape()
if round(pseudoarc.Length,Draft.precision()) != round(edge.Length,Draft.precision()): if round(pseudoarc.Length,Draft.precision()) != round(edge.Length,Draft.precision()):
ang1, ang2 = ang2, ang1 ang1, ang2 = ang2, ang1