0 / 0 / 0
Регистрация: 01.02.2017
Сообщений: 1
|
|
1 | |
Матрица преобразования и точки01.02.2017, 10:18. Показов 4296. Ответов 37
Метки нет (Все метки)
Не по теме: Если не в той подтеме написала, не ругайте Добрый день. Нужна ваша помощь. Мне нужно решить задания, а я не знаю как их сделать: 1.задано точку (1, 2). найти матрицу преобразования, переводит заданную точку в точку (1, -2) 2.задано точку (1, 3). найти матрицу преобразования, переводит заданную точку в точку (-1, 3) 3.записать матрицу преобразования, которая будет отображать любую точку симметрично относительно оси Х 4.записать матрицу преобразования, которая будет отображать любую точку симметрично относительно оси В Первых два я так поняла нужно через матрицу маштабирования делать или повороту. Но как решить где нужно каким делать я не знаю. А от как 3-4 я незнаю сделать.
0
|
01.02.2017, 10:18 | |
Ответы с готовыми решениями:
37
Найти работу силы по перемещению точки вдоль участка кривой от точки до точки Матрица оператора линейного преобразования Матрица.Найти собственные значения и векторы преобразования Задана матрица линейного преобразования A трехмерного пространства |
02.02.2017, 13:51 | 2 |
Я считаю, что нужно делать через матрицу переноса. У вас есть точка (x, y), которую нужно перенести в точку (x', y'). Причём все три задачи решаются с помощью матрицы переноса. Вам нужно её вывести.
0
|
03.02.2017, 13:28 | 4 |
Все 4 задания об одном и том же: о переносе точки. Задания 1 и 3 - это перенос точки относительно оси Y. Задания 2 и 4 - это перенос точки относительно оси X. Причём 1 и 2 - перенос точки с указанными координатами, а 3 и 4 - перенос точки в обобщённом виде.
От вас требуется вывод матрицы переноса, что я опишу ниже. Если вы не поймёте как выводится матрица переноса, то подставлять в уже готовую матрицу - это бестолковая затея. В математике нужно понимать, что откуда берётся, то есть выводится, тогда задачи решены. Вывод матрицы переноса И так. У нас есть точка (x, y). Нам нужно получить (x', y'). Уравнения записываются так: Код
x' = x + Tx y' = y + Ty Кликните здесь для просмотра всего текста
Обозначим уравнения выше единицей в скобках (1) В матричном виде уравнения (1) записываются так в обобщённом виде: Код
|х'| = |a b| |x| |y'| |c d| |y| Код
x' = a * x + b * y y' = c * x + d * y (2) Код
|х'| |a b с| |x| |y'| = |d e f| |y| |1 | |g h k| |1| Код
x' = a*x + b*y + c*1 y' = d*x + e*y + f*1 1 = g*x + h*y + k*1 a = 1, b = 0, c = Tx d = 0, e = 1, c = Ty g = 0, h = 0, k = 1 (тут должно просто выполняться равенство 1=1) Подставим значения коэффициентов в уравнение (2) (3): Код
|х'| |1 0 Tx| |x| |y'| = |0 1 Ty| |y| |1 | |0 0 1 | |1| Код
|1 0 Tx| |0 1 Ty| |0 0 1 | (x, y) -> (x', y') x' = x + Tx y' = y + Ty 1) (1, 2) -> (1, -2) 1 = 1 + Tx -2 = 2 + Ty Tx = 1 - 1 = 0 Ty = -2 + (-2) = -4 Ответ: Код
|1 0 0| |0 1 -4| |0 0 1| -1 = 1 + Tx 3 = 3 + Ty Tx = -1 + (-1) = -2 Ty = 3 - 3 = 0 Ответ: Код
|1 0 0 | |0 1 -2y| |0 0 1 | x' = -x y' = y x' = x + Tx y' = y + Ty -x = x + Tx y = y + Ty Tx = -x + (-x) = -2x Ty = y - y = 0 Ответ: Код
|1 0 -2x| |0 1 0 | |0 0 1 |
0
|
03.02.2017, 14:41 | 6 |
Вы меня натолкнули на мысль, что все 4 задачи можно так же решить с помощью матрицы масштабирования, либо матрицы поворота. Матрицу поворота дольше выводить. А вот матрицу масштабирования даже быстрее, чем матрицу переноса.
Выводить матрицу масштабирования не буду. Покажу конечный результат: Код
|Sx 0 0| |0 Sy 0| |0 0 1| x' = Sx * x y' = Sy * y Уравнения в матричном виде: Код
|х'| |Sx 0 0| |x| |y'| = |0 Sy 0| |y| |1 | |0 0 1| |1| (x, y) -> (x', y') 1) (1, 2) -> (1, -2) 1 = Sx * 1 -2 = Sy * 2 Sx = 1 Sy = -1 Ответ: Код
|1 0 0| |0 -1 0| |0 0 1| -1 = Sx * 1 3 = Sy * 3 Sx = -1 Sy = 1 Ответ: Код
|-1 0 0| | 0 1 0| | 0 0 1| x' = x y' = -y x = Sx * x -y = Sy * y Sx = 1 Sy = -1 Ответ: Код
|1 0 0| |0 -1 0| |0 0 1| x' = -x y' = y -x = Sx * x y = Sy * y Sx = -1 Sy = 1 Ответ: Код
|-1 0 0| | 0 1 0| | 0 0 1|
1
|
Диссидент
27706 / 17322 / 3812
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
03.02.2017, 14:46 | 7 |
А это что за ось такая? Я, прочтя мельком, решил, что это какая-то произвольная прямая. Но, впрочем, это не важно. Объединяя все результаты, можно сказать, что все 4 задачи решены
0
|
505 / 465 / 100
Регистрация: 30.01.2017
Сообщений: 1,371
|
|
03.02.2017, 14:46 | 8 |
8Observer8, зачем вы выписываете матрицы третьего порядка? Задача решается в двумерном пространстве.
1
|
4527 / 3521 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
|
|
03.02.2017, 14:58 | 10 |
8Observer8, вы зарапортовались. При переносе каждая точка p переходит в точку p + v, где v — вектор переноса, один и тот же для всех точек. В координатах — (x, y) переходит в точку (x + a, y + b), где a и b — числа, одни и те же для всех x и y (а не Tx, Ty). В виде умножения на матрицу перенос на ненулевой вектор нельза записать (хотя бы потому, что умножение на матрицу переводит (0, 0) в себя, а ненулевой перенос — нет).
0
|
03.02.2017, 15:05 | 11 |
Да, а Tx и Ty - это компоненты этого вектора. Я всё правильно написал.
Добавлено через 2 минуты Я забыл выложить решение задачи 3 через матрицу переноса: 3) Симметрия относительно оси X x' = x y' = -y x' = x + Tx y' = y + Ty x = x + Tx -y = y + Ty Tx = x - x = 0 Ty = -y + (-y) = -2y Ответ: Код
|1 0 0 | |0 1 -2y| |0 0 1 |
0
|
4527 / 3521 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
|
|
03.02.2017, 15:24 | 12 |
Хотя бы Tx и Ty тогда чтобы не путалось с координатами точки (x, y). А вообще, Tx люди воспринимают как «оператор T, применённый к вектору x».
Но это мелочи. Вектор переноса для всех точек один и тот же, а у вас почему-то T_x, T_y зависят от x и y.
0
|
505 / 465 / 100
Регистрация: 30.01.2017
Сообщений: 1,371
|
|
03.02.2017, 15:39 | 13 |
Я бы ещё спросил, зачем тут вообще переносы. Постановка задачи не очень внятная, но, скорее всего, надо предъявить линейные преобразования. По крайней мере, задача решается одними линейными преобразованиями, без переносов.
0
|
03.02.2017, 16:10 | 14 |
Я показал, как решить задачу с помощью двух линейных преобразований: транспонирование и масштабирование. Мы получили два оператора в виде матриц, которые применяются к вектору.
Я же написал, что такое Тx и Ty: Даже показал на рисунке:
0
|
505 / 465 / 100
Регистрация: 30.01.2017
Сообщений: 1,371
|
|
03.02.2017, 16:16 | 15 |
1
|
505 / 465 / 100
Регистрация: 30.01.2017
Сообщений: 1,371
|
|
03.02.2017, 16:33 | 17 |
А что за линейное преобразование "транслирование"? Если вы имеете в виду параллельный перенос, так он не является линейным преобразованием.
0
|
03.02.2017, 17:13 | 18 |
Я занимаюсь программированием игр и применил этот термин оттуда.
Умножение матрицы на вектор и получение нового вектора не является линейным преобразованием? Значит, это по-вашему нелинейное проебразование? Или как по-другому тогда назвать такое проеобразование? Я хорошо знаю линейную алгебру. Линейно!
0
|
Диссидент
27706 / 17322 / 3812
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
03.02.2017, 17:31 | 19 |
Господа! У меня такое ощущение, что вы говорите о разных вещах. Есть преобразование линейного пространства векторов. Оно задается матрицей 2х2. И есть преобразование точек плоскости. Которая (точки плоскости) не является линейным пространством. И там есть повороты (задаются матрицей 2х2) и сдвиги. Все это вместе можно задать матрицей 3х3.
http://studentpmr.ru/?p=8149 Добавлено через 3 минуты Вот еще https://ru.wikipedia.org/wiki/... 0%B8%D0%B5
0
|
505 / 465 / 100
Регистрация: 30.01.2017
Сообщений: 1,371
|
|
03.02.2017, 17:40 | 20 |
Байт, плоскость всё-таки традиционно рассматривается как линейное пространство, точки её отождествляются с радиус-векторами. Если мы хотим сдвигов, то о линейной структуре, конечно, придётся забыть. Но тогда нельзя говорить и о линейных преобразованиях, а надо - об аффинных. А 8Observer8, похоже, разницы между линейными и аффинными не понимает.
Добавлено через 2 минуты (которые в поставленной задаче нужны только в том случае, если загадочная ось В не проходит через начало координат, то есть является аффинным подпространством, а не линейным). Добавлено через 1 минуту Параллельный перенос не задается умножением вектора координат на матрицу. Это аффинное преобразование, а не линейное.
0
|
03.02.2017, 17:40 | |
03.02.2017, 17:40 | |
Помогаю со студенческими работами здесь
20
Выяснить тип и определить неподвижные точки изометрического преобразования Разработать функцию преобразования координат точки Взаимные преобразования "Матрица смежности" <-> "Матрица инцидентности" Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |