Sketcher BSplineIncreaseDegree

    From FreeCAD Documentation

    Sketcher BSplineIncreaseDegree.svg Sketcher BSplineIncreaseDegree

    Menu location
    Sketch → Sketcher B-spline tools → Increase B-spline degree
    Default shortcut
    Introduced in version
    See also
    Sketcher Show/hide B-spline degree, Sketcher Decrease B-spline degree


    Increases the degree (order) of a B-spline (see this page for more info about B-splines).

    B-splines are basically a combination of Bézier curves (nicely explained in this and this video).

    In this cubic spline (degree 3) there are 3 segments, meaning 3 curves are connected at 2 knots
    (degree is indicated by the number, indication can be changed using the toolbar button Sketcher BSplineDegree.svg Show/hide B-spline degree):

    Sketcher BSplineDegree3.png

    B-spline with degree 3 and 2 knots that each have the multiplicity 1.

    The outer segments have each 2 control points, the inner one none to fulfill the constraint that the knots have multiplicity 1. (see this page for an explanation of the multiplicity)

    Increasing the degree will add control points and the shape of the spline is not changed:

    Sketcher BSplineDegree4.png

    Same B-spline where the degree was changed from 3 to 4. Note that also the knot multiplicity was increased.

    If you take this result and decrease the degree, you cannot get the initial state of the spline information will be lost by this operation. For our example decreasing the degree again leads to this:

    Sketcher BSplineDegree3from4.png

    Same B-spline where the degree was changed back from 4 to 3. Note that the knot multiplicity was increased. Depending on the spline, the algorithm to decrease the degree may add a lot of knots to preserve the spline shape as happened in this example.

    You can see that now each segment has 2 control points and the knots are coincident with each a further control point. The knots have now C0 continuity so that the spline will get "edges" when you move a control point. So the information of a higher continuity is lost. (see this page to for an explanation of the continuity)


    1. Select an edge from an existing B-spline, and press Sketcher BSplineIncreaseDegree.svg Increase B-spline degree.