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

21.09.2019

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

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

Отсюда сразу следует, что при аффиниом преобразовании равным векторам соответствуют равные, так что:

2° Аффинное преобразование плоскости (пространства) порождает ьзаимно однозначное отображение на себя (преобразование) многообразия V всех свободных векторов плоскости (соответственно пространства).

Это преобразование обладает следующим свойством линейности: если при данном преобразовании векторам и, v соответствуют векторы u, v, то вектору будет соответствовать вектор , а вектору - вектор Ли (доказывается сразу переходом к координатам). Из свойства линейности вытекает, далее:

Если при данном аффинном преобразовании векторам соответствуют векторы , то всякой линейной комбинации

векторов соответствует линейная комбинация

векторов (с теми же коэффициентами ).

Так как при аффинном преобразовании нулевому вектору очевидно соответствует нулевой, то из доказанного следует:

4° При аффинном преобразовании линейная зависимость векторов сохраняется , значит, всякие два коллинеарных вектора переходят в коллинеарные, всякие три компланарных вектора переходят в компланарные).

5° Обратное преобразование к аффинному преобразованию есть аффинное преобразование.

В самом деле, если данное аффннное преобразование А плоскости задается переходом от репера к реперу , то аффинное преобразование, задаваемое переходом от репера к реперу , есть, как легко видеть, преобразование, обратное к преобразованию А.

То же и для пространства.

Мы видели, что при аффинном преобразовании линейная зависимость векторов сохраняется. Сохраняется и линейная независимость векторов:

6° При аффинном преобразовании А всякая линейно независимая система векторов их, . переходил в линейно независимую - в противном случае при аффинном преобразовании , обратном к А, линейно зависимая система и, . перешла бы в линейно независимую, что, как мы знаем, невозможно.

Так как репер есть система линейно независимых векторов (двух на плоскости, трех в пространстве), приложенных к данной точке О, то при аффинном преобразовании всякий репер переходит в репер. Более того, имеет место предложение

7° При аффинном отображении (заданном переходом от репера I к реперу ) всякий репер II переходит в репер [ и всякая точка М (всякий вектор и) переходит в точку М (в вектор ) с теми же координатами относительно репера , какие точка М и вектор и имели относительно репера II.

Доказательство в случае плоскости и в случае пространства одно и то же. Ограничимся случаем плоскости. Пусть II есть репер (рис. 143), а - репер сначала утверждение, касающееся векторов. Если вектор и имеет относительно репера координаты , то . Но тогда образ вектора и есть, по свойству 3°, вектор

имеющий координаты относительно репера . Пусть точка М имеет координаты относительно репера .

Тогда , гак что, по предыдущему, относительно репера сектор ОМ, а значит, и точка М имеют координаты . Утверждение доказано.

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

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

В самом деле, пусть аффинное преобразование задается переходом от репера I к реперу II. Аффинное преобразование мы можем, по только что доказанному, задать переходом от репера II к какому-то реперу III. Тогда аффинное преобразование, задаваемое переходом от репера I к реперу III, есть, очевидно, произведение преобразования на преобразование .

Замечание 1. Только что доказанные свойства 1° - 7° аффинных преобразований, очевидно, имеют место и для аффинных отображений одной плоскости на другую (одного экземпляра трехмерного пространства на другой).

Тождественное преобразование плоскости, соответственно пространства, есть, очевидно, аффинное преобразование. Вспомним, что преобразование, обратное к аффинному, есть аффинное. Наконец, как мы только что доказали, произведение двух аффинных преобразований есть аффинное преобразование. Отсюда - на основании условия, данного в § 6, п. 6, Прибавления, - сразу вытекает следующая основная

Теорема 1. В группе всех преобразований плоскости (пространства) аффинные преобразования образуют подгруппу.

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

Теорема 1. В группе всех аффинных преобразований движения образуют подгруппу.

Продолжаем перечисление простейших свойств аффинных преобразований и отображений.

Три точки тогда и только тогда коллинеарны (т. е. лежат на одной прямой), когда векторы коллинеарны. А так как коллинеарность векторов при аффинном преобразовании сохраняется, то сохраняется и коллинеарность точек. Отсюда вытекает:

При аффинном отображении (плоскости или пространства) прямая переходит в прямую.

Мы сейчас дадим второе доказательство этого факта.

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

9° При данном аффинном отображении (определенном переходом от репера , к реперу ) множество всех точек, координаты которых (в координатной системе ) удовлетворяют некоторому Уравнению, переходит в множество точек, координаты которых в системе удовлетворяют тому же уравнению.

В частности, прямая с уравнением

(в системе ) перейдет в прямую, имеющую то же уравнение, но только в системе координат .

Точно так же при аффинном преобразовании пространства (определенном переходом от репера к реперу ) плоскость, имеющая в системе уравнение

переходит в плоскость, имеющую то же уравнение (2), но только в системе координат .

Прямая, заданная в пространстве своим «общим уравнением»

или той или иной его специальной разновидностью, например каноническим уравнением

при данном аффинном преобразовании перейдет в прямую, имеющую те же уравнения, но только в системе координат . Итак, доказана

Теорема 2. При аффинном преобразовании плоскости, соответственно пространства, прямые переходят в прямые, плоскости переходят в плоскости.

При этом сохраняется параллельность.

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

Замечание 2. Сохранение параллельности при аффинном преобразовании можно вывести и пользуясь тем, что аффинное преобразование взаимно однозначно.

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

Значит, два пересекающихся множества при всяком взаимно однозначном отображении переходят в пересекающиеся.

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

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

Теорема 3. При аффинном преобразовании плоскости (пространства), переводящем прямую d в прямую , отрезок прямой d переходит в отрезок прямой а точка М прямой d, делящая отрезок в данном отношении К, переходит в точку

М прямой d, делящую отрезок в том же отношении (рис. 144).

Доказательство. Так как при положительном А. мы получаем точки, лежащие внутри отрезка (соответственно а при отрицательном - вне этого отрезка, то из второго утверждения теоремы 3 следует первое. Доказываем второе утверждение теоремы 3, ограничиваясь случаем плоскости. Пусть (в системе координат ) имеем

Так как точка М делит отрезок в отношении , то

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

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

Всякий лежащий в плоскости вектор при этом перейдет в лежащий в плоскости вектор с теми же координатами относительно репера , какие вектор и имел относительно репера . Отсюда следует, что и всякая точка М плоскости перейдет в точку М плоскости , имеющую относительно репера , те же самые координаты, какие точка М имела в плоскости относительно репера . Другими место Теорема 4. Пусть при аффинном преобразовании пространства плоскость я переходит в плоскость . Тогда преобразование А отображает произвольный репер плоскости на некоторый репер оаплоскости и ставит в соответствие каждой точке М плоскости точку М плоскости , имеющую относительно репера , те самые координаты, которые точка М имела относительно репера . Другими словами: преобразование А порождает аффинное отображение плоскости на плоскость .

Аффинное преобразование это такое преобразование, которое сохраняет параллельность линий, но не обязательно углы или длины.
В компьютерной графике все, что относится к двумерному случаю, принято обозначать символом 2D (2-dimension). Допустим, на плоскости введена прямолинейная координатная система. Тогда каждой точке М ставится в соответствие упорядоченная пара чисел (х, у) ее координат (рис. 1).


Указанные выше формулы можно рассматривать двояко: либо сохраняется точка и изменяется координатная система в этом случае произвольная точка М остается той же, изменяются лишь ее координаты (х, у) (х*, у*) , либо изменяется точка и сохраняется координатная система в этом случае формулы задают отображение, переводящее произвольную точку М(х, у) в точку М*(х*, у*), координаты которой определены в той же координатной системе. В дальнейшем будем интерпретировать формулы, как правило, что в заданной системе прямолинейных координат преобразуются точки плоскости.
В аффинных преобразованиях плоскости особую роль играют несколько важных частных случаев, имеющих хорошо прослеживаемые геометрические характеристики. При исследовании геометрического смысла числовых коэффициентов в формулах для этих случаев удобно считать, что заданная система координат является прямоугольной декартовой.
Наиболее часто применяются следующие приемы компьютерной графики: перенос, масштабирование, поворот, отражение. Алгебраические выражения и рисунки, поясняющие данные преобразования сведем в табл.1.

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

Под переносом понимается смещение примитивов вывода на один и тот же вектор.
Масштабирование это увеличение или уменьшение всего изображения либо его части. При масштабировании координаты точек изображения умножаются на некоторое число.
Под поворотом понимается вращение примитивов вывода вокруг заданной оси. (В плоскости чертежа вращение происходит вокруг точки.)
Под отражением понимают получение зеркального отображения изображения относительно одной из осей (например X).
Выбор этих четырех частных случаев определяется двумя обстоятельствами:
1. Каждое из приведенных выше преобразований имеет простой и наглядный геометрический смысл (геометрическим смыслом наделены и постоянные числа, входящие в приведенные формулы).
2. Как доказывается в курсе аналитической геометрии, любое преобразование вида (*) всегда можно представить как последовательное исполнение (суперпозицию) простейших преобразований вида А, Б, В и Г (или части этих преобразований).
Таким образом, справедливо следующее важное свойство аффинных преобразований плоскости: любое отображение вида (*) можно описать при помощи отображений, задаваемых формулами А, Б, В и Г.
Для эффективного использования этих известных формул в задачах компьютерной графики более удобной является их матричная запись.
Для объединения этих преобразований вводят однородные координаты. Однородными координатами точки называется любая тройка одновременно не равных нулю чисел x1 , x2 , x3 , связанных с заданными числами x и y следующими соотношениями:



Тогда точка M(х, у) записывается как M(hX, hY, h), где h 0 является масштабным множителем. Двумерные декартовы координаты могут быть найдены как

В проективной геометрии эти координаты вводятся для устранения неопределенностей, возникающих при задании бесконечноудаленных (несобственных) элементов. Однородные координаты можно интерпретировать как вложение промасштабированной с коэффициентом h плоскости в плоскость Z= h в трехмерном пространстве.
Точки в однородных координатах записываются трехэлементными вектор-строками. Матрицы преобразования должны иметь размер 3х3.
При помощи троек однородных координат и матриц третьего порядка можно описать любое аффинное преобразование плоскости.
В самом деле, считая h = 1, сравним две записи: помеченную символом (*) и нижеследующую, матричную:

Теперь можно использовать композиции преобразований, применяя одно результирующее вместо ряда преобразований, следующих друг за другом. Можно, например, сложную задачу разбить на ряд простых. Поворот точки А около произвольной точки В можно разбить на три задачи:
перенос, при котором В= 0 (где 0-начало координат);
поворот;
обратный перенос, при котором точка В возвращается на место и т. д.
Композиция наиболее общего вида из операций Т, D, R, M имеет матрицу:

Верхняя часть размером 2х2 - объединенная матрица поворота и масштабирования, a tx и ty описывают суммарный перенос.
К изложенным фундаментальным преобразованиям сводятся следующие:
прокручивание перемещение окна на поверхности визуализации (если перемещение ограничено только направлениями вверх и вниз, то оно называется вертикальным прокручиванием);

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

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

Растровые и векторные изображения

Различают два вида изображений: растровые и векторные.
Растровое изображение состоит из множества точек - пикселей (от англ. pixel - PIcture ELement), каждый пиксель имеет определенный цвет. Чем плотнее расположены пиксели, чем меньше их размеры и чем большее количество цветов, тем выше качество картинки. Примеры растровых изображений: офсетная (газетная) печать, изображение на экране компьютера, сканированный рисунок. При хорошей разрешающей способности устройств графического вывода достигается очень высокое качество растровых изображений, но, к сожалению, работа с ними крайне неудобна, а при масштабировании качество теряется.
Векторное изображение в простейшем случае состоит не из точек, а из множества отрезков прямых, заданных координатами их концов. Такое изображение легко масштабируется без потери качества и легко поддается обработке. Практически во всех графических пакетах, используемых в САПР, информация представляется в векторном виде.

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

Допустим, на плоскости введена прямолинейная координатная система. Тогда каждой точке M ставится в соответствие упорядоченная пара чисел (x, y) ее координат (рис. 1). Вводя на плоскости еще одну прямолинейную систему координат, поставим в соответствие той же точке M другую пару чисел - (x*, y*) .

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

(*)

где - произвольные числа, связанные неравенством:

В дальнейшем будем рассматривать формулы (*) как правило, согласно которому в заданной системе координат преобразуются точки плоскости.

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

А. Поворот вокруг начальной точки на угол j (рис. 2а) описывается формулами

Б. Растяжение (сжатие) вдоль координатных осей (рис. 2б) можно задать так:

В. Отражение относительно оси абсцисс (рис. 2в) задается при помощи формул

Г. Перенос (рис. 2г) обеспечивают соотношения

Как доказывается в курсе аналитической геометрии, любое преобразование вида (*) всегда можно представить как последовательное исполнение (суперпозицию) простейших преобразований вида А, Б, В и Г.
Для эффективного использования этих известных формул в задачах компьютерной графики более удобной является их матричная запись. Матрицы, для случаев А, Б и В легко строятся и имеют соответственно следующий вид:

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

Однородные координаты точки

Пусть M - произвольная точка плоскости с координатами x и y , вычисленными относительно заданной прямолинейной координатной системы. Однородными координатами этой точки называется любая тройка одновременно неравных нулю чисел x1, x2, x3, связанными с заданными числами x и y следующими соотношениями:


При решении задач компьютерной графики однородные координаты обычно вводятся так: произвольной точке M(x, y) плоскости ставится в соответствие точка M*(x, y, 1) в пространстве (рис. 3).

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

,

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

Аффинные преобразования в пространстве

Для выполнения пространственных построений, аналогично двумерной задаче, три координаты точки (x, y, z) заменяются четверкой чисел (x, y, z, 1) . Это дает возможность воспользоваться матричной записью и в более сложных трехмерных задачах.

Любое аффинное преобразование в трехмерном пространстве может быть представлено в виде суперпозиции вращений, растяжений, отражений и переносов. Математически все преобразования сводятся к перемножению матриц четвертого порядка. Например, матрица вращения вокруг оси абсцисс на угол j имеет вид:

.

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

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

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

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

Глава 1. Дополнение. Преобразование декартовых прямоугольных координат на плоскости и в пространстве. Специальные системы координат на плоскости и в пространстве.

Правила построения систем координат на плоскости и в пространстве рассмотрены в основной части Главы 1. Были отмечены удобства применения прямоугольных систем координат. При практическом использовании средств аналитической геометрии часто возникает необходимость преобразовать принятую систему координат. Обычно это диктуется соображениями удобства: упрощаются геометрические образы, нагляднее становятся аналитические модели и используемые при вычислениях алгебраические выражения.

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

Результаты, полученные в Дополнении Главы 1, будут использоваться в линейной алгебре, большая часть – в математическом анализе и в физике.

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

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

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

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

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

1). Параллельный перенос: следим только за одной точкой – точкой .

2). Вращение осей системы координат относительно точки : как твёрдого тела.

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

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

Определим для принятых систем координат базисные векторы. Так как система получена параллельным переносом системы , то для обеих этих систем примем базисные векторы: , причём единичные и совпадающие по направлению с осями координат , , соответственно. Для системы в качестве базисных векторов примем единичные векторы , совпадающие по направлению с осями , .

Пусть задана система координат и в ней определена точка = . Будем считать, что перед преобразованием имеем совпадающие системы координат и . Применим к системе координат параллельный перенос, определяемый вектором . Требуется определить преобразование координат точки . Воспользуемся векторным равенством: = + , или:

Проиллюстрируем преобразование параллельного переноса известным в элементарной алгебре примером.

Пример Д 1 : Задано уравнение параболы: = = . Привести уравнение этой параболы к простейшей форме.

Решение :

1). Воспользуемся приёмом выделения полного квадрата : = , которое легко представить в виде: –3 = .

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

Ответ: простейшая форма параболы: .

Пусть задана система координат и в ней определена точка = . Будем считать, что перед преобразованием имеем совпадающие системы координат и . Применим к системе координат преобразование вращения так, что относительно исходного своего положения, то есть относительно системы оказывается повёрнутой на угол . Требуется определить преобразование координат точки = . Запишем вектор в системах координат и : = .

В то же время для любого угла имеем: что достаточно просто наблюдаем из рисунка. Тогда: = . Последнее может быть записано в виде: = . Из векторного равенства получаем преобразование координат для точки : .Нарушение авторских прав и

Как можно догадаться - с пространством всё тоже самое, что и с плоскостью. Все правила, которые касались АП в однородных координатах на плоскости, сохраняются и в пространстве, все проблемы, что были на плоскости, остаются и в пространстве. Можно предположить, что все эти правила действительны и для любого n-мерного пространства. Что надо хорошо помнить: есть разные понятия: радиус-вектор по сути – это точка в КГ, а свободный вектор – это просто направление, и третье понятие – нормаль. Преобразования для них определяют по-разному. В пространстве всё также, причём в пространстве это более актуально, т.к. в трёхмерной графике много задач, которые не часто или вообще не встречаются на плоскости.

Итак, в пространстве имеем три координаты x,y,z и дополнительно вводится координата W для получения свойства однородности. Также для АП принимаем, что W=1 и тогда (x, y, z) = ( , ).

Преобразования в общем случае можно представить в виде скалярного произведения вектора – строки на матрицу преобразования – слайд 29:

В матрице 12 коэффициентов. Блок (3х3) (как в 2D блок (2х2)) отвечает за преобразования - поворот, масштабирование… Нижняя строка отвечает за параллельный перенос, правый столбик должен отвечать за перспективные преобразования, но пока эти вопросы рассматривать не будем. Матрицы преобразования имеют аналогичный вид и смысл - (слайд 30)

и повороты - (слайд 31)

Если вспомнить пример поворота точки, то в пространстве выполнить это так же просто нельзя. Поворот, рассмотренный на плоскости, по существу был выполнен вокруг оси Z, и если надо выполнить поворот какой-то точки в пространстве, то его нельзя задать однозначно простым действием. Он будет описываться посредством трёх матриц – вокруг оси Z, оси Х, оси У, т.е. его надо будет разбить на ряд отдельных действий – на три составных.

Ещё одно замечание – определитель матрицы равен 1. Это означает, что в процессе поворота объект не поменяет своих размеров и не претерпеет какой-либо деформации, т.е. ведёт себя как твёрдое тело. Этому телу можно задавать необходимую ориентацию в пространстве. Тоже можно сказать и о параллельном переносе.

Имеется более универсальный способ осуществления поворота относительно произвольной оси, проходящей через начало координат. Матрица такого преобразования построена на КВАТЕРНИОНАХ и приведена ниже:

С кватернионами следует познакомиться самостоятельно!

Замечание о кватернионах.

При выводе последнего соотношения использовалось понятие о кватернионах. Это система гиперкомплексных чисел (предложена в 1843 г. Гамильтоном, в то время - гл. астрономом Англии).

Кватернион – это пара (а, ū ). а - скаляр, вещественное число. ū - вектор трёхмерного пространства. Кватернионы образуют систему (ряд) гиперкомплексных чисел, подобную другим числовым рядам. Если коротко – то это 4-х компонентная математическая абстракция со своими свойствами и правилами выполнения операций сложения и умножения. Кватернион в общем виде можно представить как сумму a+bi+cj+dk, где a,b,c,d – вещественные числа, а i,j,k – несократимые мнимые единицы, причём для них определено, что

i 2 =j 2 =k 2 =ijk= -1;

Примеры числовых рядов:

Натуральные: 1,2,3,4,5….

Целые: 0,1,-1,2,-2,…

Рациональные: 1;-1;1/2; 0,12,..

Вещественные: рациональные + ирац.: π, е, ,….

Комплексные: -1; ½; π; 3i+z; -еiπ/3;… (включают в себя все предшедствующие)

Кватернионы: 1; -1; 1/2; I; j; k; πj-1/2k; …

9. Пример трёхмерного преобразования – построение матрицы камеры - (слайд 34)

Достаточно часто требуется изменение наблюдения на сцену. Т.е. имеется некоторая сцена и требуется изменить наблюдение на эту сцену с помощью матрицы трёхмерного преобразования.

Считаем, что виртуальный наблюдатель (камера) находится в некоторой точке “C” в ортогональной системе координат U,V,N

и есть другая система координат – X,Y,Z (мировая). Мировые координаты описывают истинное положение объектов в пространстве. Экранная система координат предназначена для синтеза (создания) изображения на к.-л. плоскость. Эта система может быть двумерной и трёхмерной. Различают так же другие системы координат как системы устройств изображения, осуществляющие вывод изображения в заданной форме.

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

Будем считать, что обе системы координат правосторонние, и та, что в камере и мировая. Это означает, что ось Z смотрит на нас. Все векторы направлений нормированы и, что естественно, ортогональны. Это требуется для сокращения набора вычислений. Камеру С должно рассматривать как некоторую одноразовую, однократно задаваемую в программе абстракцию. Её можно заранее настроить, а затем применить ко всем объектам.

Что значит настроить? Настроить – это значит ортонормировать все векторы и согласовать их с векторами – направлениями в другой СК. А дальше применять так долго, как это потребует обстановка.

Что будем искать? Будем искать такое преобразование, которое переводит объект из мировой системы координат в систему координат наблюдателя.

Как будем делать?

Сначала перенесём камеру в начало координат Мировой СК на (- C z), (- C y), (- C x); затем повернём, причем таким образом, что бы оси -U совпала с осью X, V совпала с осью Y и ось N c осью Z; т.е. будем искать матрицу преобразования в виде: перенос-поворот.

Поскольку камера находится в позиции точка “C” с координатами (x,y,z), то необходимо выполнить обратный её перенос: матрица переноса показана на слайде 33.

где Т – матрица переноса



© dagexpo.ru, 2024
Стоматологический сайт