From 3fff7c4f9a9844ceb029afbb0933ed8b25d3160e Mon Sep 17 00:00:00 2001 From: Abdullah Tahiri Date: Sun, 13 Nov 2016 11:46:31 +0100 Subject: [PATCH] Sketcher: Hyperbola construction endpoints autoconstraints ========================================================== Support for coincident autoconstraint for endpoints --- src/Mod/Sketcher/Gui/CommandCreateGeo.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/Mod/Sketcher/Gui/CommandCreateGeo.cpp b/src/Mod/Sketcher/Gui/CommandCreateGeo.cpp index 38a766ec2f..b82e790207 100644 --- a/src/Mod/Sketcher/Gui/CommandCreateGeo.cpp +++ b/src/Mod/Sketcher/Gui/CommandCreateGeo.cpp @@ -3605,6 +3605,15 @@ public: (((endPoint.fX-centerPoint.fX)*cos(phi)+(endPoint.fY-centerPoint.fY)*sin(phi))*b) ); + bool isOriginalArcCCW=true; + + if (arcAngle > 0) + endAngle = startAngle + arcAngle; + else { + endAngle = startAngle; + startAngle += arcAngle; + isOriginalArcCCW=false; + } Base::Vector2D majAxisDir,minAxisDir,minAxisPoint,majAxisPoint; // We always create a CCW hyperbola, because we want our XY reference system to be in the +X +Y direction @@ -3691,13 +3700,13 @@ public: // add suggested constraints for start of arc if (sugConstr3.size() > 0) { - //createAutoConstraints(sugConstr3, currentgeoid, isOriginalArcCCW?Sketcher::start:Sketcher::end); + createAutoConstraints(sugConstr3, currentgeoid, isOriginalArcCCW?Sketcher::start:Sketcher::end); sugConstr3.clear(); } // add suggested constraints for start of arc if (sugConstr4.size() > 0) { - //createAutoConstraints(sugConstr4, currentgeoid, isOriginalArcCCW?Sketcher::end:Sketcher::start); + createAutoConstraints(sugConstr4, currentgeoid, isOriginalArcCCW?Sketcher::end:Sketcher::start); sugConstr4.clear(); }