![]() |
Open CASCADE Technology Reference Manual 8.0.0
|
Point-Line extrema computation. More...
#include <ExtremaPC_Line.hxx>
Public Member Functions | |
| ExtremaPC_Line (const gp_Lin &theLine) | |
| Constructor with line geometry (unbounded). | |
| ExtremaPC_Line (const gp_Lin &theLine, const ExtremaPC::Domain1D &theDomain) | |
| Constructor with line geometry and parameter domain. | |
| ExtremaPC_Line (const ExtremaPC_Line &)=delete | |
| Copy constructor is deleted. | |
| ExtremaPC_Line & | operator= (const ExtremaPC_Line &)=delete |
| Copy assignment operator is deleted. | |
| ExtremaPC_Line (ExtremaPC_Line &&)=default | |
| Move constructor. | |
| ExtremaPC_Line & | operator= (ExtremaPC_Line &&)=default |
| Move assignment operator. | |
| gp_Pnt | Value (double theU) const |
| Evaluates point on line at parameter. | |
| 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 line. 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 line segment including endpoints. Uses domain specified at construction time. | |
| const gp_Lin & | Line () const |
| Returns the line geometry. | |
Point-Line extrema computation.
Computes the extremum (closest point) between a 3D point and a line. Uses direct analytical projection via dot product.
For a line defined by origin O and direction D, the closest point to P is at parameter u = (P - O) . D, which gives the minimum distance.
The domain is fixed at construction time for optimal performance. For unbounded line, construct without domain or with nullopt.
|
inlineexplicit |
Constructor with line geometry (unbounded).
| [in] | theLine | the line to compute extrema for |
|
inline |
Constructor with line geometry and parameter domain.
| [in] | theLine | the line 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 true if domain is bounded.
|
inline |
Returns the line geometry.
|
delete |
Copy assignment operator is deleted.
|
default |
Move assignment operator.
|
inline |
Compute extrema between point P and the line. Uses domain specified at construction time.
| theP | query point |
| theTol | tolerance for parameter comparison |
| theMode | search mode (unused for lines - always returns minimum) |
|
inline |
Compute extrema between point P and the line segment including endpoints. Uses domain specified at construction time.
| theP | query point |
| theTol | tolerance for parameter comparison |
| theMode | search mode (MinMax, Min, or Max) |
Evaluates point on line at parameter.
| theU | parameter |