Fix circles distance constraint for concentrics

This commit is contained in:
Florian Foinant-Willig
2023-03-20 08:30:12 +01:00
committed by Uwe
parent b04ef3a351
commit c23f6a9221

View File

@@ -2666,8 +2666,11 @@ void ConstraintC2CDistance::errorgrad(double *err, double *grad, double *param)
else if(param == distance()) {
drad = (*distance()<0.)?1.0:-1.0;
}
*grad = -dlength_ct12 + drad;
if (length_ct12>1e-13) {
*grad = -dlength_ct12 + drad;
} else { // concentric case
*grad = drad;
}
}
}
}