![]() |
Open CASCADE Technology Reference Manual 8.0.0
|
Template class for computing extremal distances between two curves. The function F(u,v)=distance(C1(u),C2(v)) has an extremum when gradient(f)=0. The algorithm uses Evtushenko's global optimization solver. More...
#include <Extrema_GGenExtCC.hxx>
Public Member Functions | |
| Extrema_GGenExtCC () | |
| Default constructor. | |
| Extrema_GGenExtCC (const TheCurve1 &theC1, const TheCurve2 &theC2) | |
| Constructor with two curves. | |
| Extrema_GGenExtCC (const TheCurve1 &theC1, const TheCurve2 &theC2, const double theUinf, const double theUsup, const double theVinf, const double theVsup) | |
| Constructor with two curves and parameter bounds. | |
| void | SetParams (const TheCurve1 &theC1, const TheCurve2 &theC2, const double theUinf, const double theUsup, const double theVinf, const double theVsup) |
| Sets parameters for computation. | |
| void | SetTolerance (const double theTol) |
| Sets the tolerance. | |
| void | SetSingleSolutionFlag (const bool theFlag) |
| Set flag for single extrema computation. | |
| bool | GetSingleSolutionFlag () const |
| Get flag for single extrema computation. | |
| void | Perform () |
| Performs calculations. | |
| bool | IsDone () const |
| Returns True if the distances are found. | |
| bool | IsParallel () const |
| Returns state of myParallel flag. | |
| int | NbExt () const |
| Returns the number of extremum distances. | |
| double | SquareDistance (const int theN=1) const |
| Returns the value of the Nth square extremum distance. | |
| void | Points (const int theN, ThePOnC &theP1, ThePOnC &theP2) const |
| Returns the points of the Nth extremum distance. | |
Template class for computing extremal distances between two curves. The function F(u,v)=distance(C1(u),C2(v)) has an extremum when gradient(f)=0. The algorithm uses Evtushenko's global optimization solver.
| TheCurve1 | Type of the first curve (e.g., Adaptor3d_Curve) |
| TheCurveTool1 | Tool class for the first curve |
| TheCurve2 | Type of the second curve |
| TheCurveTool2 | Tool class for the second curve |
| ThePOnC | Point on curve type (e.g., Extrema_POnCurv) |
| ThePoint | Point type (e.g., gp_Pnt) |
| TheExtPC | Point-to-curve extremum class (e.g., Extrema_ExtPC) |
| Extrema_GGenExtCC< TheCurve1, TheCurveTool1, TheCurve2, TheCurveTool2, ThePOnC, ThePoint, TheExtPC >::Extrema_GGenExtCC | ( | ) |
Default constructor.
| Extrema_GGenExtCC< TheCurve1, TheCurveTool1, TheCurve2, TheCurveTool2, ThePOnC, ThePoint, TheExtPC >::Extrema_GGenExtCC | ( | const TheCurve1 & | theC1, |
| const TheCurve2 & | theC2 ) |
Constructor with two curves.
| Extrema_GGenExtCC< TheCurve1, TheCurveTool1, TheCurve2, TheCurveTool2, ThePOnC, ThePoint, TheExtPC >::Extrema_GGenExtCC | ( | const TheCurve1 & | theC1, |
| const TheCurve2 & | theC2, | ||
| const double | theUinf, | ||
| const double | theUsup, | ||
| const double | theVinf, | ||
| const double | theVsup ) |
Constructor with two curves and parameter bounds.
| bool Extrema_GGenExtCC< TheCurve1, TheCurveTool1, TheCurve2, TheCurveTool2, ThePOnC, ThePoint, TheExtPC >::GetSingleSolutionFlag | ( | ) | const |
Get flag for single extrema computation.
| bool Extrema_GGenExtCC< TheCurve1, TheCurveTool1, TheCurve2, TheCurveTool2, ThePOnC, ThePoint, TheExtPC >::IsDone | ( | ) | const |
Returns True if the distances are found.
| bool Extrema_GGenExtCC< TheCurve1, TheCurveTool1, TheCurve2, TheCurveTool2, ThePOnC, ThePoint, TheExtPC >::IsParallel | ( | ) | const |
Returns state of myParallel flag.
| int Extrema_GGenExtCC< TheCurve1, TheCurveTool1, TheCurve2, TheCurveTool2, ThePOnC, ThePoint, TheExtPC >::NbExt | ( | ) | const |
Returns the number of extremum distances.
| void Extrema_GGenExtCC< TheCurve1, TheCurveTool1, TheCurve2, TheCurveTool2, ThePOnC, ThePoint, TheExtPC >::Perform | ( | ) |
Performs calculations.
| void Extrema_GGenExtCC< TheCurve1, TheCurveTool1, TheCurve2, TheCurveTool2, ThePOnC, ThePoint, TheExtPC >::Points | ( | const int | theN, |
| ThePOnC & | theP1, | ||
| ThePOnC & | theP2 ) const |
Returns the points of the Nth extremum distance.
| void Extrema_GGenExtCC< TheCurve1, TheCurveTool1, TheCurve2, TheCurveTool2, ThePOnC, ThePoint, TheExtPC >::SetParams | ( | const TheCurve1 & | theC1, |
| const TheCurve2 & | theC2, | ||
| const double | theUinf, | ||
| const double | theUsup, | ||
| const double | theVinf, | ||
| const double | theVsup ) |
Sets parameters for computation.
| void Extrema_GGenExtCC< TheCurve1, TheCurveTool1, TheCurve2, TheCurveTool2, ThePOnC, ThePoint, TheExtPC >::SetSingleSolutionFlag | ( | const bool | theFlag | ) |
Set flag for single extrema computation.
| void Extrema_GGenExtCC< TheCurve1, TheCurveTool1, TheCurve2, TheCurveTool2, ThePOnC, ThePoint, TheExtPC >::SetTolerance | ( | const double | theTol | ) |
Sets the tolerance.
| double Extrema_GGenExtCC< TheCurve1, TheCurveTool1, TheCurve2, TheCurveTool2, ThePOnC, ThePoint, TheExtPC >::SquareDistance | ( | const int | theN = 1 | ) | const |
Returns the value of the Nth square extremum distance.