Graphics Reference
In-Depth Information
This, however, can be written in matrix form as
P 00
(1
P 01
v )
P uv =[(1
u ) u ]
·
·
(9.57)
P 10
P 11
v
which expands to
P 00
v
1
11
10
P 01
11
10
P uv =[ u 1] ·
·
·
·
(9.58)
P 10
P 11
Let's illustrate this with an example. Given the following four points: P 00 =
(0 , 0 , 0) ,P 10 =(0 , 0 , 4) P 01 =(2 , 2 , 1) ,P 11 =(2 , 2 , 3), we can write the coordi-
nates of any point on the patch as
02
02
v
1
11
10
11
10
x uv =[ u 1]
·
·
·
·
02
02
v
1
11
10
11
10
y uv =[ u 1]
·
·
·
·
01
43
v
1
11
10
11
10
z uv =[ u 1]
·
·
·
·
x uv =2 v
y uv =2 v
z uv = u (4
2 v )+ v
By substituting values of u and v in (9.47) between the range 0
u, v
1
we obtain the coordinates of any point on the surface of the patch.
If we now introduce the ideas of Bezier control points into a surface patch
definition, we provide a very powerful way of creating smooth 3D surface
patches.
9.7.2 Quadratic Bezier Surface Patch
Bezier proposed a matrix of nine control points to determine the geometry of
a quadratic patch, as shown in Figure 9.18. Any point on the patch is defined
by
v 2
v
1
1
21
P 00
P 01
P 02
1
21
P uv =[ u 2 u 1]
·
·
·
·
220
100
P 10
P 11
P 12
220
100
P 20
P 21
P 22
The individual x , y and z -coordinates are obtained by substituting the x , y
and z values for the central P matrix.
Let's illustrate the process with an example. Given the following points:
P 00 =(0 , 0 , 0)
P 01 =(1 , 1 , 0)
P 02 =(2 , 0 , 0)
P 10 =(0 , 1 , 1)
P 11 =(1 , 2 , 1)
P 12 =(2 , 1 , 1)
P 20 =(0 , 0 , 2)
P 21 =(1 , 1 , 2)
P 22 =(2 , 0 , 2)
Search WWH ::




Custom Search