B - Splines

(SetDirectory[ToFileName[Extract["FileName"/.NotebookInformation[EvaluationNotebook[]],{1},FrontEnd`FileName]]];)

d={{0,0.5},{-1,0},{-2,1.5},{-1,3},{2,3},{2.2,1},{2.9,1},{3,3},{6,2},{7,1}};
w={1,1,1,1,1,1,1,1,1,1};

knot={0,0,0,0,1,2,3,4,5,6,7,7,7,7}; 

(* Influence of one weight for rational B-spline curve: *)
Manipulate[
nurbsw=Graphics[{Thick,BSplineCurve[d,SplineKnots->knot,SplineWeights->{1,1,1,1,w,1,1,1,1,1}],Green,Line[d],Red,Point[d]}],{w,0,5}]
(*Export["nurbs-weight.avi",nurbsw];*)

Examples from CAGD book (Fig .8 .3)

knot={0,0,0,0,1,2,3,4,5,6,7,7,7,7};
Graphics[{{Thick,BSplineCurve[d,SplineKnots->knot]},Green,Line[d],Red,Point[d]}];

knot={0,0,0,1,2,3,4,5,6,7,8,8,8};
Graphics[{{Thick,BSplineCurve[d,SplineKnots->knot,SplineDegree->2]},Green,Line[d],Red,Point[d]}];

knot={0,0,0,0,0,0,1,2,3,4,5,5,5,5,5,5};
Graphics[{{Thick,BSplineCurve[d,SplineKnots->knot,SplineDegree->5]},Green,Line[d],Red,Point[d]}];

knot={0,0,0,0,0,0,3,3,3,3,5,5,5,5,5,5};
Graphics[{{Thick,BSplineCurve[d,SplineKnots->knot,SplineDegree->5]},Green,Line[d],Red,Point[d]}];

knot={0,0,0,0,0,0,0,0,0,0,5,5,5,5,5,5,5,5,5,5};
Graphics[{{Thick,BSplineCurve[d,SplineKnots->knot,SplineDegree->9]},Green,Line[d],Red,Point[d]}];