Get started
This tutorial is meant for these which don’t feel confident about knowing NURBS.
If you feel confident, please skip to Basics
What is NURBS?
NURBS is a powerful way to represent curves and surfaces. It allows design smooth curves, usually applied on CAD. It also generalizes straight lines, circles, ellipses and many other shapes. Almost every curve can be expressed using NURBS and this library gives you tools to do it.
There is an awesome introductory video The Continuity of Splines that shows the main idea behind. I recommend you to see this video and then come back.
Note
For a more formal definition, please see wikipedia or refer to “The NURBS book” from “Les Piegl” and “Wayne Tiller”.
The elements
There are three main elements for NURBS:
Knot Vector
Basis Functions
Curves
A NURBS curve \(\mathbf{C}(u)\) is expressed by a linear combination of \(n\) basis functions \(f_i(u)\) and control points \(\mathbf{P}_i\):
There are two main caracteristics of a curve: degree (degree) and number of points (often abbreviated to npts):
A curve of degree \(1\) is a set of straight segments
A curve of degree \(2\) is a set of parabolic intervals
Note
Usually the degree stays between \(0\) and \(4\)