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

ModelingData
TKGeomBase
IntAna


IntAna_IntQuadQuad Class Reference

This class provides the analytic intersection between a
cylinder or a cone from gp and another quadric, as defined
in the class Quadric from IntAna.
This algorithm is used when the geometric intersection
(class QuadQuadGeo from IntAna) returns no geometric
solution.
The result of the intersection may be
- Curves as defined in the class Curve from IntAna
- Points (Pnt from gp)
.

#include <IntAna_IntQuadQuad.hxx>


Public Member Functions

void * operator new (size_t, void *anAddress)
void * operator new (size_t size)
void operator delete (void *anAddress)
Standard_EXPORT IntAna_IntQuadQuad ()
 Empty Constructor
.
Standard_EXPORT IntAna_IntQuadQuad (const gp_Cylinder &C, const IntAna_Quadric &Q, const Standard_Real Tol)
 Creates the intersection between a cylinder and a quadric .
Tol est a definir plus precisemment.
.
Standard_EXPORT IntAna_IntQuadQuad (const gp_Cone &C, const IntAna_Quadric &Q, const Standard_Real Tol)
 Creates the intersection between a cone and a quadric.
Tol est a definir plus precisemment.
.
Standard_EXPORT void Perform (const gp_Cylinder &C, const IntAna_Quadric &Q, const Standard_Real Tol)
 Intersects a cylinder and a quadric .
Tol est a definir plus precisemment.
.
Standard_EXPORT void Perform (const gp_Cone &C, const IntAna_Quadric &Q, const Standard_Real Tol)
 Intersects a cone and a quadric.
Tol est a definir plus precisemment.
.
Standard_Boolean IsDone () const
 Returns True if the computation was successful.

.
Standard_Boolean IdenticalElements () const
 Returns TRUE if the cylinder, the cone or the sphere
is identical to the quadric.

.
Standard_Integer NbCurve () const
 Returns the number of curves solution.

.
Standard_EXPORT const IntAna_CurveCurve (const Standard_Integer N) const
 Returns the curve of range N.

.
Standard_Integer NbPnt () const
 Returns the number of contact point.

.
Standard_EXPORT const gp_Pnt & Point (const Standard_Integer N) const
 Returns the point of range N.

.
Standard_EXPORT void Parameters (const Standard_Integer N, Standard_Real &U1, Standard_Real &U2) const
 Returns the paramaters on the "explicit quadric"
(i.e the cylinder or the cone, the
first argument given to the constructor) of the
point of range N.
.
Standard_EXPORT Standard_Boolean HasNextCurve (const Standard_Integer I) const
 Returns True if the Curve I shares its last bound
with another curve.
.
Standard_EXPORT Standard_Integer NextCurve (const Standard_Integer I, Standard_Boolean &Opposite) const
 If HasNextCurve(I) returns True, this function
returns the Index J of the curve which has a
common bound with the curve I. If Opposite ==
True , then the last parameter of the curve I, and
the last parameter of the curve J give the same
point. Else the last parameter of the curve I and
the first parameter of the curve J are the same
point.
.
Standard_EXPORT Standard_Boolean HasPreviousCurve (const Standard_Integer I) const
 Returns True if the Curve I shares its first bound
with another curve.
.
Standard_EXPORT Standard_Integer PreviousCurve (const Standard_Integer I, Standard_Boolean &Opposite) const
 if HasPreviousCurve(I) returns True, this function
returns the Index J of the curve which has a
common bound with the curve I. If Opposite ==
True , then the first parameter of the curve I,
and the first parameter of the curve J give the
same point. Else the first parameter of the curve
I and the last parameter of the curve J are the
same point.


Protected Member Functions

Standard_EXPORT void InternalSetNextAndPrevious ()
 Set the next and previous fields. Private method.
.

Protected Attributes

Standard_Boolean done
Standard_Boolean identical
IntAna_Curve TheCurve [12]
Standard_Integer previouscurve [12]
Standard_Integer nextcurve [12]
Standard_Integer NbCurves
Standard_Integer Nbpoints
gp_Pnt Thepoints [2]
Standard_Integer myNbMaxCurves
Standard_Real myEpsilon
Standard_Real myEpsilonCoeffPolyNull


Constructor & Destructor Documentation

Standard_EXPORT IntAna_IntQuadQuad::IntAna_IntQuadQuad  ) 
 

Standard_EXPORT IntAna_IntQuadQuad::IntAna_IntQuadQuad const gp_Cylinder &  C,
const IntAna_Quadric Q,
const Standard_Real  Tol
 

Standard_EXPORT IntAna_IntQuadQuad::IntAna_IntQuadQuad const gp_Cone &  C,
const IntAna_Quadric Q,
const Standard_Real  Tol
 


Member Function Documentation

Standard_EXPORT const IntAna_Curve& IntAna_IntQuadQuad::Curve const Standard_Integer  N  )  const
 

Standard_EXPORT Standard_Boolean IntAna_IntQuadQuad::HasNextCurve const Standard_Integer  I  )  const
 

Standard_EXPORT Standard_Boolean IntAna_IntQuadQuad::HasPreviousCurve const Standard_Integer  I  )  const
 

Standard_Boolean IntAna_IntQuadQuad::IdenticalElements  )  const [inline]
 

Standard_EXPORT void IntAna_IntQuadQuad::InternalSetNextAndPrevious  )  [protected]
 

Standard_Boolean IntAna_IntQuadQuad::IsDone  )  const [inline]
 

Standard_Integer IntAna_IntQuadQuad::NbCurve  )  const [inline]
 

Standard_Integer IntAna_IntQuadQuad::NbPnt  )  const [inline]
 

Standard_EXPORT Standard_Integer IntAna_IntQuadQuad::NextCurve const Standard_Integer  I,
Standard_Boolean &  Opposite
const
 

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

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

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

Standard_EXPORT void IntAna_IntQuadQuad::Parameters const Standard_Integer  N,
Standard_Real &  U1,
Standard_Real &  U2
const
 

Standard_EXPORT void IntAna_IntQuadQuad::Perform const gp_Cone &  C,
const IntAna_Quadric Q,
const Standard_Real  Tol
 

Standard_EXPORT void IntAna_IntQuadQuad::Perform const gp_Cylinder &  C,
const IntAna_Quadric Q,
const Standard_Real  Tol
 

Standard_EXPORT const gp_Pnt& IntAna_IntQuadQuad::Point const Standard_Integer  N  )  const
 

Standard_EXPORT Standard_Integer IntAna_IntQuadQuad::PreviousCurve const Standard_Integer  I,
Standard_Boolean &  Opposite
const
 


Field Documentation

Standard_Boolean IntAna_IntQuadQuad::done [protected]
 

Standard_Boolean IntAna_IntQuadQuad::identical [protected]
 

Standard_Real IntAna_IntQuadQuad::myEpsilon [protected]
 

Standard_Real IntAna_IntQuadQuad::myEpsilonCoeffPolyNull [protected]
 

Standard_Integer IntAna_IntQuadQuad::myNbMaxCurves [protected]
 

Standard_Integer IntAna_IntQuadQuad::NbCurves [protected]
 

Standard_Integer IntAna_IntQuadQuad::Nbpoints [protected]
 

Standard_Integer IntAna_IntQuadQuad::nextcurve[12] [protected]
 

Standard_Integer IntAna_IntQuadQuad::previouscurve[12] [protected]
 

IntAna_Curve IntAna_IntQuadQuad::TheCurve[12] [protected]
 

gp_Pnt IntAna_IntQuadQuad::Thepoints[2] [protected]
 


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