ВУЗ:
Составители:
ОСНОВЫ КОМПЬЮТЕРНОЙ ГРАФИКИ, часть 1 47
виду, в котором вычисления проводились бы значительно проще. В общем
идея заключается в том, чтобы свести преобразование центральной
перспективы математически к виду параллельной проекции, в которой,
очевидно, операция взятия проекции сводится к простому отбрасыванию у
точек координаты
z
.
Будем решать задачу в два этапа. В начале приведем видимый объем к
нормированному виду. При этом значение
1
max
=
z
, а границы по осям
x
и
y лежат в диапазоне
[]
1,1− , как показано на рис. 32.
Нормирующим преобразованием в этом случае будет операция
масштабирования, которая для произвольной точки
X выражается в виде:
⎟
⎠
⎞
⎜
⎝
⎛
⋅=
maxmaxmax
'
1
,
1
,
1
zyx
SXX
,
Рис. 32. Нормированный видимый объем.
где
a
xz
xx
z
ax
экр
экрэкр
max
max
max
=⇒=
, и соответственно,
a
yz
y
экр
экр
max
=
.
Нормированный видимый объем позволяет с большей легкостью
решать задачу отсечения по границе. А именно, в этом случае может
применяться модифицированный вариант алгоритма Коэна-Сазарленда в
котором вместо 4-битовых используются 6-битовые коды вне/внутри для
описания нахождения точки в соответствующей области пространства.
Уравнения боковых граней видимого объема сильно упрощаются, например,
для
правой отсекающей плоскости уравнение запишется
x
z = , а для левой
боковой
x
z −= и т.д. . Тогда для некоторой точки
()
zyx ,,
условие
установления бита в единицу будет следующим:
ОСНОВЫ КОМПЬЮТЕРНОЙ ГРАФИКИ, часть 1 47 виду, в котором вычисления проводились бы значительно проще. В общем идея заключается в том, чтобы свести преобразование центральной перспективы математически к виду параллельной проекции, в которой, очевидно, операция взятия проекции сводится к простому отбрасыванию у точек координаты z . Будем решать задачу в два этапа. В начале приведем видимый объем к нормированному виду. При этом значение z max = 1, а границы по осям x и y лежат в диапазоне [− 1,1], как показано на рис. 32. Нормирующим преобразованием в этом случае будет операция масштабирования, которая для произвольной точки X выражается в виде: X ' = X ⋅ S ⎛⎜ 1 ,1 ,1 ⎞ , ⎟ x ⎝ max y max z max ⎠ Рис. 32. Нормированный видимый объем. xmax a z max x экр z max y экр где = xэкр ⇒ x экр = , и соответственно, y экр = . z max a a Нормированный видимый объем позволяет с большей легкостью решать задачу отсечения по границе. А именно, в этом случае может применяться модифицированный вариант алгоритма Коэна-Сазарленда в котором вместо 4-битовых используются 6-битовые коды вне/внутри для описания нахождения точки в соответствующей области пространства. Уравнения боковых граней видимого объема сильно упрощаются, например, для правой отсекающей плоскости уравнение запишется z = x , а для левой боковой z = − x и т.д. . Тогда для некоторой точки ( x, y, z ) условие установления бита в единицу будет следующим:
Страницы
- « первая
- ‹ предыдущая
- …
- 45
- 46
- 47
- 48
- 49
- …
- следующая ›
- последняя »