Open CASCADE Technology 7.8.2.dev
Extrema_ExtElC Class Reference

It calculates all the distance between two elementary curves. These distances can be maximum or minimum. More...

#include <Extrema_ExtElC.hxx>

Public Member Functions

 Extrema_ExtElC ()
 
 Extrema_ExtElC (const gp_Lin &C1, const gp_Lin &C2, const Standard_Real AngTol)
 Calculates the distance between two lines. AngTol is used to test if the lines are parallel: Angle(C1,C2) < AngTol.
 
 Extrema_ExtElC (const gp_Lin &C1, const gp_Circ &C2, const Standard_Real Tol)
 Calculates the distance between a line and a circle.
 
 Extrema_ExtElC (const gp_Lin &C1, const gp_Elips &C2)
 Calculates the distance between a line and an ellipse.
 
 Extrema_ExtElC (const gp_Lin &C1, const gp_Hypr &C2)
 Calculates the distance between a line and a hyperbola.
 
 Extrema_ExtElC (const gp_Lin &C1, const gp_Parab &C2)
 Calculates the distance between a line and a parabola.
 
 Extrema_ExtElC (const gp_Circ &C1, const gp_Circ &C2)
 Calculates the distance between two circles. The circles can be parallel or identical.
 
Standard_Boolean IsDone () const
 Returns True if the distances are found.
 
Standard_Boolean IsParallel () const
 Returns True if the two curves are parallel.
 
Standard_Integer NbExt () const
 Returns the number of extremum distances.
 
Standard_Real SquareDistance (const Standard_Integer N=1) const
 Returns the value of the Nth extremum square distance.
 
void Points (const Standard_Integer N, Extrema_POnCurv &P1, Extrema_POnCurv &P2) const
 Returns the points of the Nth extremum distance. P1 is on the first curve, P2 on the second one.
 

Protected Member Functions

Standard_Boolean PlanarLineCircleExtrema (const gp_Lin &C1, const gp_Circ &C2)
 Computes extrema in case when considered line and circle are in one plane.
 

Detailed Description

It calculates all the distance between two elementary curves. These distances can be maximum or minimum.

Constructor & Destructor Documentation

◆ Extrema_ExtElC() [1/7]

Extrema_ExtElC::Extrema_ExtElC ( )

◆ Extrema_ExtElC() [2/7]

Extrema_ExtElC::Extrema_ExtElC ( const gp_Lin & C1,
const gp_Lin & C2,
const Standard_Real AngTol )

Calculates the distance between two lines. AngTol is used to test if the lines are parallel: Angle(C1,C2) < AngTol.

◆ Extrema_ExtElC() [3/7]

Extrema_ExtElC::Extrema_ExtElC ( const gp_Lin & C1,
const gp_Circ & C2,
const Standard_Real Tol )

Calculates the distance between a line and a circle.

◆ Extrema_ExtElC() [4/7]

Extrema_ExtElC::Extrema_ExtElC ( const gp_Lin & C1,
const gp_Elips & C2 )

Calculates the distance between a line and an ellipse.

◆ Extrema_ExtElC() [5/7]

Extrema_ExtElC::Extrema_ExtElC ( const gp_Lin & C1,
const gp_Hypr & C2 )

Calculates the distance between a line and a hyperbola.

◆ Extrema_ExtElC() [6/7]

Extrema_ExtElC::Extrema_ExtElC ( const gp_Lin & C1,
const gp_Parab & C2 )

Calculates the distance between a line and a parabola.

◆ Extrema_ExtElC() [7/7]

Extrema_ExtElC::Extrema_ExtElC ( const gp_Circ & C1,
const gp_Circ & C2 )

Calculates the distance between two circles. The circles can be parallel or identical.

Member Function Documentation

◆ IsDone()

Standard_Boolean Extrema_ExtElC::IsDone ( ) const

Returns True if the distances are found.

◆ IsParallel()

Standard_Boolean Extrema_ExtElC::IsParallel ( ) const

Returns True if the two curves are parallel.

◆ NbExt()

Standard_Integer Extrema_ExtElC::NbExt ( ) const

Returns the number of extremum distances.

◆ PlanarLineCircleExtrema()

Standard_Boolean Extrema_ExtElC::PlanarLineCircleExtrema ( const gp_Lin & C1,
const gp_Circ & C2 )
protected

Computes extrema in case when considered line and circle are in one plane.

◆ Points()

void Extrema_ExtElC::Points ( const Standard_Integer N,
Extrema_POnCurv & P1,
Extrema_POnCurv & P2 ) const

Returns the points of the Nth extremum distance. P1 is on the first curve, P2 on the second one.

◆ SquareDistance()

Standard_Real Extrema_ExtElC::SquareDistance ( const Standard_Integer N = 1) const

Returns the value of the Nth extremum square distance.


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