abdullah wrote:Today's experiment is the bspline converter:

Not sure what for it will be useful, but you wanted it

NURBS surfaces in FreeCAD and basically every CAD package use the tensor product scheme, which is a bi-directional curve scheme. And all that means is that the surfaces have two main directions, typically called u and v. the knot vector and order CANNOT change along one parameter.

so if you want to have a cubic on the left side and a straight line on the right side, before you can sweep over, you will have to raise the order of the line to match cubic.

if you have a quadratic of 10 points on the left and a cubic of 4 points on the right, first you have to raise the quadratic to cubic, which will add knots and control points. now that they have the same order, you have to force them to have the same knot vector! so you insert every knot from one into the other and vice versa. Every time you insert a knot, all the control points shift to accommodate it (if you want the curve to stay the same, that is).

in my case, i always grab the nurbs of an arc or ellipse directly from the sketch object, raise the degree to 3 and now i can use it right alongside my other cubic bezier. If i want to use in a 6 point cubic curve or a 6X6 cubic surface, or a 6X4 cubic surface, i then insert he knots 0.3333 and 0.6666

The upshot is that we will often want to raise degrees and insert knot into curves without changing the way they currently look.