Проецировать изображение. Проецирование как метод графического отображения формы предмета. Ортогональное проецирование. Метод Монжа

Изображения на плоскости получают методом проецирования . Аппарат проецирования представлен на рисунке 1.


Рисунок 1. Аппарат проецирования

Объект проецирования — точка А . Через точку А проходит проецирующий луч i с направлением к картинной плоскости, называемой плоскостью проекций . Точка пересечения проецирующего луча с плоскостью проекций называется проекцией точки . Обозначение проекции точки должно содержать индекс плоскости проекций. Например, при проецировании на плоскость П n проекция точки будет обозначена — А n .

Виды проецирования

Различают центральное и параллельное проецирование . В первом случае источник лучей находится в обозримом пространстве — точка S собственная, во втором — источник лучей расположен в бесконечности. Схемы центрального и параллельного проецирования приведены соответственно на рисунках 2 и 3. Модель центрального проецирования — пирамида (рисунок 4) или конус; модель параллельного проецирования — призма (рисунок 5) или цилиндр.



Рисунок 2. Схема центрального проецирования

Проецированием на одну плоскость проекций получается изображение, которое однозначно не определяет форму и размеры предмета. На рисунке 1 проекция точки А — Аn не определяет положение самой точки в пространстве, поскольку по одной проекции невозможно определить расстояние, на котором точка находится от плоскости П . Наличие только одной проекции создает неопределенность изображения. В таких случаях, когда невозможно воспроизвести пространственный образ (оригинал) предмета, говорят о необратимости чертежа.



Рисунок 3. Схема параллельного проецирования

Рисунок 4. Модель центрального проецирования (пирамида)



Рисунок 5. Модель параллельного проецирования (призма)

Для исключения неопределенности объекты проецируют на две, три и более плоскостей проекций. Ортогональное проецирование на две плоскости предложил французский геометр Гаспар Монж (ХVIII век). Метод Монжа представлен на рисунке 6,а,б,в (а — наглядное изображение точки в двугранном угле, б — комплексный чертеж точки, в — восстановление объекта, точки А, в пространстве по ее проекциям).



Рисунок 6. Проецирование точки:
а — образование проекций пространственной точки А;
б — чертеж точки А;
в — восстановление пространственного образа точки А по проекциям А1 и А2

Инвариантные свойства параллельных проекций:

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

Различают косоугольные и прямоугольные параллельные проекции. Если проецирующие лучи направлены к плоскости проекций под углом, отличным от прямого, то проекции называют косоугольными. Если проецирующие лучи перпендикулярны к плоскости проекций, то полученные проекции называют прямоугольными. Для прямоугольных проекций используют термин ортогональные от греческого ortos — прямой.

При ортогональном проецировании в пространство вводят две или три взаимно перпендикулярные плоскости, которым присваивают следующие названия и обозначения:

  • горизонтальная плоскость проекций — П1
  • фронтальная плоскость проекций — П2
  • профильная плоскость проекций — П3

Плоскости проекций бесконечны и, пересекаясь, делят пространство на восемь частей — октантов, как показано на рисунке 7.



Рисунок 7. Три взаимно перпендикулярные плоскости проекций П1, П2 и П3 делят пространство на восемь частей (октантов)

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


Рисунок 8. Трехгранный угол, первый октант

При пересечении плоскостей проекций образуются прямые линии - оси проекций:

Ось X (икс) — ось абсцисс ось Y (игрек) — ось ординат Ось Z (зет) — ось аппликат

Если оси проградуировать, то получится координатная система, в которой легко построить объект по заданным координатам. Система прямоугольных координат была предложена Декартом (ХVIIIв.). Ортогональным проекциям присущи все свойства параллельных проекций. На рисунке 9 показано преобразование трехгранного угла и образование комплексного чертежа точки А .



Рисунок 9. Преобразование трехгранного угла и образование чертежа точки в трех проекциях
а — наглядное изображение, б — развертка трехгранного угла, в — чертеж точки

На рисунке 10 приведен комплексный чертеж прямого кругового конуса, отмечена точка S — вершина конуса. Оси проекций X, Y, Z не показаны, что часто используется в практике построения чертежей .

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


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

Типы проекции изображений в фотографии

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

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

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

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

Рыбий глаз - это проекция изображения, целью которой является создание плоской сетки, где расстояние от центра сетки примерно пропорционально действительному углу зрения; она образует изображение, которое выглядит похоже на отражение от металлической сферы. Как правило такая проекция не используется в качестве выходного формата панорамной фотографии, но вместо того она может представлять исходные изображения, если для съёмки таковых использовался объектив типа «рыбий глаз». Эта проекция к тому же ограничена вертикальным и горизонтальным углом обзора 180 градусов или менее, порождая изображение, которое помещается в круг. Её характеризует нарастающее искривление линий (которые иначе были бы прямыми) по мере удаления от центра изображения. Камера с объективом типа «рыбий глаз» исключительно полезна при создании панорам, которые покрывают всю сферу зрения, поскольку достаточно будет собрать небольшое число снимков.

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

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

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

Примеры: широкое горизонтальное поле зрения

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

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

Обратите внимание на значительные искажения по краям угла зрения, вдобавок к драматической потере разрешения вследствие растягивания изображения. Следующий снимок демонстрирует, как выглядело бы сильно искажённое изображение, показанное выше, если бы его обрезали по горизонтальному углу зрения, составляющему всего 120 градусов.

Как можно видеть, такая кадрированная прямоугольная проекция производит вполне приятное впечатление, поскольку все прямые архитектурные линии в сборке остаются прямыми. С другой стороны, это достигается за счёт относительного размера объектов в пределах угла зрения; объекты на границах угла зрения (левый и правый края) значительно увеличены по сравнению с объектами в центре (башня со входом внизу).

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



Примеры: высокое вертикальное поле зрения

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

Примечание: точка перспективы для этой панорамы установлена в основании башни, и как следствие, действительный вертикальный угол зрения выглядит так, как если бы поле зрения составляло 140 градусов (как если бы точка перспективы была на половинной высоте).


Поперечный Меркатор

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

Все три показанных проекции призваны сохранить практически прямые вертикальные линии; поперечная проекция Меркатора справа вносит некоторое скругление с целью сохранить более реалистичную (субъективно) перспективу. Этот тип проекции часто используется для экстремально больших вертикальных углов зрения. Заметим также, насколько хорошо эта проекция сохраняет исходный вид каждого из исходных снимков.

Разница между прямоугольной и цилиндрической проекциями для такого узкого горизонтального угла зрения едва заметна, так что прямоугольная проекция пропущена.

Калькуляторы панорамного поля зрения

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

На какой-либо поверхности (плоской, цилиндрической, сфериче­ской, конической) с помощью проецирующих лучей.

Проецирование может осуществляться различными методами.

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

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

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

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

Проецирование треугольника (рис. 52, в). Расположим тре­угольник ABC перед плоскостью H. Приняв вершины треуголь­ника за отдельные точки А, В, С, спроецируем каждую из них на плоскость проекций. Получим проекции вершин треугольника - a, b, с. Последовательно соединив проекции вершин (а и b; b и с; с и а), получим проекции сторон треугольника (ab, bc, ca). Часть плоскости, ограниченная изображением сторон треугольника abc, будет являться проекцией треугольника ABC на плоскости H Следовательно, методом проецирования можно получить проек­цию плоской фигуры - двухмерного объекта.

Проецирование призмы (рис. 52, г). Для примера возьмем наклонную треугольную призму и спроецируем ее на плоскость проекций H. В результате проецирования призмы на плоскость H получают изображения (проекции) ее оснований - треуголь­ников - abc и a 1 b 1 c 1 и боковых граней - прямоугольников abb 1 a 1 и bcc 1 b 1 . Так в результате проецирования на плоскости H получают проекцию треугольной призмы. Следовательно, с помощью метода проецирования можно отобразить любой трех­мерный объект.

Рис. 52. Проецирование нуль-, одно-, двух- и трехмерных объектов: а - точка;
б - прямая; в - треугольник; г - призма

Таким образом, методом проецирования можно отобразить на плоскости любой объект (нуль-, одно-, двух- и трехмерный). В этом отношении метод проецирования является универсальным.

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

Существует центральное (или перспективное) и параллельное проецирование. Параллельное проецирование бывает прямо­угольным (ортогональным) или косоугольным (табл. 5).

5. Методы проецирования


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

Перспектива передает внешнюю форму предмета так, как воспринимает его наше зрение.

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

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

Изображения, полученные в результате параллельного про­ецирования, называются параллельными проекциями.

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

Изготовление деталей и сборка изделий произво-дятся по чертежам.

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

Чертёж содержит изображения (проекции), кото-рые в зависимости от их содержания делятся на виды, разрезы сечения, и сведения, необходимые для изготов-ления изделий.

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

Слово "проекция" в переводе с латинского означа-ет "бросание вперёд, вдаль". Нечто похожее на проекцию можно наблюдать, если параллельно стене, противопо-ложной окну, расположить ученическую тетрадь. На сте-не образуется тень в виде прямоугольника.

Элементами, с помощью которых осуществляется проецирование, являются (рис. 11): центр проецирова-ния - точка, из которой производится проецирование; объект проецирования - изображаемый предмет; плоскость проекции - плоскость, на которую производится проецирование; проецирующие лучи - воображаемые прямые, с помощью которых производится проецирова-ние, результатом проецирования является изображение, или проекция, объекта.

Различают центральное и параллельное проеци-рование. При центральном проецировании все проеци-рующие лучи исходят из одной точки - центра проеци-рования, находящегося на определённом расстоянии от плоскости проекций. На рис, 11а за центр проециро-вания условно взята электрическая лампочка. Исходящие от неё световые лучи, которые условно приняты за про-ецирующие, образуют на полу тень, аналогичную цен-тральной проекции предмета.

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

В машиностроительных чертежах центральные проекции не применяются. Ими пользуются в строитель-ном черчении и в рисовании.

При параллельном проецировании все проеци-рующие лучи параллельны между собой. На рис.11б по-казано, как получается параллельная косоугольная про-екция. Центр проецирования предполагается условно удалённым в бесконечность. Тогда параллельные лучи отбросят на плоскость проекций тень, которую можно принять за параллельную проекцию изображаемого предмета.

В черчении пользуются параллельными проекция-ми. Выполнять их проще, чем центральные.

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

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

Аксонометрические проекции

Чертёж, выполненный в прямоугольных (ортого-нальных) проекциях, является основным видом изобра-жения, которым пользуются в технике. Для облегчения пространственного представления о предмете иногда применяют аксонометрические проекции. Аксонометри-ческие проекции передают одним изображением про-странственную форму предмета. Такое изображение соз-даёт у человека впечатление, близкое к тому, которое получается при рассмотрении предмета в "натуре". Ак-сонометрические проекции получаются, если изобра-жаемый предмет вместе с осями координат, к которым он отнесён, с помощью параллельных лучей проецируют на одну плоскость, называемой аксонометрической.

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

Фронтальная диметрическая проекция

Во фронтально диметрической проекции аксоно-метрические оси х, у, z располагаются следующим обра-зом: ось х расположена горизонтально; ось z вертикаль-но; ось у проходит под углом 45 к горизонтальной оси.

По направлению осей х, z откладываются истин-ные величины размеров предмета. Размеры по оси у и направлениям, ей параллельным, со-кращают наполовину.

Прямоугольная изометрическая проекция

Расположение осей х, у, z в изометрической про-екции следующее Ось z проводят вертикально, а оси х и у - под углом 30 к го-ризонтали. При вычерчивании изометриче-ской проекции размеры по всем трём осям от-кладывают без сокра-щения, то есть натуральные

В настоящее время наиболее распространены устройства отображения, кото­рые синтезируют изображения на плоскости - экране дисплея или бумаге. Устройства, которые создают истинно объемные изображения, пока доста­точно редки. Но все чаще появляются сведения о таких разработках, напри­мер, об объемных дисплеях или даже о трехмерных принтерах .

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

Мировые и экранные координаты

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

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

Для получения изображения в определенной проекции необходимо рассчитать координаты проекции. Из них можно получить координаты для графического устройства- назовем их экранными координатами. Для синтеза изображения на плоскости достаточно двумерной системы координат. Одна­ко в некоторых алгоритмах визуализации используются трехмерные экранные координаты, например, в алгоритме Z-буфера.

Основные типы проекций

В компьютерной графике наиболее распространены параллельная и цент­ральная проекции (рис. 2.15).

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

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

Аксонометрическая проекция - разновидность параллельной проекции. Для нее все лучи проецирования располагаются под прямым углом к плоскости проецирования (рис. 2.16).

[Зададим положения плоскости проецирования с помощью двух углов - α и β, Расположим камеру так, чтобы проекция оси z на плоскости проецирова|ния Х0Y была бы вертикальной линией (параллельной оси ОУ).

Рис. 2.16. Аксонометрическая проекция

Для того чтобы найти соотношения между координатами (х, у, z ) и (X , Y , Z ) для любой точки в трехмерном пространстве, рассмотрим преобразования системы координат (х , у, z ) в систему (X , Y , Z). Зададим такое преобразование двумя шагами.

1-й шаг. Поворот системы координат относительно оси z на угол α. Такой поворот осей описывается матрицей

2-й шаг. Поворачиваем систему координат (x , у", z ") относительно оси х" на угол β - получаем координаты (X , Y , Z ). Матрица поворота

Преобразования координат выражаем произведением матриц В * А:

Запишем
преобразование для координат проекции в виде формул:

Как вы считаете, будет ли получена та же проекция, если описывать преобра­зования координат теми же двумя шагами, но в другой последовательности - сначала поворот системы координат относительно оси х на угол β, а потом поворот системы координат относительно оси z " на угол α? И будут ли вер­тикальные линии в системе координат (x , y , z ) рисоваться также вертикалями в системе координат (X , У, Z)? Иначе говоря, выполняется ли А*В - В*А? Обратное преобразование координат аксонометрической проекции. Для того, чтобы координаты проекции (X , Y , Z ) преобразовать в мировые коорди­наты (х, у, z ), нужно проделать обратную последовательность поворотов. Вначале выполнить поворот на угол -β а затем - поворот на угол - α. Запи­шем обратное преобразование в матричном виде

Матрицы поворотов:

Перемножив матрицы А -1 и В -1 , получим матрицу обратного преобразования:

Запишем обратное преобразование также и в виде формул

Перспективная проекция

Перспективную проекцию (рис. 2.17) сначала рассмотрим при вертикальном расположении камеры, когда а=β = 0. Такую проекцию можно себе пред­ставить как изображение на стекле, через которое смотрит наблюдатель, рас­положенный сверху в точке (х, у, z ) = (0, 0, z k). Здесь плоскость проецирова­ния параллельна плоскости (хОу).

Исходя из подобия треугольников, запишем такие пропорции:

Учитывая также координату Z:

В матричной форме преобразования координат можно записать так:

Рис. 2.17. Перспективная проекция

Обратите внимание на то, что здесь коэффициенты матрицы зависят от коор­динаты z (в знаменателе дробей). Это означает, что преобразование коор­динат является нелинейным (а точнее, дробно-линейным), оно относится к классу проективных преобразований.

Теперь рассмотрим общий случай - для произвольных углов наклона каме­ры и р) так же, как и для параллельной аксонометрической проекции. Пусть (х", у", z 1 ) - координаты для системы координат, повернутой относи­тельно начальной системы (х, у, z ) на углы α и β.

Запишем преобразования координат перспективной проекции в виде:

Последовательность преобразования координат можно описать так:

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

Для такой перспективной проекции плоскость проецирования перпендику­лярна лучу, исходящему из центра (х, у, z )= (0, 0, 0) и наклоненному под углом α, β. Если камеру отдалять от центра координат, то центральная проек­ция видоизменяется. Когда камера в бесконечности, центральная проекция вырождается в параллельную проекцию.

Укажем основные свойства перспективного преобразования. В центральной

проекции:

□ не сохраняется отношение длин и площадей;

□ прямые линии изображаются прямыми линиями;

□ параллельные прямые изображаются сходящимися в одной точке.

Последнее свойство широко используется в начертательной геометрии для ручного рисования на бумаге. Проиллюстрируем это на примере каркаса до­мика (рис. 2.18).

Существуют и другие перспективные проекции, которые различаются поло­жением плоскости проецирования и местом точки схождения лучей проеци­рования. Кроме того, проецирование может осуществляться не на плоскость, а, например, на сферическую или цилиндрическую поверхность.

Рассмотрим косоугольную проекцию, для которой лучи проецирования не перпендикулярны плоскости проецирования. Основная идея такой проекции - камера поднята на высоту h с сохранением вертикального положения плоскости проектирования (рис. 2.19).

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

Рис. 2.19. Косоугольная проекция

Получить такую проекцию можно следующим способом:

1. Выполняем поворот вокруг оси z на угол а.

2. Заменяем z " на -у", а.у" на z".

3. Выполняем сдвиг системы координат вверх на высоту камеры h

4. В плоскости (х", у", 0) строим перспективную проекцию уже рассмотрен­ным выше способом (точка схода лучей на оси z ).

Преобразование координат может быть описано таким образом. Сначала оп­ределяются (x", у", z ).

А потом выполняется перспективное преобразование

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

Примеры изображений в различных проекциях. Приведем примеры изо­бражений одинаковых объектов в различных проекциях. В качестве объектов будут кубы одинакового размера. Положение камеры определим углами на­клона α = 27°, β = 70°.

Пример аксонометрической проекции приведен на рис. 2.20.

Рис. 2.20. Аксонометрическая проекция

Теперь рассмотрим примеры для перспективной проекции. В отличие от параллельной проекции, изображение в перспективной проекции существенно зависит от положения плоскости проецирования и расстояния до камеры.

В оптических системах известно понятие фокусного расстояния. Чем больше фокусное расстояние объектива, тем меньше восприятие перспективы (рис. 2.21" и наоборот, для короткофокусных объективов перспектива наибольший (рис. 2.22). Данный эффект вы, наверное, уже замечали, если занимались съемками видеокамерой или фотоаппаратом. В наших примерах можно наблюдать некоторое соответствие величины расстояния от камеры до плоскости проецирования { z k z пл ) и фокусного расстояния объектива. Это соответствие, однако, условно, аналогия с оптическими системами здесь неполная.

Для приведенных Ниже примеров (рис. 2.21, 2.22) z пл = 700. Углы наклона камеры α = 27°, β = 70°.

Рис. 2.21. Перспективная проекция для длиннофокусной камеры ( z K = 2000)

Рис. 2.22. Перспективная проекция для короткофокусной камеры ( z K = 1200)

В случае короткофокусной камеры (z K = 1200) восприятие перспективы наиболее заметно для кубов, которые расположены ближе всего к камере. Вертикальные линии объектов не являются вертикалями на проекции (объекты разваливаются").

Усмотрим примеры косоугольной проекции (рис. 2.23, 2.24). Для нее вер­тикальные линии объектов сохраняют вертикальное расположение на проекции. Положение камеры (точки схождения лучей проецирования) описывается углом поворота α = 27° и высотой подъема h = 500. Плоскость проециро­вания параллельна плоскости (х"Оу") и располагается на расстоянии z пл = 700.

Рис. 2.23. Косоугольная перспективная проекция для длиннофокусной камеры ( z K = 2000)

Рис. 2.24. Косоугольная перспективная проекция для короткофокусной камеры ( z K = 1200)

Рассмотрим еще один пример изображения в центральной проекции - тега в стиле фильма "Звездные войны":

Отображение в окне

Как мы уже рассмотрели выше, отображение на плоскость проецирования соответствует некоторому преобразованию координат. Это преобразование координат различно для разных типов проекции, но, так или иначе, осущест­вляется переход к новой системе координат - координатам проецирования. Координаты проецирования могут быть использованы для формирования изображения с помощью устройства графического вывода. Однако при этом могут понадобиться дополнительные преобразования, поскольку система ко­ординат в плоскости проецирования может не совпадать с системой коорди­нат устройства отображения. Например, должны отображаться объекты, из­меряемые в километрах, а в растровом дисплее единицей измерения является пиксел. Как выразить километры в пикселах?

Кроме того, вы, наверное, видели, что на экране компьютера можно показы­вать увеличенное, уменьшенное изображение объектов, а также их переме­щать. Как это делается?

Введем обозначения. Пусть (Хэ, Уэ, Z э) - это экранные координаты объектов в графическом устройстве отображения. Заметим, что не следует восприни­мать слово "экранные" так, будто речь идет только о дисплеях - все ниже­следующее можно отнести и к любым другим устройствам, использующим декартову систему координат. Координаты проецирования обозначим здесь как (X, Y, Z).

Назовем окном прямоугольную область вывода с экранными координатами

X э min Уэтп) - (Хэтах Уэтах)- Обычно Приходится Отображать В Окно ИЛИ ВСЮ

сцену, или отдельную ее часть (рис. 2.25).

Рис. 2.25. Отображение проекции сцены

а - границы сцены в координатах проекции; б - в окне часть сцены, в - вся сцена с сохранением пропорций вписана в окно

Преобразование координат проекции в экранные координаты можно задать как растяжение/сжатие и сдвиг:

Х Э = КХ + dx , ; Y Э = KY + dy ; Z э = KZ .

Такое преобразование сохраняет пропорции объектов благодаря одинаково­му коэффициенту растяжения/сжатия (К) для всех координат. Заметим, что для плоского отображения можно отбросить координату Z. Рассмотрим, как можно вычислить К, dx и dy . Например, необходимо впи­сать все изображение сцены в окно заданных размеров. Условие вписывания можно определить так:

Если прибавить (1) к (3), то получим:

Из неравенств (2) и (4) следует:

Решением системы (1)-(4) для K будет: К min {Кх, Ку} = К min .

Если значение К х или значение K Y равно бесконечности, то его необходим отбросить. Если оба - то значение К min можно задать равным единице. Дга| того чтобы изображение в окне имело наибольший размер, выберем К = К min Теперь можно найти dx . Из неравенства (1):

Из неравенства (3): I

Поскольку dx 1 < dx 2, то величину dx можно выбрать из интервала I dx 1 dx dx 2. Выберем центральное расположение в окне: I

Аналогично найдем dy:

При таких значениях dx и dy центр сцены будет в центре окна.

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

графических системах используются разнообразные способы задания масйаба отображения и определения границ сцены для показа в окне просмотра. Например, для сдвига часто используют ползунки скроллинга. Также "южно указывать курсором точку на сцене, и затем эта точка становится центральной точкой окна. Или можно очертить прямоугольник, выделяя грани­цы фрагмента сцены, - тогда этот фрагмент затем будет вписан в окно. Й так далее. Все эти способы отображения основываются на растяжении и сжатии (масштабировании), а также сдвиге, и описываются аффинным преобразованием координат.