OCC Main Page | ModelingData | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

ModelingData
TKGeomBase
IntAna2d


IntAna2d_AnaIntersection Class Reference

Implementation of the analytical intersection between:
- two Lin2d,
- two Circ2d,
- a Lin2d and a Circ2d,
- an element of gp (Lin2d, Circ2d, Elips2d, Parab2d, Hypr2d)
and another conic.
No tolerance is given for all the intersections: the tolerance
will be the "precision machine".
.

#include <IntAna2d_AnaIntersection.hxx>


Public Member Functions

void * operator new (size_t, void *anAddress)
void * operator new (size_t size)
void operator delete (void *anAddress)
Standard_EXPORT IntAna2d_AnaIntersection ()
 Empty constructor. IsDone returns False.
.
Standard_EXPORT IntAna2d_AnaIntersection (const gp_Lin2d &L1, const gp_Lin2d &L2)
 Intersection between two lines.
.
Standard_EXPORT IntAna2d_AnaIntersection (const gp_Circ2d &C1, const gp_Circ2d &C2)
 Intersection between two circles.
.
Standard_EXPORT IntAna2d_AnaIntersection (const gp_Lin2d &L, const gp_Circ2d &C)
 Intersection between a line and a circle.
.
Standard_EXPORT IntAna2d_AnaIntersection (const gp_Lin2d &L, const IntAna2d_Conic &C)
 Intersection between a line and a conic.
.
Standard_EXPORT IntAna2d_AnaIntersection (const gp_Circ2d &C, const IntAna2d_Conic &Co)
 Intersection between a circle and another conic.
.
Standard_EXPORT IntAna2d_AnaIntersection (const gp_Elips2d &E, const IntAna2d_Conic &C)
 Intersection between an ellipse and another conic.
.
Standard_EXPORT IntAna2d_AnaIntersection (const gp_Parab2d &P, const IntAna2d_Conic &C)
 Intersection between a parabola and another conic.
.
Standard_EXPORT IntAna2d_AnaIntersection (const gp_Hypr2d &H, const IntAna2d_Conic &C)
 Intersection between an hyperbola and another conic.
.
Standard_EXPORT void Perform (const gp_Lin2d &L1, const gp_Lin2d &L2)
 Intersection between two lines.
.
Standard_EXPORT void Perform (const gp_Circ2d &C1, const gp_Circ2d &C2)
 Intersection between two circles.
.
Standard_EXPORT void Perform (const gp_Lin2d &L, const gp_Circ2d &C)
 Intersection between a line and a circle.
.
Standard_EXPORT void Perform (const gp_Lin2d &L, const IntAna2d_Conic &C)
 Intersection between a line and a conic.
.
Standard_EXPORT void Perform (const gp_Circ2d &C, const IntAna2d_Conic &Co)
 Intersection between a circle and another conic.
.
Standard_EXPORT void Perform (const gp_Elips2d &E, const IntAna2d_Conic &C)
 Intersection between an ellipse and another conic.
.
Standard_EXPORT void Perform (const gp_Parab2d &P, const IntAna2d_Conic &C)
 Intersection between a parabola and another conic.
.
Standard_EXPORT void Perform (const gp_Hypr2d &H, const IntAna2d_Conic &C)
 Intersection between an hyperbola and another conic.
.
Standard_Boolean IsDone () const
 Returns TRUE if the computation was succesfull.
.
Standard_Boolean IsEmpty () const
 Returns TRUE when there is no intersection, i-e
- no intersection point
- the elements are not identical.
The element may be parallel in this case.
.
Standard_Boolean IdenticalElements () const
 For the intersection between an element of gp and a conic
known by an implicit equation, the result will be TRUE
if the element of gp verifies the implicit equation.
For the intersection between two Lin2d or two Circ2d, the
result will be TRUE if the elements are identical.
The function returns FALSE in all the other cases.
.
Standard_Boolean ParallelElements () const
 For the intersection between two Lin2d or two Circ2d,
the function returns TRUE if the elements are parallel.
The function returns FALSE in all the other cases.
.
Standard_Integer NbPoints () const
 returns the number of IntPoint between the 2 curves.

const IntAna2d_IntPointPoint (const Standard_Integer N) const
 returns the intersection point of range N;
If (N<=0) or (N>NbPoints), an exception is raised.


Private Attributes

Standard_Boolean done
Standard_Boolean para
Standard_Boolean iden
Standard_Boolean empt
Standard_Integer nbp
IntAna2d_IntPoint lpnt [4]


Constructor & Destructor Documentation

Standard_EXPORT IntAna2d_AnaIntersection::IntAna2d_AnaIntersection  ) 
 

Standard_EXPORT IntAna2d_AnaIntersection::IntAna2d_AnaIntersection const gp_Lin2d &  L1,
const gp_Lin2d &  L2
 

Standard_EXPORT IntAna2d_AnaIntersection::IntAna2d_AnaIntersection const gp_Circ2d &  C1,
const gp_Circ2d &  C2
 

Standard_EXPORT IntAna2d_AnaIntersection::IntAna2d_AnaIntersection const gp_Lin2d &  L,
const gp_Circ2d &  C
 

Standard_EXPORT IntAna2d_AnaIntersection::IntAna2d_AnaIntersection const gp_Lin2d &  L,
const IntAna2d_Conic C
 

Standard_EXPORT IntAna2d_AnaIntersection::IntAna2d_AnaIntersection const gp_Circ2d &  C,
const IntAna2d_Conic Co
 

Standard_EXPORT IntAna2d_AnaIntersection::IntAna2d_AnaIntersection const gp_Elips2d &  E,
const IntAna2d_Conic C
 

Standard_EXPORT IntAna2d_AnaIntersection::IntAna2d_AnaIntersection const gp_Parab2d &  P,
const IntAna2d_Conic C
 

Standard_EXPORT IntAna2d_AnaIntersection::IntAna2d_AnaIntersection const gp_Hypr2d &  H,
const IntAna2d_Conic C
 


Member Function Documentation

Standard_Boolean IntAna2d_AnaIntersection::IdenticalElements  )  const [inline]
 

Standard_Boolean IntAna2d_AnaIntersection::IsDone  )  const [inline]
 

Standard_Boolean IntAna2d_AnaIntersection::IsEmpty  )  const [inline]
 

Standard_Integer IntAna2d_AnaIntersection::NbPoints  )  const [inline]
 

void IntAna2d_AnaIntersection::operator delete void *  anAddress  )  [inline]
 

void* IntAna2d_AnaIntersection::operator new size_t  size  )  [inline]
 

void* IntAna2d_AnaIntersection::operator new size_t  ,
void *  anAddress
[inline]
 

Standard_Boolean IntAna2d_AnaIntersection::ParallelElements  )  const [inline]
 

Standard_EXPORT void IntAna2d_AnaIntersection::Perform const gp_Hypr2d &  H,
const IntAna2d_Conic C
 

Standard_EXPORT void IntAna2d_AnaIntersection::Perform const gp_Parab2d &  P,
const IntAna2d_Conic C
 

Standard_EXPORT void IntAna2d_AnaIntersection::Perform const gp_Elips2d &  E,
const IntAna2d_Conic C
 

Standard_EXPORT void IntAna2d_AnaIntersection::Perform const gp_Circ2d &  C,
const IntAna2d_Conic Co
 

Standard_EXPORT void IntAna2d_AnaIntersection::Perform const gp_Lin2d &  L,
const IntAna2d_Conic C
 

Standard_EXPORT void IntAna2d_AnaIntersection::Perform const gp_Lin2d &  L,
const gp_Circ2d &  C
 

Standard_EXPORT void IntAna2d_AnaIntersection::Perform const gp_Circ2d &  C1,
const gp_Circ2d &  C2
 

Standard_EXPORT void IntAna2d_AnaIntersection::Perform const gp_Lin2d &  L1,
const gp_Lin2d &  L2
 

const IntAna2d_IntPoint & IntAna2d_AnaIntersection::Point const Standard_Integer  N  )  const [inline]
 


Field Documentation

Standard_Boolean IntAna2d_AnaIntersection::done [private]
 

Standard_Boolean IntAna2d_AnaIntersection::empt [private]
 

Standard_Boolean IntAna2d_AnaIntersection::iden [private]
 

IntAna2d_IntPoint IntAna2d_AnaIntersection::lpnt[4] [private]
 

Standard_Integer IntAna2d_AnaIntersection::nbp [private]
 

Standard_Boolean IntAna2d_AnaIntersection::para [private]
 


The documentation for this class was generated from the following files:
Generated on Mon Aug 25 13:23:02 2008 for OpenCASCADE by  doxygen 1.4.1