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

    Adjusts curve to have start and end points at the given points (currently works on lines and B-Splines only). More...

    #include <ShapeConstruct_Curve.hxx>

    Public Member Functions

    bool AdjustCurve (const occ::handle< Geom_Curve > &C3D, const gp_Pnt &P1, const gp_Pnt &P2, const bool take1=true, const bool take2=true) const
     Modifies a curve in order to make its bounds confused with given points. Works only on lines and B-Splines, returns True in this case, else returns False. For line considers both bounding points, for B-Splines only specified.
    bool AdjustCurveSegment (const occ::handle< Geom_Curve > &C3D, const gp_Pnt &P1, const gp_Pnt &P2, const double U1, const double U2) const
     Modifies a curve in order to make its bounds confused with given points. Works only on lines and B-Splines.
    bool AdjustCurve2d (const occ::handle< Geom2d_Curve > &C2D, const gp_Pnt2d &P1, const gp_Pnt2d &P2, const bool take1=true, const bool take2=true) const
     Modifies a curve in order to make its bounds confused with given points. Works only on lines and B-Splines, returns True in this case, else returns False.
    occ::handle< Geom_BSplineCurveConvertToBSpline (const occ::handle< Geom_Curve > &C, const double firstfirst, const double last, const double prec) const
     Converts a curve of any type (only part from first to last) to bspline. The method of conversion depends on the type of original curve: BSpline -> C.Segment(first,last) Bezier and Line -> GeomConvert::CurveToBSplineCurve(C).Segment(first,last) Conic and Other -> Approx_Curve3d(C[first,last],prec,C1,9,1000).
    occ::handle< Geom2d_BSplineCurveConvertToBSpline (const occ::handle< Geom2d_Curve > &C, const double firstfirst, const double last, const double prec) const
     Converts a curve of any type (only part from first to last) to bspline. The method of conversion depends on the type of original curve: BSpline -> C.Segment(first,last) Bezier and Line -> GeomConvert::CurveToBSplineCurve(C).Segment(first,last) Conic and Other -> Approx_Curve2d(C[first,last],prec,C1,9,1000).

    Static Public Member Functions

    static bool FixKnots (occ::handle< NCollection_HArray1< double > > &knots)
    static bool FixKnots (NCollection_Array1< double > &knots)
     Fix bspline knots to ensure that there is enough gap between neighbouring values Returns True if something fixed (by shifting knot).

    Detailed Description

    Adjusts curve to have start and end points at the given points (currently works on lines and B-Splines only).

    Member Function Documentation

    ◆ AdjustCurve()

    bool ShapeConstruct_Curve::AdjustCurve ( const occ::handle< Geom_Curve > & C3D,
    const gp_Pnt & P1,
    const gp_Pnt & P2,
    const bool take1 = true,
    const bool take2 = true ) const

    Modifies a curve in order to make its bounds confused with given points. Works only on lines and B-Splines, returns True in this case, else returns False. For line considers both bounding points, for B-Splines only specified.

    Warning : Does not check if curve should be reversed

    ◆ AdjustCurve2d()

    bool ShapeConstruct_Curve::AdjustCurve2d ( const occ::handle< Geom2d_Curve > & C2D,
    const gp_Pnt2d & P1,
    const gp_Pnt2d & P2,
    const bool take1 = true,
    const bool take2 = true ) const

    Modifies a curve in order to make its bounds confused with given points. Works only on lines and B-Splines, returns True in this case, else returns False.

    For line considers both bounding points, for B-Splines only specified.

    Warning : Does not check if curve should be reversed

    ◆ AdjustCurveSegment()

    bool ShapeConstruct_Curve::AdjustCurveSegment ( const occ::handle< Geom_Curve > & C3D,
    const gp_Pnt & P1,
    const gp_Pnt & P2,
    const double U1,
    const double U2 ) const

    Modifies a curve in order to make its bounds confused with given points. Works only on lines and B-Splines.

    For lines works as previous method, B-Splines are segmented at the given values and then are adjusted to the points.

    ◆ ConvertToBSpline() [1/2]

    occ::handle< Geom2d_BSplineCurve > ShapeConstruct_Curve::ConvertToBSpline ( const occ::handle< Geom2d_Curve > & C,
    const double first,
    const double last,
    const double prec ) const

    Converts a curve of any type (only part from first to last) to bspline. The method of conversion depends on the type of original curve: BSpline -> C.Segment(first,last) Bezier and Line -> GeomConvert::CurveToBSplineCurve(C).Segment(first,last) Conic and Other -> Approx_Curve2d(C[first,last],prec,C1,9,1000).

    ◆ ConvertToBSpline() [2/2]

    occ::handle< Geom_BSplineCurve > ShapeConstruct_Curve::ConvertToBSpline ( const occ::handle< Geom_Curve > & C,
    const double first,
    const double last,
    const double prec ) const

    Converts a curve of any type (only part from first to last) to bspline. The method of conversion depends on the type of original curve: BSpline -> C.Segment(first,last) Bezier and Line -> GeomConvert::CurveToBSplineCurve(C).Segment(first,last) Conic and Other -> Approx_Curve3d(C[first,last],prec,C1,9,1000).

    ◆ FixKnots() [1/2]

    bool ShapeConstruct_Curve::FixKnots ( NCollection_Array1< double > & knots)
    static

    Fix bspline knots to ensure that there is enough gap between neighbouring values Returns True if something fixed (by shifting knot).

    ◆ FixKnots() [2/2]

    bool ShapeConstruct_Curve::FixKnots ( occ::handle< NCollection_HArray1< double > > & knots)
    static

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