Афинные преобразования на плоскости
Дан набор точек на плоскости (x,y) реализовать поворот заданой точки (x0,y0) на угол alpha
Язык C#
x, y - координаты некоторой точки
x0, y0 - координаты точки, задающей ось вращения
alpha - угол вращения
Тогда новые координаты точки (x, y) после поворота относительно (x0, y0) на alpha будут:
x' = x0 + (x-x0)*cos(alpha) - (y-y0)*sin(alpha);
y' = y0 + (x-x0)*sin(alpha) + (y-y0)*cos(alpha);
Функция cos имеется в System.Math
Если нужны какие-то конкретные примеры кода, то описывайте поточнее как поставлена задача. Может быть Вам нужно консольное приложение, а может - графическое на GDI+, а может - считывающее данные из текстбоксов.
Задачка немного мутноватая.
в моём предыдущем посте поворачивается (х,у) относительно (х0,у0) на угол альфа.
Вобщем-то точку относительно себя тоже можно повернуть ... только она останется там же где и была.
Неправда. По определению поворот - это движение, при котором по крайней мере одна точка плоскости (пространства) остаётся неподвижной.