logo
Компьютерная графика / МАШ_ГРАФИКА

§2. Линейные поверхности Кунса

Эти поверхности обеспечивают интерполирование по-верхности по четырем кривым (Рис 4.2).

Допустим, заданы четыре граничные кривые P(u,0),P(u,1),P(0,v)иP(1,v). Линейная поверхность образуется путем линейного объединения этих кривых при вычитании угловых точекP(0,0),P(0,1),P(1,0)иP(1,1),которые при суммировании кривых учитываются дважды:

S(u,v) =P(u,0) (1-v)+P(u,1) v+P(0,v) (1-u)+P(1,v) u –P(0,0) (1-u) (1-v)–P(1,0) u (1-v) -P(0,1) (1-u) v –P(1,1) u v. (4.3)

93

z v

1

P(0,v) P(u,1)

y

0 P(1,v)

P(u,0)

1

0 u

x

Рис 4.2

В угловых точках после подстановки значений параметров получим:

S(0,0)=P(0,0),S(0,1)=P(0,1),S(1,0)=P(1,0),S(1,1) =

=P(1,1),

вдоль границ: S(u,0) = P(u,0), S(u,1) = P(u,1),S(0,v) = =P(0,v),S(1,v) =P(1,v).

Указанные соотношения означают, что интерполяция в угловых точках и на границах правильная. В матричной форме уравнение (4.3) имеет вид:

S(u,v)=[(1 – u) u] P(0,v) + [P(u,0)P(u,1)] 1-v -

P(1,v) v

-[(1- u) u] P(0,0)P(0,1) 1-v .

P(1,0)P(1,1) v

Вводя обозначения:

94

P1(v) =P(0,v) ; M =P(0,0)P(1,0) ;

P(1,v) P(0,1)P(1,1)

P2(u) =P(u,0) ; b(u) = 1-u ;

P(u,1) u

уравнение (4.3) можно представить в виде:

S(u,v)=b’(u)P1(v)+P2’(u)b(v) –b’(u) Mb(v), (4.4)

гдеb’(u),P2’(u) - вектор-строки, соответствующие вектор-столбцамb(u) иP2(u) .