![]() |
Open CASCADE Technology Reference Manual 8.0.0
|
Point-Circle extrema computation. More...
#include <ExtremaPC_Circle.hxx>
Public Member Functions | |
| ExtremaPC_Circle (const gp_Circ &theCircle) | |
| Constructor with circle geometry (full circle). | |
| ExtremaPC_Circle (const gp_Circ &theCircle, const ExtremaPC::Domain1D &theDomain) | |
| Constructor with circle geometry and parameter domain. | |
| ExtremaPC_Circle (const ExtremaPC_Circle &)=delete | |
| Copy constructor is deleted. | |
| ExtremaPC_Circle & | operator= (const ExtremaPC_Circle &)=delete |
| Copy assignment operator is deleted. | |
| ExtremaPC_Circle (ExtremaPC_Circle &&)=default | |
| Move constructor. | |
| ExtremaPC_Circle & | operator= (ExtremaPC_Circle &&)=default |
| Move assignment operator. | |
| gp_Pnt | Value (double theU) const |
| Evaluates point on circle at parameter. | |
| bool | IsBounded () const |
| Returns true if domain is bounded (partial arc). | |
| 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 circle. 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 circle arc including endpoints. Uses domain specified at construction time. | |
| const gp_Circ & | Circle () const |
| Returns the circle geometry. | |
Point-Circle extrema computation.
Computes the extrema between a 3D point and a circle. Uses analytical solution via angle computation in the circle plane.
For a circle with center O and radius R, the algorithm:
The domain is fixed at construction time for optimal performance. For full circle, construct without domain or with nullopt.
|
inlineexplicit |
Constructor with circle geometry (full circle).
| [in] | theCircle | the circle to compute extrema for |
|
inline |
Constructor with circle geometry and parameter domain.
| [in] | theCircle | the circle to compute extrema for |
| [in] | theDomain | parameter domain in radians (fixed for all queries) |
|
delete |
Copy constructor is deleted.
|
default |
Move constructor.
|
inline |
Returns the circle geometry.
|
inline |
Returns the domain (only valid if IsBounded() is true).
|
inline |
Returns true if domain is bounded (partial arc).
|
delete |
Copy assignment operator is deleted.
|
default |
Move assignment operator.
|
inline |
Compute extrema between point P and the circle. Uses domain specified at construction time.
| theP | query point |
| theTol | tolerance for degenerate case detection |
| theMode | search mode (MinMax, Min, or Max) |
|
inline |
Compute extrema between point P and the circle arc including endpoints. Uses domain specified at construction time.
| theP | query point |
| theTol | tolerance for degenerate case detection |
| theMode | search mode (MinMax, Min, or Max) |
Evaluates point on circle at parameter.
| theU | parameter (radians) |