Комбинации векторов и точек. Однородное представление координат

Для того чтобы различать математические модели точки и вектора, удобно использовать систему однородных координат (СОК). Трехмерные объекты в такой системе представляются при помощи четырех скалярных величин - для вектора:

(v1, v2, v3, 0)

и для точки

(p1, p2, p3, 1).

Четвертый компонент вектора свидетельствует о том, учитывается начало системы координат или нет (т.е. он показывает, входит в состав объекта начало отсчета или нет).

Представление вектора в матричном виде имеет следующий вид:

v = (ex, ey, ez, l) × = (v1, v2, v3, 0) × ,

а представление точки:

P = (ex, ey, ez, l) × = (v1, v2, v3, 1) × .

 

Систему однородных координат модно считать признаком аппаратных и программных систем компьютерной графики. Например, она является базовой для стандарта OpenGL.

На практике возможны следующие комбинации векторов и точек:

1) разность двух точек представляет собой вектор:

;

2) сумма точки и вектора является точкой

;

3) сумма двух векторов является вектором

;

4) масштабирование вектора дает в результате вектор

;

5) любая линейная комбинация двух векторов приводит к получению нового вектора

k×v + m×w = .

Перечисленные особенности линейных комбинаций точек и векторов необходимо учитывать в дальнейших преобразованиях;

6) аффинные комбинации точек

Результат этой операции будет иметь смысл только в том случае, если . Если , то результатом операции будет вектор, в противном случае – точка.

 

Если , то комбинация является аффинной. Таким образом, любая аффинная комбинация точек в результате даст новую точку.

Рассмотрим случай, при котором сумма (f + g)отличается от 0 и 1. В этом случае результат будет зависеть от выбора системы координат. Рассмотрим данный случай на конкретном примере:

0.3∙P + 0.7∙R

2.7∙P – 1.7∙R

 

P1
Рис.2.1. Зависимость результата аффинной операции от выбора системы координат

 

Таким образом, комбинации, не являющиеся аффинными, дают неоднозначный результат (связанный с выбором системы координат). При использовании аффинной комбинации точка находится на прямой, соединяющей точки . Если линейная комбинация выпуклая ( ), то результат находится внутри отрезка. Если же это условие не соблюдается, то точки находятся на этой же прямой за пределами отрезка P1P2.