Опубликован: 20.10.2007 | Доступ: свободный | Студентов: 4577 / 1389 | Оценка: 4.38 / 3.99 | Длительность: 12:07:00
ISBN: 978-5-94774-654-9
Специальности: Программист
Лекция 7:

Проецирование пространственных сцен

< Лекция 6 || Лекция 7: 12345 || Лекция 8 >

Центральные проекции

Когда пучок проекторов исходит из заданного центра проекции, то параллельные отрезки на плоскости проекции уже не будут параллельными, за исключением случая, когда они лежат в плоскости, параллельной проекционной. При проецировании нескольких параллельных прямых их проекции пересекаются в так называемой точке схода. Если совокупность прямых параллельна одной из координатных осей, то их точка схода называется главной. Таких точек может быть не больше трех. Например, если проекционная плоскость перпендикулярна оси OZ, то лишь на этой оси будет лежать главная точка схода, поскольку прямые, параллельные как оси OX, так и OY, параллельны также и проекционной плоскости и поэтому не имеют точки схода.

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

Одноточечные и двухточечная проекции

увеличить изображение
Рис. 7.6. Одноточечные и двухточечная проекции

Двухточечная центральная проекция широко применяется в архитектурном, инженерном и промышленном проектировании и в рекламных изображениях, в которых вертикальные прямые проецируются как параллельные и, следовательно, не сходятся. Трехточечные центральные проекции почти совсем не используются, во-первых, потому, что их трудно конструировать, а во- вторых, из-за того, что они добавляют мало нового с точки зрения реалистичности по сравнению с двухточечной проекцией.

Математический аппарат

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

Ортогональные проекции

Сначала рассмотрим математическое описание параллельных проекций как более простых. Случай, когда картинная плоскость перпендикулярна оси OZ и задается уравнением z=0 (т.е. ортографическая проекция), фактически уже рассматривался в "Представление геометрической информации" , где был приведен вид матриц проекции на координатные плоскости.

Случай аксонометрической проекции сводится к последовательности преобразований, подобно тому как осуществлялся поворот в пространстве относительно произвольной оси. Пусть плоскость задается единичным вектором нормали \overrightarrow{n}=(n_x,n_y,n_z) и расстоянием от начала координат d\ge 0. Каноническое уравнение плоскости, таким образом, имеет вид

n_x\cdot x+n_y\cdot y+n_z\cdot z-d =0.

Вектор, направленный по нормали от начала координат до пересечения с плоскостью, есть

\overrightarrow{N}=d\cdot\overrightarrow{n}=(n_x d,n_y d,n_z d)=(N_x,N_y,N_z).
Координаты вектора единичной нормали являются ее направляющими косинусами.

Проецирование в пространстве однородных координат осуществляется следующей последовательностью шагов.

  • Сдвиг на вектор -\overrightarrow{N} с помощью матрицы
    S_1=
\begin{pmatrix}
1 & 0 & 0 & -N_x \\
0 & 1 & 0 & -N_y \\
0 & 0 & 1 & -N_z \\
0 & 0 & 0 & 1
\end{pmatrix}.
  • Поворот, совмещающий направление нормали с направлением оси OZ. Как было показано в "Представление геометрической информации" , этот поворот можно реализовать в виде двух поворотов: первый (относительно оси OZ ) переводит нормаль в плоскость YOZ, а затем - поворот относительно оси OY до совмещения нормали с осью OZ. Соответствующую матрицу вращения, являющуюся произведением двух матриц, обозначим R.
  • Проекция на плоскость XOY с помощью матрицы
    P_{xy}=
\begin{pmatrix}
1 & 0 & 0 & 0 \\
0 & 1 & 0 & 0 \\
0 & 0 & 0 & 0 \\
0 & 0 & 0 & 1
\end{pmatrix}.
  • Поворот с помощью матрицы R^{-1}.
  • Сдвиг на вектор \overrightarrow{N} с помощью матрицы S_1^{-1}

Полное преобразование, таким образом, определяется матрицей

\textrm{Pr}=S_1^{-1}\cdot R^{-1}\cdot P_{xy}\cdot R\cdot S_1.

Косоугольные проекции

Рассмотрим косоугольную проекцию на плоскость XOY, при которой орт \overrightarrow{e}_3=(0,0,1) переходит в вектор \overrightarrow{r}_0=(a,b,0), т.е. направление проекции задается вектором \overrightarrow{p}=\overrightarrow{r}_0-\overrightarrow{e}_3=(a,b,-1). Такое преобразование в пространстве однородных координат можно задать с помощью матрицы

P=
\begin{pmatrix}
1 & 0 & a & 0 \\
0 & 1 & b & 0 \\
0 & 0 & 0 & 0 \\
0 & 0 & 0 & 1
\end{pmatrix}.

В проекции кавалье вектор \overrightarrow{e}_3 переходит в вектор (\cos(\pi/4),\cos(\pi/4),0), а в кабинетной проекции - в вектор (0.5\cdot\cos(\pi/4),0.5\cos(\pi/4),0), причем в обеих проекциях a=b.

< Лекция 6 || Лекция 7: 12345 || Лекция 8 >
Сабина Бахриддинова
Сабина Бахриддинова
Дмитрий Трефилов
Дмитрий Трефилов