mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-09 13:22:24 +03:00
0026674: Performance regression in BRepExtrema_DistShapeShape in OCCT 6.9.0 in compare with OCCT 6.7.1
Creation the test case for current issue. Added flag for single extrema computation. Now implemented only for parametric solver GenExtCC. Default behavior of curve/curve solver in distmini command changed to "find one solution".
This commit is contained in:
@@ -141,7 +141,13 @@ public:
|
||||
//! Return solution theIndex, 1 <= theIndex <= NbExtrema.
|
||||
Standard_EXPORT void Points(const Standard_Integer theIndex, math_Vector& theSol);
|
||||
|
||||
Standard_Boolean isDone();
|
||||
Standard_EXPORT Standard_Boolean isDone();
|
||||
|
||||
//! Set functional minimal value.
|
||||
Standard_EXPORT void SetFunctionalMinimalValue(const Standard_Real theMinimalValue);
|
||||
|
||||
//! Get functional minimal value.
|
||||
Standard_EXPORT Standard_Real GetFunctionalMinimalValue();
|
||||
|
||||
private:
|
||||
|
||||
@@ -154,6 +160,10 @@ private:
|
||||
|
||||
void computeGlobalExtremum(Standard_Integer theIndex);
|
||||
|
||||
//! Check possibility to stop computations.
|
||||
//! Find single solution + in neighbourhood of best possible solution.
|
||||
Standard_Boolean CheckFunctionalStopCriteria();
|
||||
|
||||
//! Computes starting value / approximation:
|
||||
//! myF - initial best value.
|
||||
//! myY - initial best point.
|
||||
@@ -180,6 +190,7 @@ private:
|
||||
// default value is 1.0e-7.
|
||||
Standard_Real myC; //Lipschitz constant, default 9
|
||||
Standard_Boolean myIsFindSingleSolution; // Default value is false.
|
||||
Standard_Real myFunctionalMinimalValue; // Default value is -Precision::Infinite
|
||||
|
||||
// Output.
|
||||
Standard_Boolean myDone;
|
||||
|
Reference in New Issue
Block a user