Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Матрицы. В дальнейшем будем использовать сокращенную запись для матрицы





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

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

Сначала введем ряд операций над матрицами и векторами.

Пусть заданы матрицы и . Суммой матриц называется матрица , элементами которой являются .

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

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

Произведение матриц некоммутативно, т.е. в общем случае .

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

Если матрица получена из матрицы путем замены всех вектор-строк на вектор-столбцы, т.е. , то ее называют транспонированной матрицей и обозначают .

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

называется единичной и обладает следующими свойствами:

· для любой матрицы .

· для любого вектора .

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

· Если для матриц и существуют обратные матрицы, то существует и обратная матрица для их произведения и .

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

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

Геометрические преобразования (перенос, масштабирование, вращение)

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

· перемещение (параллельный перенос);

· изменение размеров (масштабирование);

· повороты вокруг некоторой точки на плоскости или некоторой оси в пространстве (вращение).

В дальнейшем мы часто будем отождествлять точки пространства с радиус-вектором, определяемым этой точкой.

Сначала рассмотрим преобразования на плоскости, или двумерные преобразования.

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

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

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

Рис. 3.5. Масштабирование с сохранением углов

Рис. 3.6. Масштабирование с искажением углов

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

После поворота вектор будет составлять угол , а новые координаты точки будут определяться соотношениями

(3.7)

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

Рис. 3.7. Поворот на плоскости

Рис. 3.8. Поворот в пространстве

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

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

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

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

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

(3.8)

Двумерный случай выглядит подобным же образом.

Поворот на плоскости можно осуществить с помощью матрицы

(3.9)

И наконец, повороты в пространстве относительно осей координат можно выполнить с помощью трех матриц вращения

(3.10)

Нетрудно проверить, что для матриц вращения справедливо соотношение

Для выполнения последовательных поворотов вокруг осей на углы можно создать матрицу преобразования путем перемножения трех матриц:

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







Дата добавления: 2015-10-01; просмотров: 519. Нарушение авторских прав; Мы поможем в написании вашей работы!




Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...


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


Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...


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

ЛЕЧЕБНО-ПРОФИЛАКТИЧЕСКОЙ ПОМОЩИ НАСЕЛЕНИЮ В УСЛОВИЯХ ОМС 001. Основными путями развития поликлинической помощи взрослому населению в новых экономических условиях являются все...

МЕТОДИКА ИЗУЧЕНИЯ МОРФЕМНОГО СОСТАВА СЛОВА В НАЧАЛЬНЫХ КЛАССАХ В практике речевого общения широко известен следующий факт: как взрослые...

СИНТАКСИЧЕСКАЯ РАБОТА В СИСТЕМЕ РАЗВИТИЯ РЕЧИ УЧАЩИХСЯ В языке различаются уровни — уровень слова (лексический), уровень словосочетания и предложения (синтаксический) и уровень Словосочетание в этом смысле может рассматриваться как переходное звено от лексического уровня к синтаксическому...

Приготовление дезинфицирующего рабочего раствора хлорамина Задача: рассчитать необходимое количество порошка хлорамина для приготовления 5-ти литров 3% раствора...

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

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

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия