Open CASCADE Technology  7.4.0
Public Member Functions

Geom2dAPI_ExtremaCurveCurve Class Reference

Describes functions for computing all the extrema between two 2D curves. An ExtremaCurveCurve algorithm minimizes or maximizes the distance between a point on the first curve and a point on the second curve. Thus, it computes the start point and end point of perpendiculars common to the two curves (an intersection point is not an extremum except where the two curves are tangential at this point). Solutions consist of pairs of points, and an extremum is considered to be a segment joining the two points of a solution. An ExtremaCurveCurve object provides a framework for: More...

#include <Geom2dAPI_ExtremaCurveCurve.hxx>

Public Member Functions

 Geom2dAPI_ExtremaCurveCurve (const Handle< Geom2d_Curve > &C1, const Handle< Geom2d_Curve > &C2, const Standard_Real U1min, const Standard_Real U1max, const Standard_Real U2min, const Standard_Real U2max)
 Computes the extrema between. More...
 
Standard_Integer NbExtrema () const
 Returns the number of extrema computed by this algorithm. Note: if this algorithm fails, NbExtrema returns 0. More...
 
 operator Standard_Integer () const
 
void Points (const Standard_Integer Index, gp_Pnt2d &P1, gp_Pnt2d &P2) const
 Returns the points P1 on the first curve and P2 on the second curve, which are the ends of the extremum of index Index computed by this algorithm. Exceptions Standard_OutOfRange if Index is not in the range [ 1,NbExtrema ], where NbExtrema is the number of extrema computed by this algorithm. More...
 
void Parameters (const Standard_Integer Index, Standard_Real &U1, Standard_Real &U2) const
 Returns the parameters U1 of the point on the first curve and U2 of the point on the second curve, which are the ends of the extremum of index Index computed by this algorithm. Exceptions Standard_OutOfRange if Index is not in the range [ 1,NbExtrema ], where NbExtrema is the number of extrema computed by this algorithm. More...
 
Standard_Real Distance (const Standard_Integer Index) const
 Computes the distance between the end points of the extremum of index Index computed by this algorithm. Exceptions Standard_OutOfRange if Index is not in the range [ 1,NbExtrema ], where NbExtrema is the number of extrema computed by this algorithm. More...
 
void NearestPoints (gp_Pnt2d &P1, gp_Pnt2d &P2) const
 Returns the points P1 on the first curve and P2 on the second curve, which are the ends of the shortest extremum computed by this algorithm. Exceptions StdFail_NotDone if this algorithm fails. More...
 
void LowerDistanceParameters (Standard_Real &U1, Standard_Real &U2) const
 Returns the parameters U1 of the point on the first curve and U2 of the point on the second curve, which are the ends of the shortest extremum computed by this algorithm. Exceptions StdFail_NotDone if this algorithm fails. More...
 
Standard_Real LowerDistance () const
 Computes the distance between the end points of the shortest extremum computed by this algorithm. Exceptions - StdFail_NotDone if this algorithm fails. More...
 
 operator Standard_Real () const
 
const Extrema_ExtCC2dExtrema () const
 

Detailed Description

Describes functions for computing all the extrema between two 2D curves. An ExtremaCurveCurve algorithm minimizes or maximizes the distance between a point on the first curve and a point on the second curve. Thus, it computes the start point and end point of perpendiculars common to the two curves (an intersection point is not an extremum except where the two curves are tangential at this point). Solutions consist of pairs of points, and an extremum is considered to be a segment joining the two points of a solution. An ExtremaCurveCurve object provides a framework for:

Constructor & Destructor Documentation

◆ Geom2dAPI_ExtremaCurveCurve()

Geom2dAPI_ExtremaCurveCurve::Geom2dAPI_ExtremaCurveCurve ( const Handle< Geom2d_Curve > &  C1,
const Handle< Geom2d_Curve > &  C2,
const Standard_Real  U1min,
const Standard_Real  U1max,
const Standard_Real  U2min,
const Standard_Real  U2max 
)

Computes the extrema between.

  • the portion of the curve C1 limited by the two points of parameter (U1min,U1max), and
  • the portion of the curve C2 limited by the two points of parameter (U2min,U2max). Warning Use the function NbExtrema to obtain the number of solutions. If this algorithm fails, NbExtrema returns 0.

Member Function Documentation

◆ Distance()

Standard_Real Geom2dAPI_ExtremaCurveCurve::Distance ( const Standard_Integer  Index) const

Computes the distance between the end points of the extremum of index Index computed by this algorithm. Exceptions Standard_OutOfRange if Index is not in the range [ 1,NbExtrema ], where NbExtrema is the number of extrema computed by this algorithm.

◆ Extrema()

const Extrema_ExtCC2d& Geom2dAPI_ExtremaCurveCurve::Extrema ( ) const

◆ LowerDistance()

Standard_Real Geom2dAPI_ExtremaCurveCurve::LowerDistance ( ) const

Computes the distance between the end points of the shortest extremum computed by this algorithm. Exceptions - StdFail_NotDone if this algorithm fails.

◆ LowerDistanceParameters()

void Geom2dAPI_ExtremaCurveCurve::LowerDistanceParameters ( Standard_Real U1,
Standard_Real U2 
) const

Returns the parameters U1 of the point on the first curve and U2 of the point on the second curve, which are the ends of the shortest extremum computed by this algorithm. Exceptions StdFail_NotDone if this algorithm fails.

◆ NbExtrema()

Standard_Integer Geom2dAPI_ExtremaCurveCurve::NbExtrema ( ) const

Returns the number of extrema computed by this algorithm. Note: if this algorithm fails, NbExtrema returns 0.

◆ NearestPoints()

void Geom2dAPI_ExtremaCurveCurve::NearestPoints ( gp_Pnt2d P1,
gp_Pnt2d P2 
) const

Returns the points P1 on the first curve and P2 on the second curve, which are the ends of the shortest extremum computed by this algorithm. Exceptions StdFail_NotDone if this algorithm fails.

◆ operator Standard_Integer()

Geom2dAPI_ExtremaCurveCurve::operator Standard_Integer ( ) const

◆ operator Standard_Real()

Geom2dAPI_ExtremaCurveCurve::operator Standard_Real ( ) const

◆ Parameters()

void Geom2dAPI_ExtremaCurveCurve::Parameters ( const Standard_Integer  Index,
Standard_Real U1,
Standard_Real U2 
) const

Returns the parameters U1 of the point on the first curve and U2 of the point on the second curve, which are the ends of the extremum of index Index computed by this algorithm. Exceptions Standard_OutOfRange if Index is not in the range [ 1,NbExtrema ], where NbExtrema is the number of extrema computed by this algorithm.

◆ Points()

void Geom2dAPI_ExtremaCurveCurve::Points ( const Standard_Integer  Index,
gp_Pnt2d P1,
gp_Pnt2d P2 
) const

Returns the points P1 on the first curve and P2 on the second curve, which are the ends of the extremum of index Index computed by this algorithm. Exceptions Standard_OutOfRange if Index is not in the range [ 1,NbExtrema ], where NbExtrema is the number of extrema computed by this algorithm.


The documentation for this class was generated from the following file: