OCCT3D OCCT 8.0.1
OCCT documentation

Search guides and API reference

Enter at least two characters.

    Open CASCADE Technology Reference Manual 8.0.1
    IntAna2d_AnaIntersection Class Reference

    Implementation of the analytical intersection between: More...

    #include <IntAna2d_AnaIntersection.hxx>

    Public Member Functions

     IntAna2d_AnaIntersection ()
     Empty constructor. IsDone returns False.
     IntAna2d_AnaIntersection (const gp_Lin2d &L1, const gp_Lin2d &L2)
     Intersection between two lines.
     IntAna2d_AnaIntersection (const gp_Circ2d &C1, const gp_Circ2d &C2)
     Intersection between two circles.
     IntAna2d_AnaIntersection (const gp_Lin2d &L, const gp_Circ2d &C)
     Intersection between a line and a circle.
     IntAna2d_AnaIntersection (const gp_Lin2d &L, const IntAna2d_Conic &C)
     Intersection between a line and a conic.
     IntAna2d_AnaIntersection (const gp_Circ2d &C, const IntAna2d_Conic &Co)
     Intersection between a circle and another conic.
     IntAna2d_AnaIntersection (const gp_Elips2d &E, const IntAna2d_Conic &C)
     Intersection between an ellipse and another conic.
     IntAna2d_AnaIntersection (const gp_Parab2d &P, const IntAna2d_Conic &C)
     Intersection between a parabola and another conic.
     IntAna2d_AnaIntersection (const gp_Hypr2d &H, const IntAna2d_Conic &C)
     Intersection between an hyperbola and another conic.
    void Perform (const gp_Lin2d &L1, const gp_Lin2d &L2)
     Intersection between two lines.
    void Perform (const gp_Circ2d &C1, const gp_Circ2d &C2)
     Intersection between two circles.
    void Perform (const gp_Lin2d &L, const gp_Circ2d &C)
     Intersection between a line and a circle.
    void Perform (const gp_Lin2d &L, const IntAna2d_Conic &C)
     Intersection between a line and a conic.
    void Perform (const gp_Circ2d &C, const IntAna2d_Conic &Co)
     Intersection between a circle and another conic.
    void Perform (const gp_Elips2d &E, const IntAna2d_Conic &C)
     Intersection between an ellipse and another conic.
    void Perform (const gp_Parab2d &P, const IntAna2d_Conic &C)
     Intersection between a parabola and another conic.
    void Perform (const gp_Hypr2d &H, const IntAna2d_Conic &C)
     Intersection between an hyperbola and another conic.
    bool IsDone () const
     Returns TRUE if the computation was successful.
    bool IsEmpty () const
     Returns TRUE when there is no intersection, i-e.
    bool 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.
    bool 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.
    int NbPoints () const
     returns the number of IntPoint between the 2 curves.
    const IntAna2d_IntPointPoint (const int N) const
     returns the intersection point of range N; If (N<=0) or (N>NbPoints), an exception is raised.

    Detailed Description

    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".

    Constructor & Destructor Documentation

    ◆ IntAna2d_AnaIntersection() [1/9]

    IntAna2d_AnaIntersection::IntAna2d_AnaIntersection ( )

    Empty constructor. IsDone returns False.

    ◆ IntAna2d_AnaIntersection() [2/9]

    IntAna2d_AnaIntersection::IntAna2d_AnaIntersection ( const gp_Lin2d & L1,
    const gp_Lin2d & L2 )

    Intersection between two lines.

    ◆ IntAna2d_AnaIntersection() [3/9]

    IntAna2d_AnaIntersection::IntAna2d_AnaIntersection ( const gp_Circ2d & C1,
    const gp_Circ2d & C2 )

    Intersection between two circles.

    ◆ IntAna2d_AnaIntersection() [4/9]

    IntAna2d_AnaIntersection::IntAna2d_AnaIntersection ( const gp_Lin2d & L,
    const gp_Circ2d & C )

    Intersection between a line and a circle.

    ◆ IntAna2d_AnaIntersection() [5/9]

    IntAna2d_AnaIntersection::IntAna2d_AnaIntersection ( const gp_Lin2d & L,
    const IntAna2d_Conic & C )

    Intersection between a line and a conic.

    ◆ IntAna2d_AnaIntersection() [6/9]

    IntAna2d_AnaIntersection::IntAna2d_AnaIntersection ( const gp_Circ2d & C,
    const IntAna2d_Conic & Co )

    Intersection between a circle and another conic.

    ◆ IntAna2d_AnaIntersection() [7/9]

    IntAna2d_AnaIntersection::IntAna2d_AnaIntersection ( const gp_Elips2d & E,
    const IntAna2d_Conic & C )

    Intersection between an ellipse and another conic.

    ◆ IntAna2d_AnaIntersection() [8/9]

    IntAna2d_AnaIntersection::IntAna2d_AnaIntersection ( const gp_Parab2d & P,
    const IntAna2d_Conic & C )

    Intersection between a parabola and another conic.

    ◆ IntAna2d_AnaIntersection() [9/9]

    IntAna2d_AnaIntersection::IntAna2d_AnaIntersection ( const gp_Hypr2d & H,
    const IntAna2d_Conic & C )

    Intersection between an hyperbola and another conic.

    Member Function Documentation

    ◆ IdenticalElements()

    bool IntAna2d_AnaIntersection::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.

    ◆ IsDone()

    bool IntAna2d_AnaIntersection::IsDone ( ) const

    Returns TRUE if the computation was successful.

    ◆ IsEmpty()

    bool IntAna2d_AnaIntersection::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.

    ◆ NbPoints()

    int IntAna2d_AnaIntersection::NbPoints ( ) const

    returns the number of IntPoint between the 2 curves.

    ◆ ParallelElements()

    bool IntAna2d_AnaIntersection::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.

    ◆ Perform() [1/8]

    void IntAna2d_AnaIntersection::Perform ( const gp_Circ2d & C,
    const IntAna2d_Conic & Co )

    Intersection between a circle and another conic.

    ◆ Perform() [2/8]

    void IntAna2d_AnaIntersection::Perform ( const gp_Circ2d & C1,
    const gp_Circ2d & C2 )

    Intersection between two circles.

    ◆ Perform() [3/8]

    void IntAna2d_AnaIntersection::Perform ( const gp_Elips2d & E,
    const IntAna2d_Conic & C )

    Intersection between an ellipse and another conic.

    ◆ Perform() [4/8]

    void IntAna2d_AnaIntersection::Perform ( const gp_Hypr2d & H,
    const IntAna2d_Conic & C )

    Intersection between an hyperbola and another conic.

    ◆ Perform() [5/8]

    void IntAna2d_AnaIntersection::Perform ( const gp_Lin2d & L,
    const gp_Circ2d & C )

    Intersection between a line and a circle.

    ◆ Perform() [6/8]

    void IntAna2d_AnaIntersection::Perform ( const gp_Lin2d & L,
    const IntAna2d_Conic & C )

    Intersection between a line and a conic.

    ◆ Perform() [7/8]

    void IntAna2d_AnaIntersection::Perform ( const gp_Lin2d & L1,
    const gp_Lin2d & L2 )

    Intersection between two lines.

    ◆ Perform() [8/8]

    void IntAna2d_AnaIntersection::Perform ( const gp_Parab2d & P,
    const IntAna2d_Conic & C )

    Intersection between a parabola and another conic.

    ◆ Point()

    const IntAna2d_IntPoint & IntAna2d_AnaIntersection::Point ( const int N) const

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


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