![]() |
Open CASCADE Technology Reference Manual 8.0.0
|
Point-Hyperbola extrema computation. More...
#include <ExtremaPC_Hyperbola.hxx>
Public Member Functions | |
| ExtremaPC_Hyperbola (const gp_Hypr &theHyperbola) | |
| Constructor with hyperbola geometry (infinite). | |
| ExtremaPC_Hyperbola (const gp_Hypr &theHyperbola, const ExtremaPC::Domain1D &theDomain) | |
| Constructor with hyperbola geometry and parameter domain. | |
| ExtremaPC_Hyperbola (const ExtremaPC_Hyperbola &)=delete | |
| Copy constructor is deleted. | |
| ExtremaPC_Hyperbola & | operator= (const ExtremaPC_Hyperbola &)=delete |
| Copy assignment operator is deleted. | |
| ExtremaPC_Hyperbola (ExtremaPC_Hyperbola &&)=default | |
| Move constructor. | |
| ExtremaPC_Hyperbola & | operator= (ExtremaPC_Hyperbola &&)=default |
| Move assignment operator. | |
| gp_Pnt | Value (double theU) const |
| Evaluates point on hyperbola at parameter using cached geometry. | |
| bool | IsBounded () const |
| Returns true if domain is bounded. | |
| const ExtremaPC::Domain1D & | Domain () const |
| Returns the domain (only valid if IsBounded() is true). | |
| const ExtremaPC::Result & | Perform (const gp_Pnt &theP, double theTol, ExtremaPC::SearchMode theMode=ExtremaPC::SearchMode::MinMax) const |
| Compute extrema between point P and the hyperbola. Uses domain specified at construction time. | |
| const ExtremaPC::Result & | PerformWithEndpoints (const gp_Pnt &theP, double theTol, ExtremaPC::SearchMode theMode=ExtremaPC::SearchMode::MinMax) const |
| Compute extrema between point P and the hyperbola arc including endpoints. Uses domain specified at construction time. | |
| const gp_Hypr & | Hyperbola () const |
| Returns the hyperbola geometry. | |
Point-Hyperbola extrema computation.
Computes the extrema between a 3D point and a hyperbola. Uses quartic polynomial solving via MathPoly::Quartic with substitution.
The algorithm:
The domain is fixed at construction time for optimal performance. For infinite hyperbola, construct without domain or with nullopt.
|
inlineexplicit |
Constructor with hyperbola geometry (infinite).
| [in] | theHyperbola | the hyperbola to compute extrema for |
|
inline |
Constructor with hyperbola geometry and parameter domain.
| [in] | theHyperbola | the hyperbola to compute extrema for |
| [in] | theDomain | parameter domain (fixed for all queries) |
|
delete |
Copy constructor is deleted.
|
default |
Move constructor.
|
inline |
Returns the domain (only valid if IsBounded() is true).
|
inline |
Returns the hyperbola geometry.
|
inline |
Returns true if domain is bounded.
|
delete |
Copy assignment operator is deleted.
|
default |
Move assignment operator.
|
inline |
Compute extrema between point P and the hyperbola. Uses domain specified at construction time.
| theP | query point |
| theTol | tolerance for duplicate detection |
| theMode | search mode (MinMax, Min, or Max) |
|
inline |
Compute extrema between point P and the hyperbola arc including endpoints. Uses domain specified at construction time.
| theP | query point |
| theTol | tolerance for duplicate detection |
| theMode | search mode (MinMax, Min, or Max) |
Evaluates point on hyperbola at parameter using cached geometry.
| theU | parameter |