Graphics Reference
In-Depth Information
y
2 0
4
2 0 4
2
2
4
4
4
4
2
2
0
z
0
2
2
4
4
4
4
2
2
0
0
2
2
4
4
x
x
s ( z )
0
0
00
0
1
x
y
z
(max z z )
(max z min z )
s ( z )
y
z
s ( z )
0
x s ( z ) x
P M ( p ) p
y s ( z ) y
z
z
Original object
Tapered object
FIGURE 4.16
Global tapering.
simple linear two-dimensional tapering operation. There is no reason why the function ( s ( z )in
Figure 4.16 ) needs to be linear; it can be whatever function produces the desired effect. Other global
deformations are possible. In addition to the taper operation, twists ( Figure 4.17 ) , bends ( Figure 4.18 ) ,
and various combinations of these ( Figure 4.19 ) are possible.
FFD
An FFD is essentially a three-dimensional extension of Burtnyk's technique that incorporates higher-
order interpolation. In both cases, a localized coordinate grid, in a standard configuration, is superim-
posed over an object. For each vertex of the object, coordinates relative to this local grid are determined
that register the vertex to the grid. The grid is then manipulated by the user. Using its relative coor-
dinates, each vertex is then mapped back into the modified grid, which relocates that vertex in global
space. Instead of the linear interpolation used by Burtnyk, cubic interpolation is typically used with
FFDs. In Sederberg's original paper [ 31 ], Bezier interpolation is suggested as the interpolating func-
tion, but any interpolation technique could be used.
In the first step of the FFD, vertices of an object are located in a three-dimensional rectilinear grid.
Initially, the local coordinate system is defined by a not necessarily orthogonal set of three vectors
( S , T , U ). A vertex P is registered in the local coordinate system by determining its trilinear interpolants,
as shown in Figure 4.20 and by Equations 4.3-4.5 :
 
Search WWH ::




Custom Search