Для этого мы воспользуемся так называемыми однородными координатами (homogeneous coordinates). В системе однородных координат для представления точек и векторов трехмерного пространства используются четырехмерные матрицы-столбцы. Во фрейме, заданном набором параметров (vj, v2, v3, Р0), любую точку Р можно однозначно представить соотношением Р = Р0+ a,v, + a2v2 + a3v3.
Объекты и геометрические преобразования
Если на множестве точек операцию умножения на скаляры 0 и 1 определить следующим образом:
0 Р = О,
1 Р = Р, то приведенное выше соотношение можно записать в матричной форме с помощью перемножения матриц:
/> = [а, а, а, ч
Строго говоря, это выражение не является скалярным произведением, поскольку элементы матрицы разнородны, но в компьютере такое выражение реализуется той же подпрограммой, что и скалярное произведение. Четырехмерная матрица-строка в правой части уравнения - это представление в однородных координатах точки Р во фрейме, определенном параметрами (уь у2, у3, Р0). Точку Р можно представить и матрицей-столбцом Р =
В том же самом фрейме любой вектор м> можно представить в виде
V,
Следовательно, вектор м> можно представить матрицей-столбцом "8, а=5> О
Существует множество способов геометрической интерпретации этих формул. Для нас же самое важное состоит в том, что, пользуясь формальным аппаратом однородных координат, можно выполнять операции над точками и векторами с помощью обычных операций матричной алгебры. Рассмотрим, например, изменение параметров фрейма - проблему, которую не удается просто решить при использовании обычного трехмерного представления. Если ( VI, \>2, Уз,Ро) и (г/1, м2, м3, О) - два фрейма, то векторы базиса второго фрейма и его начало координат можно выразить в терминах первого фрейма следующим образом:
«2 Я8У2,у|+У22У2+У2,у,. «3 =У,Л+Уз2^+У,^„
4.3. Системы координат и фреймы
Эти уравнения можно записать и в матричной форме:
и.' |
V, | |
и, |
V, | |
= м |
||
Я. |
А. |
где на сей раз М обозначает матрицу размером 4x4: