Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекций по КГ.doc
Скачиваний:
19
Добавлен:
12.09.2019
Размер:
17.06 Mб
Скачать

План раздела

  1. Исходное состояние.

  2. Вычисление базиса системы координат камеры.

  3. Стратегия преобразований. Принцип относительности движений.

  4. Шаг 1 – перенос НК в точку наблюдения.

  5. Шаг 2 – cовмещение осей Х.

  6. Шаг 3 – совмещение осей Y.

  7. Шаг 4 – изменение ориентации СК = =совмещение осей Z.

Исходное состояние

Здесь черным показана объектная система координат, синим – система координат наблюдателя. С каждой из них связан собственный ортонормированный базис.

ДАНО:

  1. Точка наблюдения E=[Ex Ey Ez];

  2. Направление луча зрения – орт К= [Kx Ky Kz];

  3. Орт I расположен ПАРАЛЛЕЛЬНО плоскости XOY.

  4. Ну, разумеется, некая точка Р…

{ i j k } – базис объектной СК; { I J K } – базис СК наблюдателя (камеры).

Заметим, что эти исходные данные не определяют базисСК явным образом. Его восстановление будет произведено так, как изложено дальше.

Вычисление базиса ск камеры

На основании известных исходных данных можно построить базис СК наблюдателя. Применим такой алгоритм:

  1. Дано К= [Kx Ky Kz];

  2. a=[Kx Ky 0];

  3. Поскольку a получается поворотом вектора а на угол -90°, то его компоненты а’=[Ky -Kx 0];

  4. Приведем длину вектора а’ к значению 1,0 (нормирование). Это и есть орт I.

  5. Поскольку СК камеры – левая, то J = I ´ K.

Готово, базис { I J K } построен.

Стратегия видового преобразования

Положение точки Р МЕНЯТЬ НЕ БУДЕМ.

Вместо этого будем преобразовывать объектную систему координат, имея целью в конце концов СОВМЕСТИТЬ ЕЕ С СИСТЕМОЙ КООРДИНАТ НАБЛЮДАТЕЛЯ (КАМЕРЫ).

Результирующая матрица всех этих преобразований и будет искомая МАТРИЦА ВИДОВОГО ПРЕОБРАЗОВАНИЯ.

Принцип относительности движений

Он состоит в том, что одно и то же итоговое значение координат точки можно получить неким прямым преобразованием положения самой точки в неподвижной системе координат, либо ОБРАТНЫМ преобразованием системы координат при неподвижной точке. Примеры:

Двигаем точку

Двигаем систему

координат

РАБОЧЕЕ ПРАВИЛО:

«При записи матриц преобразований систем координат следует применять матрицы, ОБРАТНЫЕ матрицам, полученным для перемещений точек».

Шаг 1 – Перенос начала координат в точку наблюдения Е

Матрица шага 1

РЕЗУЛЬТАТ шага 1.

Мы видим, что теперь начала координат обоих базисов совмещены, но оси направлены по-старому.

Шаг 2 – Совмещение осей Х

Этого можно достичь совмещением ортов i и I вращением объектного базиса вокруг оси Z (орта k).

Вычислим синус и косинус угла поворота α

Cos α = Ix; Sin α = Iy.

Это следует из единичной длины ортов.

Рассмотрим, ак можно получить матрицу шага 2

Если бы вокруг оси OZ вращать точку, то матрица преобразования была бы такой:

Но мы вращали не точку, но СИСТЕМУ КООРДИНАТ. Поэтому матрица будет такая (обратная):

Шаг 3 – Совмещение осей Y

Это равносильно совмещению ортов j и J на рисунке.

Вычислим синус и косинус угла поворота β

cos β = Jy; sin β = Jz.

Матрица преобразования имеет следующий вид:

Шаг 4 – Смена ориентации оси Z

Ранее мы обращали внимание на то, что ориентация черной и синей систем координат противоположна: черная СК правая, синяя, напротив, левая. Данный шаг делает ориентацию черной СК левой. Этим будет достигнуто полное совмещение обоих координатных систем. Для этого начальная ориентация орта k (на рисунке направлена влево) будет изменена на противоположную и примет положение, направленное на рисунке вправо.

Матрица преобразования

Итак, задача приведения объектной системы координат к системе координат наблюдателя решена. Подведем итоги.

итоги

Видовое преобразование выполняется в четыре шага:

  • 1. Совмещаем начала объектной СК и СК камеры;

  • 2. Совмещаем оси Х поворотом объектной СК вокруг OZ;

  • 3. Совмещаем оси Y поворотом объектной СК вокруг OX;

  • 4. Совмещаем оси Z масштабируя OZ с Sz = -1;

ИТОГОВАЯ МАТРИЦА ВИДОВОГО ПРЕОБРАЗОВАНИЯ ПОЛУЧАЕТСЯ ТАКОЙ:

М вп = Т1* М2 * М3 * S.

Теперь можно положение ЛЮБОЙ ВЕРШИНЫ ЛЮБОГО ОБЪЕКТА СЦЕНЫпересчитать в систему координат камеры, что и является заявленной целью видового преобразования.