Then let's have a look at how to generalize the B-Spline geometry nterface to NURBS. You may probably know that NURBS is a projective B-Spline in higher dimension space. Analytically, NURRBS can be expressed by B-Splines with weights of control points. When all the weights are the same, a NURBS is degenerated into a B-Spline.
I try to make use of property and correlate each NURBS object with a B-Spline object. Then most functions can be decomposed into three steps: first lift the NURBS to the corresponding B-Spline in the one dimension higher space, then do all computation on this B-Spline using the implemented B-Spline functions, project the B-Spline back to the NURBS, But for derivative, it's a bit tricky. I will talk it later.
So of course, a NURBS patch should also contain the weight gird corresponding to the control gird in addition to other information which a B-Spline patch requires.
Fig.2. A NURBS suface with same control points but different weights as Fig.1.
No comments:
Post a Comment