Open CASCADE Technology 6.6.0
Public Member Functions
IntAna_IntConicQuad Class Reference

This class provides the analytic intersection between
a conic defined as an element of gp (Lin,Circ,Elips,
Parab,Hypr) and a quadric as defined in the class
Quadric from IntAna.
The intersection between a conic and a plane is treated
as a special case.

The result of the intersection are points (Pnt from
gp), associated with the parameter on the conic.

A call to an Intersection L:Lin from gp and
SPH: Sphere from gp can be written either :
IntAna_IntConicQuad Inter(L,IntAna_Quadric(SPH))
or :
IntAna_IntConicQuad Inter(L,SPH) (it is necessary
to include IntAna_Quadric.hxx in this case)

#include <IntAna_IntConicQuad.hxx>

Public Member Functions

 IntAna_IntConicQuad ()
 Empty constructor.


 IntAna_IntConicQuad (const gp_Lin &L, const IntAna_Quadric &Q)
 Creates the intersection between a line and a quadric.

void Perform (const gp_Lin &L, const IntAna_Quadric &Q)
 Intersects a line and a quadric.

 IntAna_IntConicQuad (const gp_Circ &C, const IntAna_Quadric &Q)
 Creates the intersection between a circle and a quadric.

void Perform (const gp_Circ &C, const IntAna_Quadric &Q)
 Intersects a circle and a quadric.

 IntAna_IntConicQuad (const gp_Elips &E, const IntAna_Quadric &Q)
 Creates the intersection between an ellipse and a quadric.

void Perform (const gp_Elips &E, const IntAna_Quadric &Q)
 Intersects an ellipse and a quadric.

 IntAna_IntConicQuad (const gp_Parab &P, const IntAna_Quadric &Q)
 Creates the intersection between a parabola and a quadric.

void Perform (const gp_Parab &P, const IntAna_Quadric &Q)
 Intersects a parabola and a quadric.

 IntAna_IntConicQuad (const gp_Hypr &H, const IntAna_Quadric &Q)
 Creates the intersection between an hyperbola and
a quadric.

void Perform (const gp_Hypr &H, const IntAna_Quadric &Q)
 Intersects an hyperbola and a quadric.

 IntAna_IntConicQuad (const gp_Lin &L, const gp_Pln &P, const Standard_Real Tolang)
 Intersection between a line and a plane.
Tolang is used to determine if the angle between two
vectors is null.

void Perform (const gp_Lin &L, const gp_Pln &P, const Standard_Real Tolang)
 Intersects a line and a plane.
Tolang is used to determine if the angle between two
vectors is null.

 IntAna_IntConicQuad (const gp_Circ &C, const gp_Pln &P, const Standard_Real Tolang, const Standard_Real Tol)
 Intersection between a circle and a plane.
Tolang is used to determine if the angle between two
vectors is null.
Tol is used to determine if a distance is null.

void Perform (const gp_Circ &C, const gp_Pln &P, const Standard_Real Tolang, const Standard_Real Tol)
 Intersects a circle and a plane.
Tolang is used to determine if the angle between two
vectors is null.
Tol is used to determine if a distance is null.

 IntAna_IntConicQuad (const gp_Elips &E, const gp_Pln &P, const Standard_Real Tolang, const Standard_Real Tol)
 Intersection between an ellipse and a plane.
Tolang is used to determine if the angle between two
vectors is null.
Tol is used to determine if a distance is null.

void Perform (const gp_Elips &E, const gp_Pln &P, const Standard_Real Tolang, const Standard_Real Tol)
 Intersects an ellipse and a plane.
Tolang is used to determine if the angle between two
vectors is null.
Tol is used to determine if a distance is null.

 IntAna_IntConicQuad (const gp_Parab &Pb, const gp_Pln &P, const Standard_Real Tolang)
 Intersection between a parabola and a plane.
Tolang is used to determine if the angle between two
vectors is null.

void Perform (const gp_Parab &Pb, const gp_Pln &P, const Standard_Real Tolang)
 Intersects a parabola and a plane.
Tolang is used to determine if the angle between two
vectors is null.

 IntAna_IntConicQuad (const gp_Hypr &H, const gp_Pln &P, const Standard_Real Tolang)
 Intersection between an hyperbola and a plane.
Tolang is used to determine if the angle between two
vectors is null.

void Perform (const gp_Hypr &H, const gp_Pln &P, const Standard_Real Tolang)
 Intersects an hyperbola and a plane.
Tolang is used to determine if the angle between two
vectors is null.

Standard_Boolean IsDone () const
 Returns TRUE if the creation completed.


Standard_Boolean IsInQuadric () const
 Returns TRUE if the conic is in the quadric.


Standard_Boolean IsParallel () const
 Returns TRUE if the line is in a quadric which
is parallel to the quadric.

Standard_Integer NbPoints () const
 Returns the number of intersection point.


const gp_PntPoint (const Standard_Integer N) const
 Returns the point of range N.


Standard_Real ParamOnConic (const Standard_Integer N) const
 Returns the parameter on the line of the intersection
point of range N.



Constructor & Destructor Documentation

IntAna_IntConicQuad::IntAna_IntConicQuad ( )
IntAna_IntConicQuad::IntAna_IntConicQuad ( const gp_Lin L,
const IntAna_Quadric Q 
)
IntAna_IntConicQuad::IntAna_IntConicQuad ( const gp_Circ C,
const IntAna_Quadric Q 
)
IntAna_IntConicQuad::IntAna_IntConicQuad ( const gp_Elips E,
const IntAna_Quadric Q 
)
IntAna_IntConicQuad::IntAna_IntConicQuad ( const gp_Parab P,
const IntAna_Quadric Q 
)
IntAna_IntConicQuad::IntAna_IntConicQuad ( const gp_Hypr H,
const IntAna_Quadric Q 
)
IntAna_IntConicQuad::IntAna_IntConicQuad ( const gp_Lin L,
const gp_Pln P,
const Standard_Real  Tolang 
)
IntAna_IntConicQuad::IntAna_IntConicQuad ( const gp_Circ C,
const gp_Pln P,
const Standard_Real  Tolang,
const Standard_Real  Tol 
)
IntAna_IntConicQuad::IntAna_IntConicQuad ( const gp_Elips E,
const gp_Pln P,
const Standard_Real  Tolang,
const Standard_Real  Tol 
)
IntAna_IntConicQuad::IntAna_IntConicQuad ( const gp_Parab Pb,
const gp_Pln P,
const Standard_Real  Tolang 
)
IntAna_IntConicQuad::IntAna_IntConicQuad ( const gp_Hypr H,
const gp_Pln P,
const Standard_Real  Tolang 
)

Member Function Documentation

Standard_Boolean IntAna_IntConicQuad::IsDone ( ) const
Standard_Boolean IntAna_IntConicQuad::IsInQuadric ( ) const
Standard_Boolean IntAna_IntConicQuad::IsParallel ( ) const
Standard_Integer IntAna_IntConicQuad::NbPoints ( ) const
Standard_Real IntAna_IntConicQuad::ParamOnConic ( const Standard_Integer  N) const
void IntAna_IntConicQuad::Perform ( const gp_Elips E,
const IntAna_Quadric Q 
)
void IntAna_IntConicQuad::Perform ( const gp_Hypr H,
const IntAna_Quadric Q 
)
void IntAna_IntConicQuad::Perform ( const gp_Hypr H,
const gp_Pln P,
const Standard_Real  Tolang 
)
void IntAna_IntConicQuad::Perform ( const gp_Parab Pb,
const gp_Pln P,
const Standard_Real  Tolang 
)
void IntAna_IntConicQuad::Perform ( const gp_Lin L,
const IntAna_Quadric Q 
)
void IntAna_IntConicQuad::Perform ( const gp_Circ C,
const gp_Pln P,
const Standard_Real  Tolang,
const Standard_Real  Tol 
)
void IntAna_IntConicQuad::Perform ( const gp_Lin L,
const gp_Pln P,
const Standard_Real  Tolang 
)
void IntAna_IntConicQuad::Perform ( const gp_Circ C,
const IntAna_Quadric Q 
)
void IntAna_IntConicQuad::Perform ( const gp_Parab P,
const IntAna_Quadric Q 
)
void IntAna_IntConicQuad::Perform ( const gp_Elips E,
const gp_Pln P,
const Standard_Real  Tolang,
const Standard_Real  Tol 
)
const gp_Pnt& IntAna_IntConicQuad::Point ( const Standard_Integer  N) const

The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines