For curves, you have studied interpolation (using the Lagrange method--splines will come later) and controlled design (Bézier--B-splines will come later). It is possible to use analogous methods for surfaces. The key is to find a good way of making basis functions; the rest is easy.
Let's concentrate on the case of Lagrange interpolation and look
first at the nonparametric case. To ease the later transition to
the parametric case, let's look at as a function of
and
rather than of
and
.
Suppose, then, that we are considering functions with
and
, and that at integer grid
points we have given heights to interpolate, say
at
. Thus
,
for each
.
Step 1. Construct Lagrange basis functions
.
Thus
.
From these make basis functions in two variables by simply taking
for
and
.
The graph of
is shown in Figure
.
Notice that this function has value 1 only at one grid point,
namely at
, and it has value 0 at all other grid points--a
nice property. These basis functions are said to form a tensor
basis, a term that refers to a basis made of products.
Step 2. Let
. Then the graph is a surface that does interpolate at
grid points as desired, i.e.,
. (Why?)
Observe that since the are cubic, the
tensor-basis functions and the final result
is
bicubic (cubic in each variable when the other variable is held
fixed).
Now let's do a parametric version, where we need to interpolate
given data points , and let's suppose that the
parameter domain is
,
. Since
and
might not be the same, the first step is to construct
basis functions separately for each parameter:
and
. Then the
tensor basis functions are
, and the
interpolating surface is given by
P.
A compact way to write this is to make a matrix of the points:
P.
Applying the same idea in another context gives Bézier surfaces and B-spline surfaces. In each case you can find one-parameter basis functions (Bernstein polynomials in the case of Bézier curves), and then use them to make a tensor basis. The control points make a control polyhedron, although (just as for a control polygon) it is not a solid object but rather consists of polygons with control points as vertices.