Автор работы: Пользователь скрыл имя, 02 Апреля 2013 в 13:50, курсовая работа
В данной курсовой работе рассмотрена тема “ Повороты системы координат на плоскости”
”. Работа состоит из теоретической и практической частей.
В теоретической части курсовой работы представлены две главы. В первой главе описаны геометричес
Введение
Глава I. Геометрические преобразования двухмерных
Глава II. Поворот системы координат произвольный угол a
Заключение
Список использованной литературы
МИНИСТЕРСТВО
ОБРАЗОВАНИЯ И НАУКИ
РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное бюджетное
образовательное учреждение
высшего профессионального образования
«Чувашский
государственный университет
ФАКУЛЬТЕТ РАДИОТЕХНИКИ И ЭЛЕКТРОНИКИ
Кафедра высшей математики
КУРСОВАЯ РАБОТА
на тему:
ПОВОРОТы СИСТЕМЫ КООРДИНАТ на плоскости
Выполнил: студент гр. РTЭ 31-12
Дудусов А.А.
Проверил: профессор Качевский Д.Н
Содержание:
Введение
В данной курсовой работе рассмотрена тема “ Повороты системы координат на плоскости”
”. Работа состоит из теоретической и практической частей.
В
теоретической части курсовой
работы представлены две главы.
Следующая глава раскрывает поворот системы координат на произвольный угол a .
Практическая
часть курсовой работы
Глава 1. Геометрические преобразования двухмерных
Рассмотрим элементарные геометрические преобразования двухмерных, применяемые в машинной графике. Эти преобразования основаны на матричных операциях.
Рассмотрим преобразования на плоскости - перенос, масштабирование, поворот.
Точку на плоскости можно перенести в новые позиции путем добавления к координатам этих точек констант переноса.
х' = х + Dx у' = у + Dy
Определяем векторы строки
Р=[х,у] Р'=[х',у'] T=[Dx,Dy]
Сдвиг точки в векторной форме
[x',y']=[x,y]+[Dx,Dy]
Или более
кратко
Объект
можно перенести, применяя это выражение
к каждой точке объекта. Однако для
отрезка достаточно применить этот
процесс только к его концевым
точкам. Это справедливо и для
масштабирования и для
Масштабирование
Для масштабирования объекта каждую точку необходимо растянуть в Sx раз по оси х и в Sy раз по оси у.
х' = х . Sx у' = у . Sy
Определяя
S= |
|
или P'=P . S
Отметим, что масштабирование производится относительно начала координат.
Масштабирование относительно других точек рассмотрим ниже.
Если Sx != Sy неоднородное масштабирование.
Если Sx = Sy однородное масштабирование.
Поворот
Положительным считаются углы, измеряемые против движения часовой стрелки от X к Y.
В случае
отрицательных углов можно
cos(-θ)= cos(θ)
sin(-θ)=-sin(θ)
Поворот производится относительно начала координат
Однородные координаты
Преобразования переноса, масштабирования и поворота в матричной форме записываются как
P' = P + T
P' = P . S
P' = P . R
К сожалению, перенос в отличие от других реализуется с помощью сложения. Хотелось бы преобразования представить в такой форме, чтобы все эти элементарные преобразования можно было бы представить в одной форме - в виде произведений матриц. Тогда удастся совместить все три вида преобразований в виде умножения на одну результирующую матрицу геометрических преобразований.
Это можно сделать, представив точки в однородных координатах. Однородные координаты были введены в геометрии.
Точка Р(х,у) записывается как P(Wx,Wy,W) |
Матричное представление двумерных преобразований
Уравнение переноса
Пользуясь однородными координатами можно записать в виде однотипных матричных выражений все три вида преобразований.
|1 0 0 |
[x'y'1]=[x,y,1] |0 1 0 |
|Dx Dy 1 |
ил Р' =Р . Т(Dx ,Dy )
Если
перенести точку на (Dx1,Dy1),
| 1 0 0 |
| 0 1 0 |
|Dx1+Dx2 Dy1+Dy2 1 |
Уравнение масштабирования
|Sx 0 0 |
[x'y'1]=[x,y,1]|0 Sy 0 |
|0 0 1 |
или P' = P . S(Sx ,Sy)
Последовательные масштабирования приводят к матрице
|Sx1Sx2 0 0 |
| 0 Sy1Sy2 0 |
| 0 0 1 |
Уравнение поворота
| cosθ sinθ 0 |
[x'y'1]=[x,y,1]|-sinθ cosθ 0 |
| 0 0 1 |
или P' = P . R(θ)
Композиция двумерных преобразований
Более эффективно к точке применить одно совмещенное преобразование (одно умножение на матрицу), чем ряд преобразований друг за другом.
Рассмотрим, например, поворот объекта относительно некоторой произвольной точки P(x1,y1). Для этого необходимо выполнить 3 элементарных преобразования:
Результирующее преобразование имеет вид:
| 1 0 0|| cosθ sinθ 0 ||1 0 0|
| 0 1 0||-sinθ cosθ 0 ||0 1 0| =
|-x1-y1 1|| 0 0 1 ||x1 y1 1|
| cosθ sinθ 0 |
= | -sinθ cosθ 0 |
|x1(1-cosθ)+y1 sinθ y1(1-cosθ)+x1 sinθ 1 |
Используя аналогичный подход, можно промасштабировать объект относительно произвольной точки:
Подобным образом можно делать более сложные операции: например - необходимо промасштабировать, повернуть и расположить в заданном месте домик.
Вопросы эффективности
Композиция наиболее общего вида из операций R, S и Т имеет вид
|r11 r12 0 |
|r21 r22 0 |
|tx ty 1 |
Верхняя часть матрицы М размером 2х2 является объединением матрицы поворота и масштабирования, в то время как tx и ty описывают суммарный перенос.
Для вычисления произведения двух матриц размером 3х3 требуется 9 операций умножения и 6 операций сложения. Однако, структура последнего столбца позволяет упростить выполняющиеся действия:
x' =x . r11 + y . r21 + tx
y' =x . r12 + y . r22 + ty
Это существенно упрощает процесс, поскольку остается 4 операции умножения и 4 операции сложения.
Глава 2. Поворот системы координат на произвольный угол a
Под поворотом осей координат понимают такое преобразование координат, при котором обе оси поворачиваются на один и тот же угол, а начало координат и масштаб остаются неизменными.
Пусть новая система O1x1y1 получена поворотом системы Оху на угол α.
Пусть Μ произвольная точка плоскости, (х;у) — ее координаты в старой системе и (х';у') — в новой системе.
Введем две полярные системы координат с общим полюсом О и полярными осями Ох и Οx1 (масштаб одинаков). Полярный радиус r в обеих системах одинаков, а полярные углы соответственно равны α + j и φ, где φ — полярный угол в новой полярной системе.
По формулам перехода от полярных координат к прямоугольным имеем
Но rcosj = х' и rsinφ = у'. Поэтому
Полученные формулы называются формулами поворота осей. Они позволяют определять старые координаты (х; у) произвольной точки Μ через новые координаты (х';у') этой же точки М, и наоборот.
Если новая система координат O
выражающие старые координаты х и у произвольной точки через ее новые координаты х' и у'.
Данная курсовая работа раскрывает тему о поворотах системы координат на плоскости. Ее можно использовать как учебное пособие по приведенной теме. А практическая часть работы, представленная несколькими примерами, может служить примером решения типичных задач.
Список использованной литературы:
Приложение:
Дан треугольник , вершины которого имеют следующие координаты: , , . Выполнить преобразование
Пример 1
отражение относительно оси ординат ( ).
Таким образом, после преобразования координаты точек будут следующими: , , .
Ниже с теми же исходными данными аналогично представлены следующие преобразования:
Пример 2
– отражение относительно оси абсцисс ( );
Пример 3
– отражение относительно точки ;
Пример 4
– отражение относительно прямой ;
Пример 5
– поворот вокруг точки на угол ;
Пример 6
– поворот точек – вершин треугольника на угол 60о вокруг точки .
Преобразование осуществляем за три действия:
1) переход к новой системе координат с центром в точке : , . Тогда координаты , точек относительно новой системы координат будут следующими: , , .
2) осуществление преобразования (поворот на угол 60о вокруг точки ):
3) переход к старой системе координат : ,
Пример 7
Т7 – масштабирование, или сжатие (растяжение) к точке с коэффициентами сжатия (растяжения) вдоль осей координат и :
– пропорциональное растяжение (гомотетия с центром в начале координат); в данном случае ; для примера рассмотрим , поэтому это будет прямая гомотетия (так как ) и осуществляется равномерное растяжение (так как ):
– непропорциональное масштабирование
(можно рассматривать как