Основы компьютерной графики: Часть 1. Математический аппарат компьютерной графики. Казанцев А.В. - 30 стр.

UptoLike

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

ОСНОВЫ КОМПЬЮТЕРНОЙ ГРАФИКИ, часть 1 30
переносаописывается как сумма двух векторов. В случае
последовательного выполнения любой комбинации операций вращения и
масштабирования результат легко можно записать в виде произведения
матриц соответствующих преобразований. Это будет матрица
результирующего поворота и масштабирования. Очевидно, что удобнее
применять результирующую матрицу вместо того, чтобы каждый раз заново
вычислять произведение матриц. Однако, таким способом
нельзя получить
результирующую матрицу преобразования, если среди последовательности
преобразований присутствует хотя бы один перенос. Матричное
произведение в компьютерной графике также называют композицией. Было
бы удобнее иметь математический аппарат, позволяющий включать в
композиции преобразований все три выше указанные операции. При этом
получился бы значительный выигрыш в скорости вычислений. Однородные
координаты и
есть этот математический аппарат.
Двумерный вектор
()
yx, в однородных координатах записывается в
виде
()
wwywx ,,, где 0w . Число w называется масштабным множителем.
Для того, чтобы из вектора, записанного в однородных координатах получить
вектор в обычных координатах необходимо разделить первые две координаты
на третью:
()
(
)
1,,/,/,/ yxwwwwywwx .
В общем случае осуществляется переход от
n-мерного пространства к
()
1+n -мерному. Это преобразование не единственное. Обратное
преобразование называется проекцией однородных координат
*
.
Рассмотрим некоторые свойства однородных координат. Некоторые
точки, неопределенные в n-мерном пространстве, становятся вполне
определенными при переходе к однородным координатам. Например,
однородный вектор
()
0,1,0,0 в трехмерном пространстве соответствует
бесконечно удаленной точке
=
z . Поскольку в однородных координатах
эту точку можно представить в виде
(
)
ε
,1,0,0, при 0
ε
, то в трехмерном
пространстве это соответствует точке
(
)
ε
/1,0,0.
Рассмотрим точку трехмерного пространства
(
)
cba ,,. Если представить
эту точку как однородное представление точки двумерного пространства, то
ее координаты будут
()
cbca /,/. Сравнивая эти координаты со вторым видом
формул, выведенных для центральной перспективной проекции, легко
*
Более строгое определение однородных координат дается в разделе
линейной алгебры «Проективные пространства».
ОСНОВЫ КОМПЬЮТЕРНОЙ ГРАФИКИ, часть 1                                      30



переноса – описывается как сумма двух векторов. В случае
последовательного выполнения любой комбинации операций вращения и
масштабирования результат легко можно записать в виде произведения
матриц     соответствующих           преобразований. Это   будет  матрица
результирующего поворота и масштабирования. Очевидно, что удобнее
применять результирующую матрицу вместо того, чтобы каждый раз заново
вычислять произведение матриц. Однако, таким способом нельзя получить
результирующую матрицу преобразования, если среди последовательности
преобразований присутствует хотя бы один перенос. Матричное
произведение в компьютерной графике также называют композицией. Было
бы удобнее иметь математический аппарат, позволяющий включать в
композиции преобразований все три выше указанные операции. При этом
получился бы значительный выигрыш в скорости вычислений. Однородные
координаты и есть этот математический аппарат.
      Двумерный вектор ( x, y ) в однородных координатах записывается в
виде (wx, wy, w ) , где w ≠ 0 . Число w называется масштабным множителем.
Для того, чтобы из вектора, записанного в однородных координатах получить
вектор в обычных координатах необходимо разделить первые две координаты
на третью: (wx / w, wy / w, w / w ) → ( x, y,1) .
       В общем случае осуществляется переход от n-мерного пространства к
(n + 1) -мерному. Это преобразование не единственное. Обратное
преобразование называется проекцией однородных координат*.
       Рассмотрим некоторые свойства однородных координат. Некоторые
точки, неопределенные в n-мерном пространстве, становятся вполне
определенными при переходе к однородным координатам. Например,
однородный вектор (0,0,1,0) в трехмерном пространстве соответствует
бесконечно удаленной точке z = ∞ . Поскольку в однородных координатах
эту точку можно представить в виде (0,0,1, ε ), при ε → 0 , то в трехмерном
пространстве это соответствует точке (0,0,1 / ε ) .
      Рассмотрим точку трехмерного пространства (a, b, c ) . Если представить
эту точку как однородное представление точки двумерного пространства, то
ее координаты будут (a / c, b / c ) . Сравнивая эти координаты со вторым видом
формул, выведенных для центральной перспективной проекции, легко



       *
       Более строгое определение однородных координат дается в разделе
линейной алгебры «Проективные пространства».