Сообщение от demon112
чёт так я и не допетрил...
|
^___^
Смотри формулу поворота точки в аттаче
По сути тебе нужно взять центр прямоугольника (середина диагонали)
center_x = (x1 + x3) / 2
center_y = (y1 + y3) / 2
и по формуле повернуть все вершины
x'N = center_x + (xN - center_x) * cos(angle) - (yN - center_y) * sin(angle)
y'N = center_y + (xN - center_x) * sin(angle) + (yN - center_y) * cos(angle)
тут надо немного оптимизировать - синус и косинус общий на все точки, ну и диагонали (xN - center_x) и (yN - center_y) кешировать