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

Рисунок 49 – Представление полигональной сетки в виде списка ребер.

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

6.4. Построение проекций пространственных образов

Проецирование в общем случае – отображение точек, заданных в системе координат с размерностью N, в точки в системе с меньшей размерностью. Заменяя пространство на двумерную картину, рисуемую на экране, надо заменить лучи света, идущие в глаз наблюдателя от реальных предметов, на лучи, идущие от точек картины. При этом, конечно, не учитывается множество дополнительных факторов – аккомодация зрачка (его фокусировка, настройка на разглядывание близких или далеких предметов), конвергенция двух глаз(непарал-

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

Рисунок 50 – Преобразование координат

Видовое преобразование (view transform) – преобразование координат согласно ракурсу показа пространственных объектов. Иными словами – поворот

113

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

При анализе изображений и в автоматизированном проектированииспользуют (рис. 51) ортогональные проекции – проецирующие лучи перпендикулярны плоскости проекции, а плоскость проекции перпендикулярна одной из осей координат. Аксонометрическая проекция проекция на плоскость с помощью параллельных лучей, идущих из центра проецирования (который удалён в ∞) через каждую точку объекта до пересечения с картинной плоскостью.

Рисунок 51 – Параллельные проекции

Аксонометрическая

прямоугольная

Аксонометрическая

прямоугольная

 

изометрическая проекция куба со сто-

 

диметрическая проекция куба со сто-

 

роной A (все три оси координат оди-

 

роной A (две из трёх осей сокращены

наково сокращены, по

изображению

 

одинаково)

 

можно осуществлять измерения с од-

 

 

 

ним и тем же масштабом)

 

 

 

 

 

 

 

114

Аксонометрическая косоугольная сво-

Аксонометрическая косоугольная ка-

бодная (горизонтальная изометриче-

бинетная (фронтальная

диметриче-

ская) проекция куба со стороной A (так

ская) проекция куба со

сторонойA.

называемая «военная перспектива»)

Ось Z изображается по углом в 30°, 45°

 

 

или 60° относительно горизонтального

 

направления.

 

 

 

 

Среди аксонометрических проекций выделяются:

прямоугольные – проецируемые лучи перпендикулярны к плоскости проекции. В противном случае проекцию называют косоугольной.

При прямоугольной аксонометрической проекции указывают косинусы углов наклона координатных осей к плоскости проецирования, называемых показателями искажения. Если два показателя искажения равны, то проекцию называют диметрической; если равны три показателя – изометрической; если все показатели различны – триметрической.

В косоугольных проекциях выделяют два вида: свободную – когда угол наклона проектирующих лучей к плоскости экрана равен половине прямого, и кабинетную – частный случай свободной проекции, при котором масштаб по третьей оси вдвое меньше.

Запишем в однородных координатах матричное выражение, соответствующее косоугольной аксонометрической проекции на плоскость < XY > :

éX ù

é1

0

L × cosa

0ù

éxù

 

ê

ú

ê

 

 

ú

ê

ú

 

êY

ú

= ê0

1

L ×sin a

0ú

× êy

ú

(41)

êZ ú

ê0 0

0

1ú

êz ú

 

ê

ú

ê

 

0

ú

ê

ú

 

ë 1

û

ë0 0

1û

ë1

û

 

115

Рисунок 52 – Методика построения проекции

Здесь масштабный факторL (=1/ 2 для кабинетной проекции) и угол a (=45°) определяют направление проецирующих лучей.

Изображение, полученное при параллельном проецировании, не достаточно реалистично, но передаются точные форма и размеры объектов. Второй случай проецирования носит названиеперспективная (центральная) проекция. Параллельные прямые в общем случае для таких проекций не параллельны, более удаленные предметы изображаются в меньших масштабах. В итоге геометрия изображения оказывается достаточно традиционной для восприятия глазом.

Перспективная проекция – это центральная проекция на плоскость пря-

мыми лучами, сходящимися в точку – центр проецирования (S) (рисунок 53).

Рисунок 53 – Центральная проекция

Существуют одно-, двух- и трёхточечные центральные проекции, различия между которыми показаны на рисунке53. Один из проецирующих лучей перпендикулярен к картинной плоскости, и он называется главным (S-S'). Точка

116

пересечения этого луча и картинной плоскости– главная точка картины (S'). Расстояние от главной точки до центра проецирования называетсяфокусным

(D).

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

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

Возьмем в пространстве некоторую точкуА с координатами (X, Y, Z) и проведем прямую через эту точку и центр проецированияS с координатами

( x0 , y0 , D ).

Примем x0 = 0 и y0 = 0 (центр проецирования лежит в начале координат,

этого можно всегда добиться операцией сдвига). Тогда в параметрическом виде уравнение данной прямой имеет вид:

x = X × t;

y = Y × t;

z = D + (Z - D)t,

(42)

где 0 £ t £1.

 

 

 

Для экранной плоскости z = 0,

при этом t* =1/(1 - Z / D) . Для данного t*

найдем координаты A* – проекции точки А:

 

 

x = X /(1 - Z / D);

y = Y /(1 - Z / D)

(43)

Эти формулы легко получить в декартовых координатах из простых геометрических соображений. В терминах однородных координат данное преобразование будет представлено матрицей:

é0 0

0

1ù

éxù

 

é x ù

 

ê

0

ú

êy

ú

 

ê

y

ú

 

ê0 1

0ú

=

ê

ú

(44)

ê0 0

0

1ú

× ê

 

ú

ê

0

ú

êz ú

 

 

ê0 0

-

1

1ú

ê

1

ú

 

ê1

-

 

z ú

 

 

 

 

 

ú

 

ê

 

D

ú

ë

û

 

ê

 

 

 

ë

 

û

 

 

ë

 

 

D û

 

Легко видеть, что матрица проектирования вырождена. Результат данного преобразования будет соответствовать вышеприведенным формулам дляx и y

117

после приведения к нормализованным координатам(т.е. поделив компоненты вектора на (1 - Z / D) ).

Для преобразования с матрицей(44) существует лишь один центр проецирования (точка схода). Когда оси координат не параллельны плоскости эк-

рана, таких точек три, и матрица ни по какой из координат не вырождена:

 

 

é

1

0

0

0ù

 

 

ê

0

1

0

ú

 

M =

ê

0ú

(45)

ê

0

0

1

0ú

ê

1

 

1

 

1

ú

ê-

 

-

 

-

 

1ú

a

b

c

ë

 

 

û

Для того, чтобы получить изображение, показанное на рисунке 56, помимо (45) требуется осуществить поворот вокруг оси z и сдвиг системы координат вверх на некоторую высоту h.

Особенность перспективных проекций – наличие "линии горизонта", которая возникает из-за перспективного схождения параллельных прямых в -пу чок, точка схода которого (бесконечно удаленная) лежит на линии горизонта. Совокупность точек схода различных наборов параллельных прямых, лежащих в одной плоскости, и образует линию горизонта.

Специальные перспективные проекции– проекции на цилиндрические, конические, сферические и др. поверхности с последующим разворачиванием полученной проекции на плоскость. Проекция на цилиндрическую поверхность позволяет показывать объекты с очень большими углами зрения– вплоть до круговой панорамы. Трудности сферических проекций прежде всего в том, что сфера на плоскость без разрывов не развертывается. Если точки пространства проецируются на поверхность сферы лучами, проходящими через некоторую точку внутри сферы, то перепроецировать их отображения на плоскость можно множеством способов, например ортогональным проецированием параллельными лучами, способом развертки меридианов и др. Среди этих различных способов выделяется стереографический; в нем со сферы на плоскость точки перепроецируются прямолинейными лучами, проходящими через полюс сферы, диаметрально противоположный тому, в котором сфера касается плоскости. При этом способе углы между пересекающимися линиями на сфере и их отображениями на плоскости равны.

Еще один вид специальных проекций– стереоскопические. Простейший вид стереоизображения образуется с помощью стереопары– двух перспектив-

118

ных проекций, построенных каждая для своего глаза (см. рисунок 54). Принцип создания и расчета таких изображений показан на рисунке. Для объемного восприятия стереопары надо устроить так, чтобы каждый глаз видел свою проекцию. Достигается это разными способами: просмотром изображений через стереоскоп, использованием двух наложенных друг на друга проекций, выполненных линиями разного цвета, которые рассматривают через очки с цветными стеклами; наконец, просмотром изображений, проецируемых на экран в поляризованном свете, через поляроидные светофильтры.

Рисунок 54 – Стереоскопическая проекция Стереограммы – достаточно давно известный способ создания псевдо-

трёхмерных (но отнюдь не проекций трёхмерных) изображений, который благодаря возможностям современной компьютерной графики породил довольно много новых вариантов (в частности стереоизображения из текстурных основ и из случайных точек, анимированные стереоизображения и т.п.). Рисунок 55, в отличие 54, даёт представление об алгоритме, лежащем в основе создания стереоизображения.

Рисунок 55 – Формирование стереоизображения

119