We would like to use a bicubic nonuniform B-spline surface to interpolate a given set of matrix nets
. We use the progressive-iterative approximation (PIA) algorithm rather than solving the control nets of a B-spline surface by a linear system. There are three main steps for the PIA algorithm.
1. Calculating the knot vectors
in two directions:
Then the knot vector
1.2 The knot vector
In a similar way, the knot vector
can be calculated.
2. The iterative process:
At the start of the iteration process, let
A bicubic nonuniform B-spline surface
can be generated via the control nets
Denote the first adjustment of the
control net by
Again, a bicubic nonuniform B-spline surface
can be defined by the control nets
Generally, if the
bicubic nonuniform B-spline surface
was defined by
iterations, denoting the
adjustment of the
control net as
So we could generate the
bicubic nonuniform B-spline curve
via the control nets
Ultimately, the surface set
can be generated, and H. Lin  has proved that this surface iteration format is convergent. Namely,
 蔺宏伟, 王国瑾, 董辰世. 用迭代非均匀 B-spline 曲线(曲面)拟合给定点集[J]. 中国科学, 2003, 33
(10), pp. 912–923.
H. Lin et al., "Use Iterative Non-Uniform B-Spline Curve (Surface) to Fitting Given Point Set [J]." China Science
(10), 2003 pp. 912–923 (in Chinese).