Геометрические преобразования в компьютерной графике. Косников Ю.Н. - 42 стр.

UptoLike

Составители: 

. Объект состоит из примитивов-полигонов. Изображение на экране
перспективное. Все системы координат правые. Подобную задачу
приходится решать при отображении сцены, представляемой будущему
летчику в авиационном тренажере.
Для решения задачи нужно найти текущую матрицу преобразования,
то есть матрицу, которая описывает все геометрические преобразования,
выполненные на данный момент над всеми полигонами объекта. Ясно, что
эти преобразования нужно сначала определить. Если координаты всех
вершин полигональной модели объекта умножить на текущую матрицу
преобразования, то будут вычислены экранные координаты этих вершин,
что и нужно для построения экранного образа объекта. Конечно, такое
построение, кроме работы с геометрией, требует операций удаления
невидимых участков, текстурирования, затенения, но здесь рассмотрим
лишь геометрические преобразования.
В общем случае каждый геометрический примитив объекта
размещается в своей системе координат системе координат примитива
(СКП). Однородные координаты вершины примитива в СКП описываются
матрицей-строкой
1
ppp
zyxKP
=
. Для размещения примитива в
объекте нужно перевести вершины примитива в СКО. Для этого
необходимо выполнить соответствующие сдвиги и повороты СКП в СКО.
Так поступают поочередно со всеми примитивами объекта, в результате
чего происходит так называемая «сборка объекта», то есть расстановка
примитивов в СКО. Пусть для задания нужного положения некоторого
примитива в СКО его нужно повернуть относительно своих осей на углы
γ
x
, γ
y
, γ
z
и сдвинуть вдоль координатных осей СКО на
ooo
zyx
000
,,
. Следующее
преобразование дает матрицу-строку KO координат вершины в СКО:
42
                                                                           42


. Объект состоит из примитивов-полигонов. Изображение на экране –
перспективное. Все системы координат – правые. Подобную задачу
приходится решать при отображении сцены, представляемой будущему
летчику в авиационном тренажере.
      Для решения задачи нужно найти текущую матрицу преобразования,
то есть матрицу, которая описывает все геометрические преобразования,
выполненные на данный момент над всеми полигонами объекта. Ясно, что
эти преобразования нужно сначала определить. Если координаты всех
вершин полигональной модели объекта умножить на текущую матрицу
преобразования, то будут вычислены экранные координаты этих вершин,
что и нужно для построения экранного образа объекта. Конечно, такое
построение, кроме работы с геометрией, требует операций удаления
невидимых участков, текстурирования, затенения, но здесь рассмотрим
лишь геометрические преобразования.
     В общем случае каждый геометрический примитив объекта
размещается в своей системе координат – системе координат примитива
(СКП). Однородные координаты вершины примитива в СКП описываются

матрицей-строкой     KP = x p   yp   zp 1 .   Для размещения примитива в
объекте нужно перевести вершины примитива в СКО. Для этого
необходимо выполнить соответствующие сдвиги и повороты СКП в СКО.
Так поступают поочередно со всеми примитивами объекта, в результате
чего происходит так называемая «сборка объекта», то есть расстановка
примитивов в СКО. Пусть для задания нужного положения некоторого
примитива в СКО его нужно повернуть относительно своих осей на углы
                                                      o    o    o
γx, γy, γz и сдвинуть вдоль координатных осей СКО на x0 , y0 , z0 . Следующее
преобразование дает матрицу-строку KO координат вершины в СКО: