ВУЗы и колледжи

Описать симметрию (отражение) относительно прямой y=kx (аффинные преобразования)

Найдем матрицу Мₛ преобразования S в стандартном базисе.
Пусть Pᵥ - ортогональная проекция на прямую αv. (Рисунок 1)
Отражение S(x) вектора х можно легко выразить через Pᵥ(х) (Рисунок 2)
Столбцы матрицы Мₛ - координатные столбцы образов базисных векторов (1,0) , (0,1)
Пернебай Кулыбеков
Пернебай Кулыбеков
21 834
Лучший ответ
Речь идет о компьютерной графике?
Марина Черных
Марина Черных
70 113
Екатерина Диденко один из вопросов к экзамену по фракталам, не знаю, относить это к копмпьютерной графике или нет)
Уравнение вашей прямой:
- k x + y = 0
Тогда перпендикуляр к ней:
n = {-k; 1}
Стартуем с какой-то точки:
r0 = {x0, y0}
Смещаемся вдоль нормали:
r1 = r0 + s n
или:
{x1, y1} = {x0, y0} + s {-k; 1}
или:
{x1, y1} = {x0 - s k, y0 + s}
Посмотрим, какое надо взять s, чтобы r1 оказалась на прямой:
y1 = k x1
y0 + s = k (x0 - s k)
(1 + k^2) s = k x0 - y0
s = (k x0 - y0) / (1 + k^2)
А чтобы найти отражение точки r0 отн-но прямой, нужно сместиться еще на одну такую же величину:
{x1, y1} = {x0; y0} + 2 {-k; 1} (k x0 - y0) / (1 + k^2)
Получаем преобразование для отражения точки отн-но прямой:
x1 = x0 - 2 k (k x0 - y0) / (1 + k^2)
y1 = y0 + 2 (k x0 - y0) / (1 + k^2)

Похожие вопросы