OCCT 8.0.1
OCCT documentation

Search guides and API reference

Enter at least two characters.

    Open CASCADE Technology Reference Manual 8.0.1
    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. More...

    #include <IntAna_IntQuadQuad.hxx>

    Public Member Functions

     IntAna_IntQuadQuad ()
     Empty Constructor.
     IntAna_IntQuadQuad (const gp_Cylinder &C, const IntAna_Quadric &Q, const double Tol)
     Creates the intersection between a cylinder and a quadric. Tol est a definir plus precisemment.
     IntAna_IntQuadQuad (const gp_Cone &C, const IntAna_Quadric &Q, const double Tol)
     Creates the intersection between a cone and a quadric. Tol est a definir plus precisemment.
    void Perform (const gp_Cylinder &C, const IntAna_Quadric &Q, const double Tol)
     Intersects a cylinder and a quadric . Tol est a definir plus precisemment.
    void Perform (const gp_Cone &C, const IntAna_Quadric &Q, const double Tol)
     Intersects a cone and a quadric. Tol est a definir plus precisemment.
    bool IsDone () const
     Returns True if the computation was successful.
    bool IdenticalElements () const
     Returns TRUE if the cylinder, the cone or the sphere is identical to the quadric.
    int NbCurve () const
     Returns the number of curves solution.
    const IntAna_Curve & Curve (const int N) const
     Returns the curve of range N.
    int NbPnt () const
     Returns the number of contact point.
    const gp_Pnt & Point (const int N) const
     Returns the point of range N.
    void Parameters (const int N, double &U1, double &U2) const
     Returns the parameters on the "explicit quadric" (i.e. the cylinder or the cone, the first argument given to the constructor) of the point of range N.
    bool HasNextCurve (const int I) const
     Returns True if the Curve I shares its last bound with another curve.
    int NextCurve (const int I, bool &theOpposite) 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 theOpposite == 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.
    bool HasPreviousCurve (const int I) const
     Returns True if the Curve I shares its first bound with another curve.
    int PreviousCurve (const int I, bool &theOpposite) 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 theOpposite == 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

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

    Protected Attributes

    bool done
    bool identical
    IntAna_Curve TheCurve [12]
    int previouscurve [12]
    int nextcurve [12]
    int NbCurves
    int Nbpoints
    gp_Pnt Thepoints [2]
    int myNbMaxCurves
    double myEpsilon
    double myEpsilonCoeffPolyNull

    Detailed Description

    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)

    Constructor & Destructor Documentation

    ◆ IntAna_IntQuadQuad() [1/3]

    IntAna_IntQuadQuad::IntAna_IntQuadQuad ( )

    Empty Constructor.

    ◆ IntAna_IntQuadQuad() [2/3]

    IntAna_IntQuadQuad::IntAna_IntQuadQuad ( const gp_Cylinder & C,
    const IntAna_Quadric & Q,
    const double Tol )

    Creates the intersection between a cylinder and a quadric. Tol est a definir plus precisemment.

    ◆ IntAna_IntQuadQuad() [3/3]

    IntAna_IntQuadQuad::IntAna_IntQuadQuad ( const gp_Cone & C,
    const IntAna_Quadric & Q,
    const double Tol )

    Creates the intersection between a cone and a quadric. Tol est a definir plus precisemment.

    Member Function Documentation

    ◆ Curve()

    const IntAna_Curve & IntAna_IntQuadQuad::Curve ( const int N) const

    Returns the curve of range N.

    ◆ HasNextCurve()

    bool IntAna_IntQuadQuad::HasNextCurve ( const int I) const

    Returns True if the Curve I shares its last bound with another curve.

    ◆ HasPreviousCurve()

    bool IntAna_IntQuadQuad::HasPreviousCurve ( const int I) const

    Returns True if the Curve I shares its first bound with another curve.

    ◆ IdenticalElements()

    bool IntAna_IntQuadQuad::IdenticalElements ( ) const

    Returns TRUE if the cylinder, the cone or the sphere is identical to the quadric.

    ◆ InternalSetNextAndPrevious()

    void IntAna_IntQuadQuad::InternalSetNextAndPrevious ( )
    protected

    Set the next and previous fields. Private method.

    ◆ IsDone()

    bool IntAna_IntQuadQuad::IsDone ( ) const

    Returns True if the computation was successful.

    ◆ NbCurve()

    int IntAna_IntQuadQuad::NbCurve ( ) const

    Returns the number of curves solution.

    ◆ NbPnt()

    int IntAna_IntQuadQuad::NbPnt ( ) const

    Returns the number of contact point.

    ◆ NextCurve()

    int IntAna_IntQuadQuad::NextCurve ( const int I,
    bool & theOpposite ) 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 theOpposite == 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.

    ◆ Parameters()

    void IntAna_IntQuadQuad::Parameters ( const int N,
    double & U1,
    double & U2 ) const

    Returns the parameters on the "explicit quadric" (i.e. the cylinder or the cone, the first argument given to the constructor) of the point of range N.

    ◆ Perform() [1/2]

    void IntAna_IntQuadQuad::Perform ( const gp_Cone & C,
    const IntAna_Quadric & Q,
    const double Tol )

    Intersects a cone and a quadric. Tol est a definir plus precisemment.

    ◆ Perform() [2/2]

    void IntAna_IntQuadQuad::Perform ( const gp_Cylinder & C,
    const IntAna_Quadric & Q,
    const double Tol )

    Intersects a cylinder and a quadric . Tol est a definir plus precisemment.

    ◆ Point()

    const gp_Pnt & IntAna_IntQuadQuad::Point ( const int N) const

    Returns the point of range N.

    ◆ PreviousCurve()

    int IntAna_IntQuadQuad::PreviousCurve ( const int I,
    bool & theOpposite ) 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 theOpposite == 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.

    Field Documentation

    ◆ done

    bool IntAna_IntQuadQuad::done
    protected

    ◆ identical

    bool IntAna_IntQuadQuad::identical
    protected

    ◆ myEpsilon

    double IntAna_IntQuadQuad::myEpsilon
    protected

    ◆ myEpsilonCoeffPolyNull

    double IntAna_IntQuadQuad::myEpsilonCoeffPolyNull
    protected

    ◆ myNbMaxCurves

    int IntAna_IntQuadQuad::myNbMaxCurves
    protected

    ◆ NbCurves

    int IntAna_IntQuadQuad::NbCurves
    protected

    ◆ Nbpoints

    int IntAna_IntQuadQuad::Nbpoints
    protected

    ◆ nextcurve

    int IntAna_IntQuadQuad::nextcurve[12]
    protected

    ◆ previouscurve

    int IntAna_IntQuadQuad::previouscurve[12]
    protected

    ◆ TheCurve

    IntAna_Curve IntAna_IntQuadQuad::TheCurve[12]
    protected

    ◆ Thepoints

    gp_Pnt IntAna_IntQuadQuad::Thepoints[2]
    protected

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