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
    IntTools_Tools Class Reference

    The class contains handy static functions dealing with the geometry and topology. More...

    #include <IntTools_Tools.hxx>

    Static Public Member Functions

    static int ComputeVV (const TopoDS_Vertex &V1, const TopoDS_Vertex &V2)
     Computes distance between vertex V1 and vertex V2, if the distance is less than sum of vertex tolerances returns zero, otherwise returns negative value.
    static bool HasInternalEdge (const TopoDS_Wire &aW)
     Returns True if wire aW contains edges with INTERNAL orientation.
    static void MakeFaceFromWireAndFace (const TopoDS_Wire &aW, const TopoDS_Face &aF, TopoDS_Face &aFNew)
     Build a face based on surface of given face aF and bounded by wire aW.
    static TopAbs_State ClassifyPointByFace (const TopoDS_Face &aF, const gp_Pnt2d &P)
    static bool IsVertex (const TopoDS_Edge &E, const double tt)
     Computes square distance between a point on the edge E corresponded to parameter t and vertices of edge E. Returns True if this distance is less than square tolerance of vertex, otherwise returns false.
    static bool IsVertex (const TopoDS_Edge &E, const TopoDS_Vertex &V, const double tt)
     Returns True if square distance between vertex V and a point on the edge E corresponded to parameter t is less than square tolerance of V.
    static bool IsVertex (const IntTools_CommonPrt &aCmnPrt)
     Returns True if IsVertx for middle parameter of fist range and first edge returns True and if IsVertex for middle parameter of second range and second range returns True, otherwise returns False.
    static bool IsMiddlePointsEqual (const TopoDS_Edge &E1, const TopoDS_Edge &E2)
     Gets boundary of parameters of E1 and E2. Computes 3d points on each corresponded to average parameters. Returns True if distance between computed points is less than sum of edge tolerance, otherwise returns False.
    static bool IsVertex (const gp_Pnt &aP, const double aTolPV, const TopoDS_Vertex &aV)
     Returns True if the distance between point aP and vertex aV is less or equal to sum of aTolPV and vertex tolerance, otherwise returns False.
    static double IntermediatePoint (const double aFirst, const double aLast)
     Returns some value between aFirst and aLast.
    static int SplitCurve (const IntTools_Curve &aC, NCollection_Sequence< IntTools_Curve > &aS)
     Split aC by average parameter if aC is closed in 3D. Returns positive value if splitting has been done, otherwise returns zero.
    static void RejectLines (const NCollection_Sequence< IntTools_Curve > &aSIn, NCollection_Sequence< IntTools_Curve > &aSOut)
     Puts curves from aSIn to aSOut except those curves that are coincide with first curve from aSIn.
    static bool IsDirsCoinside (const gp_Dir &D1, const gp_Dir &D2)
     Returns True if D1 and D2 coincide.
    static bool IsDirsCoinside (const gp_Dir &D1, const gp_Dir &D2, const double aTol)
     Returns True if D1 and D2 coincide with given tolerance.
    static bool IsClosed (const occ::handle< Geom_Curve > &aC)
     Returns True if aC is BoundedCurve from Geom and the distance between first point of the curve aC and last point is less than 1.e-12.
    static double CurveTolerance (const occ::handle< Geom_Curve > &aC, const double aTolBase)
     Returns adaptive tolerance for given aTolBase if aC is trimmed curve and basis curve is parabola, otherwise returns value of aTolBase.
    static bool CheckCurve (const IntTools_Curve &theCurve, Bnd_Box &theBox)
     Checks if the curve is not covered by the default tolerance (confusion). Builds bounding box for the curve and stores it into <theBox>.
    static bool IsOnPave (const double theT, const IntTools_Range &theRange, const double theTol)
    static void VertexParameters (const IntTools_CommonPrt &theCP, double &theT1, double &theT2)
    static void VertexParameter (const IntTools_CommonPrt &theCP, double &theT)
    static bool IsOnPave1 (const double theT, const IntTools_Range &theRange, const double theTol)
    static bool IsInRange (const IntTools_Range &theRRef, const IntTools_Range &theR, const double theTol)
     Checks if the range <theR> interfere with the range <theRRef>.
    static int SegPln (const gp_Lin &theLin, const double theTLin1, const double theTLin2, const double theTolLin, const gp_Pln &thePln, const double theTolPln, gp_Pnt &theP, double &theT, double &theTolP, double &theTmin, double &theTmax)
    static bool ComputeTolerance (const occ::handle< Geom_Curve > &theCurve3D, const occ::handle< Geom2d_Curve > &theCurve2D, const occ::handle< Geom_Surface > &theSurf, const double theFirst, const double theLast, double &theMaxDist, double &theMaxPar, const double theTolRange=Precision::PConfusion(), const bool theToRunParallel=false)
     Computes the max distance between points taken from 3D and 2D curves by the same parameter.
    static double ComputeIntRange (const double theTol1, const double theTol2, const double theAngle)
     Computes the correct Intersection range for Line/Line, Line/Plane and Plane/Plane intersections.

    Detailed Description

    The class contains handy static functions dealing with the geometry and topology.

    Member Function Documentation

    ◆ CheckCurve()

    bool IntTools_Tools::CheckCurve ( const IntTools_Curve & theCurve,
    Bnd_Box & theBox )
    static

    Checks if the curve is not covered by the default tolerance (confusion). Builds bounding box for the curve and stores it into <theBox>.

    ◆ ClassifyPointByFace()

    TopAbs_State IntTools_Tools::ClassifyPointByFace ( const TopoDS_Face & aF,
    const gp_Pnt2d & P )
    static

    ◆ ComputeIntRange()

    double IntTools_Tools::ComputeIntRange ( const double theTol1,
    const double theTol2,
    const double theAngle )
    static

    Computes the correct Intersection range for Line/Line, Line/Plane and Plane/Plane intersections.

    ◆ ComputeTolerance()

    bool IntTools_Tools::ComputeTolerance ( const occ::handle< Geom_Curve > & theCurve3D,
    const occ::handle< Geom2d_Curve > & theCurve2D,
    const occ::handle< Geom_Surface > & theSurf,
    const double theFirst,
    const double theLast,
    double & theMaxDist,
    double & theMaxPar,
    const double theTolRange = Precision::PConfusion(),
    const bool theToRunParallel = false )
    static

    Computes the max distance between points taken from 3D and 2D curves by the same parameter.

    ◆ ComputeVV()

    int IntTools_Tools::ComputeVV ( const TopoDS_Vertex & V1,
    const TopoDS_Vertex & V2 )
    static

    Computes distance between vertex V1 and vertex V2, if the distance is less than sum of vertex tolerances returns zero, otherwise returns negative value.

    ◆ CurveTolerance()

    double IntTools_Tools::CurveTolerance ( const occ::handle< Geom_Curve > & aC,
    const double aTolBase )
    static

    Returns adaptive tolerance for given aTolBase if aC is trimmed curve and basis curve is parabola, otherwise returns value of aTolBase.

    ◆ HasInternalEdge()

    bool IntTools_Tools::HasInternalEdge ( const TopoDS_Wire & aW)
    static

    Returns True if wire aW contains edges with INTERNAL orientation.

    ◆ IntermediatePoint()

    double IntTools_Tools::IntermediatePoint ( const double aFirst,
    const double aLast )
    static

    Returns some value between aFirst and aLast.

    ◆ IsClosed()

    bool IntTools_Tools::IsClosed ( const occ::handle< Geom_Curve > & aC)
    static

    Returns True if aC is BoundedCurve from Geom and the distance between first point of the curve aC and last point is less than 1.e-12.

    ◆ IsDirsCoinside() [1/2]

    bool IntTools_Tools::IsDirsCoinside ( const gp_Dir & D1,
    const gp_Dir & D2 )
    static

    Returns True if D1 and D2 coincide.

    ◆ IsDirsCoinside() [2/2]

    bool IntTools_Tools::IsDirsCoinside ( const gp_Dir & D1,
    const gp_Dir & D2,
    const double aTol )
    static

    Returns True if D1 and D2 coincide with given tolerance.

    ◆ IsInRange()

    bool IntTools_Tools::IsInRange ( const IntTools_Range & theRRef,
    const IntTools_Range & theR,
    const double theTol )
    static

    Checks if the range <theR> interfere with the range <theRRef>.

    ◆ IsMiddlePointsEqual()

    bool IntTools_Tools::IsMiddlePointsEqual ( const TopoDS_Edge & E1,
    const TopoDS_Edge & E2 )
    static

    Gets boundary of parameters of E1 and E2. Computes 3d points on each corresponded to average parameters. Returns True if distance between computed points is less than sum of edge tolerance, otherwise returns False.

    ◆ IsOnPave()

    bool IntTools_Tools::IsOnPave ( const double theT,
    const IntTools_Range & theRange,
    const double theTol )
    static

    ◆ IsOnPave1()

    bool IntTools_Tools::IsOnPave1 ( const double theT,
    const IntTools_Range & theRange,
    const double theTol )
    static

    ◆ IsVertex() [1/4]

    bool IntTools_Tools::IsVertex ( const gp_Pnt & aP,
    const double aTolPV,
    const TopoDS_Vertex & aV )
    static

    Returns True if the distance between point aP and vertex aV is less or equal to sum of aTolPV and vertex tolerance, otherwise returns False.

    ◆ IsVertex() [2/4]

    bool IntTools_Tools::IsVertex ( const IntTools_CommonPrt & aCmnPrt)
    static

    Returns True if IsVertx for middle parameter of fist range and first edge returns True and if IsVertex for middle parameter of second range and second range returns True, otherwise returns False.

    ◆ IsVertex() [3/4]

    bool IntTools_Tools::IsVertex ( const TopoDS_Edge & E,
    const double t )
    static

    Computes square distance between a point on the edge E corresponded to parameter t and vertices of edge E. Returns True if this distance is less than square tolerance of vertex, otherwise returns false.

    ◆ IsVertex() [4/4]

    bool IntTools_Tools::IsVertex ( const TopoDS_Edge & E,
    const TopoDS_Vertex & V,
    const double t )
    static

    Returns True if square distance between vertex V and a point on the edge E corresponded to parameter t is less than square tolerance of V.

    ◆ MakeFaceFromWireAndFace()

    void IntTools_Tools::MakeFaceFromWireAndFace ( const TopoDS_Wire & aW,
    const TopoDS_Face & aF,
    TopoDS_Face & aFNew )
    static

    Build a face based on surface of given face aF and bounded by wire aW.

    ◆ RejectLines()

    void IntTools_Tools::RejectLines ( const NCollection_Sequence< IntTools_Curve > & aSIn,
    NCollection_Sequence< IntTools_Curve > & aSOut )
    static

    Puts curves from aSIn to aSOut except those curves that are coincide with first curve from aSIn.

    ◆ SegPln()

    int IntTools_Tools::SegPln ( const gp_Lin & theLin,
    const double theTLin1,
    const double theTLin2,
    const double theTolLin,
    const gp_Pln & thePln,
    const double theTolPln,
    gp_Pnt & theP,
    double & theT,
    double & theTolP,
    double & theTmin,
    double & theTmax )
    static

    ◆ SplitCurve()

    int IntTools_Tools::SplitCurve ( const IntTools_Curve & aC,
    NCollection_Sequence< IntTools_Curve > & aS )
    static

    Split aC by average parameter if aC is closed in 3D. Returns positive value if splitting has been done, otherwise returns zero.

    ◆ VertexParameter()

    void IntTools_Tools::VertexParameter ( const IntTools_CommonPrt & theCP,
    double & theT )
    static

    ◆ VertexParameters()

    void IntTools_Tools::VertexParameters ( const IntTools_CommonPrt & theCP,
    double & theT1,
    double & theT2 )
    static

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