матрица поворота



Матрица поворота в двумерном пространстве

Автор Владимир Кузьмин задал вопрос в разделе Другие языки и технологии

поворот в двумерном пространстве delphi. вопрос внутри ++++ и получил лучший ответ

Ответ от Ringo-chan[гуру]
владимир неужели мой ответ был недостаточно полон? если вы тупо умножите эти координаты на матрицу поворота прямоугольник повернется вокруг начала координат
у вас прямоугольник размерами 20x20. значит координаты его вершин относительно точки пересечения диагоналей
(-10,-10) (-10,10) (10,10) (10,-10)
вот их и нужно умножать на матрицу поворота чтобы получить "наклоненный" прямоугольник
матрица поворота на угол fi против часовой стрелки выглядит так
cos fi -sin fi
sin fi cos fi
берете точки и каждую умножаете на эту матрицу - получите координаты вершин повернутого прямоугольника опять же относительно точки пересечения диагоналей
при построении к каждой точке прибавьте глобальные координаты точки пересечения диагоналей (в вашем примере +(20,20))
может быть вы не знаете как умножать матрицы
Rot(fi) * (x,y) = (x*cos fi - y*sin fi, x*sin fi + y*cos fi)
Ringo-chan
Мудрец
(17774)
--x,y - это координаты одной из четырех точек полигона?
а разве у вас есть другие точки? )
--и это делать с каждой точкой да?
цитировать себя забавно: "берете точки и каждую умножаете на эту матрицу"

Ответ от Ivantrs[гуру]
вот это тебе поможет:

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: поворот в двумерном пространстве delphi. вопрос внутри ++++
Матрица поворота на Википедии
Посмотрите статью на википедии про Матрица поворота
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*