+ fix a bug in the fallback solvers mechanism

git-svn-id: https://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk@5119 e8eeb9e2-ec13-0410-a4a9-efa5cf37419d
This commit is contained in:
logari81 2011-11-11 21:27:53 +00:00
parent fbd01cb5f2
commit 1782d731da

View File

@ -1308,19 +1308,19 @@ int Sketch::solve() {
// solving with freegcs
// (either with SQP solver for two subsystems or
// with the default DogLeg solver for a single subsystem)
int ret = GCSsys.solve(GCS::DogLeg);
int ret = GCSsys.solve(true, GCS::DogLeg);
if (ret != GCS::Success && !isInitMove) {
// if we are not in dragging mode and the solver fails we try
// alternative solvers
ret = GCSsys.solve(GCS::BFGS);
ret = GCSsys.solve(true, GCS::BFGS);
if (ret == GCS::Success) {
Base::Console().Warning("Important: the BFGS solver succeeded where the DogLeg solver had failed.\n");
Base::Console().Warning("If you see this message please report a way of reproducing this result at\n");
Base::Console().Warning("https://sourceforge.net/apps/mantisbt/free-cad/main_page.php\n");
}
else {
ret = GCSsys.solve(GCS::LevenbergMarquardt);
ret = GCSsys.solve(true, GCS::LevenbergMarquardt);
if (ret == GCS::Success) {
Base::Console().Warning("Important: the LevenbergMarquardt solver succeeded where the DogLeg and BFGS solvers have failed.\n");
Base::Console().Warning("If you see this message please report a way of reproducing this result at\n");