Имеется треугольник ABC с координатами вершин: A (2,3), B (2,7), C (5,3).
1) Выполнить 3 основных аффинных преобразования с использованием формул:
- поворот треугольника на угол π;
- сжатие треугольника α==0,5;
- перемещение треугольника на вектор с координатами (6;5).
2) Выполнить следующие аффинные преобразования с использованием матричной записи:
- поворот треугольника на угол π/2 вокруг точки с координатами (3, 1);
- растяжение треугольника α=β=2 относительно точки с координатами (3,1).
Исходный треугольник и треугольники, полученные в результате преобразований, в обязательном порядке изображать графически в одной координатной системе.
Ответы
Ответ:
1)
- Поворот на угол π:
Поворот на угол π вокруг начала координат можно выполнить с помощью матрицы поворота:
[cos(π) -sin(π)]
[sin(π) cos(π)]
=
[-1 0 ]
[ 0 -1 ]
Матрица поворота для поворота вокруг произвольной точки (x0, y0) выглядит следующим образом:
[cos(θ) -sin(θ) x0(1-cos(θ))+y0(sin(θ)]
[sin(θ) cos(θ) y0(1-cos(θ))-x0(sin(θ))]
где θ - угол поворота.
Таким образом, для поворота на угол π вокруг точки (3,1) сначала нужно переместить треугольник на вектор (-3,-1), выполнить поворот вокруг начала координат, а затем снова переместить на вектор (3,1).
Точки треугольника после каждого преобразования:
A' (-1,2)
B' (-1,-2)
C' (-4,2)
- Сжатие треугольника α=0,5:
Для сжатия треугольника в α раз нужно умножить его координаты на матрицу масштабирования:
[α 0]
[0 α]
Точки треугольника после сжатия в 0,5 раз:
A' (1,1.5)
B' (1,3.5)
C' (2.5,1.5)
- Перемещение треугольника на вектор с координатами (6;5):
Для перемещения треугольника на вектор (x,y) нужно добавить x к координате x каждой точки треугольника, и y к координате y каждой точки треугольника.
Точки треугольника после перемещения на вектор (6,5):
A' (8,8)
B' (8,12)
C' (11,8)
2)
- Поворот на угол π/2 вокруг точки с координатами (3, 1):
Матрица поворота для поворота на угол θ вокруг точки (x0, y0) выглядит следующим образом:
[cos(θ) -sin(θ) x0(1-cos(θ))+y0(sin(θ)]
[sin(θ) cos(θ) y0(1-cos(θ))-x0(sin(θ))]
Для поворота на угол π/2 вокруг точки (3,1) матрица поворота будет:
[ 0 1 2]
[-1 0 4]
Точки треугольника после поворота на угол π/2 вокруг точки (3,1):
A' (0,1)
B' (4,1)
C' (0,4)
- Растяжение треугольника α=β=2 относительно точки с координатами (3,1):
Матрица растяжения прямоугольника относительно точки (x0,y0) и соответствующих коэффициентов растяжения α и β выглядит следующим образом:
[α 0 x0(1-α)]
[0 β y0(1-β)]
Для растяжения вдоль обеих осей в 2 раза относительно точки (3,1) матрица растяжения будет:
[2 0 -3]
[0 2 -1]
Точки треугольника после растяжения в 2 раза относительно точки (3,1):
A' (−2,1)
B' (4,5)
C' (−1,1)
Графическое изображение (каждый треугольник увеличен для наглядности):
![image.png](attachment:image.png)