Bi-Cubic Surface Patches

Copyright (c) Susan Laflin. August 1999.

The references for this topic are:
Rogers & Adams chapter 6 section 6.10.
Faux & Pratt section 7.2

When we come to require the tangents to join up smoothly as well as the values of the surface, it becomes necessary to move to a Bi-Cubic surface. The equation of this is given below, where the blending functions f1, f2, g1 and g2 are cubics in u or v and the following notation is used.

r(u,v) is the value of the surface at the point (u,v).
ru(u,v) is the value of dr/du at the point (u,v) and
rv(u,v) is the value of dr/dv at the point (u,v).
ruv(u,v) is the value of d2r/dudv at the point (u,v).

Bi-cubic Surface Patch.

These two `tangent vectors' are evaluated at each of the four corners. d2r/dudv is called the `twist vector'. The twist vector of a planar surface is zero, but if the four corners are not co-planar, then all surface patches, including the simple bi-linear surface, will have a twist in them. The size of this twist is given by the magnitude of the twist vector.

The equation of a bi-cubic surface may take the form:

 r(u,v) = [f1(u) f2(u) g1(u) g2(u)]	R	f1(v)  
 						f2(v)
						g1(v)
						g2(v) 
where
R=  	r(0,0) 	r(0,1) 	rv(0,0)  rv(0,1)
	r(1,0) 	r(1,1) 	rv(1,0)  rv(1,1)
	ru(0,0)	ru(0,1)	ruv(0,0) ruv(0,1)
	ru(1,0)	ru(1,1)	ruv(1,0) ruv(1,1)

and the functions are given by: 
		f1(u) = 2u3 - 3u2 + 1
		f2(u) = -2u3 + 3u2
		g1(u) = u3 - 2u2 + u 
		g2(u) = u3 - u2

These blending curves have the same form for both u and v. A full discussion of this patch may be found in the references.