I want to understand cubic BSpline surface( very hard for me to figure out). I prefer matrix form which presented here. Equation 4.12 in page 33, describes how data point should be presented U*M*D*M'*V' and since I am looking for uniform presentation of Bspline just I assume u and v values are [ 0, .1,.2,...,.9,1]; but in page 32. figure 4.3 it shows 3D model which has (x,y and z) values. I am confused now, based on equation we have D as a set of control points (4x4). but based on that figure each point should have 3 values( x,y,z). is anybody can help me based on that figure and numerical example?

I am confused more than 3 weeks and still I cannot figure out cubic uniform BSpline interpolation. I need a numerical example based on matrix form step by step if anyone can help me.

Thanks a lot


The $S(u,v)$ is a vector function which has 3 components: $x(u,v)$, $y(u,v)$ and $z(u,v)$. So, you can consider equation 4.12 as 3 equatons:


where $D_x$, $D_y$ and $D_z$ are 4x4 matrices consist of the $x$, $y$ and $z$ components from the 3D control points.

Hopefully this way, it is easier to understand the equation.

  • $\begingroup$ So what is Dx for example? it should be 16 points consist of x,y,z components. In that pdf, it mentioned with i and j indexes. Can you give me an example? Thanks $\endgroup$ – Ehsan Jun 18 '15 at 4:32
  • $\begingroup$ i mean why there is not k index for Dx if it has x,y and z components? $\endgroup$ – Ehsan Jun 18 '15 at 4:56
  • $\begingroup$ For a bicubic B-spline, each surface patch is controlled by 4x4 control points that form a grid (see Fig 4.3 in the pdf file of your link). The indices i and j are used to denote individual control points. Matrix Dx is composed of x values from those 4x4 control points. Therefore, there is no k index. Similarly, matrix Dy is composed of y values from those 4x4 control points. $\endgroup$ – fang Jun 18 '15 at 6:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.