@savoid

Как выполнить алгоритм ротации 2D треугольника Java?

Необходимо построить треугольник, и при нажатии на кнопку он должен вращаться на 30 градусов. Я примерно расписал для себя алгоритм, но реализовать у меня не получается.

1) нарисовать 3 точки и соединить их линиями
2) очистить экран, т.е. закрасить все в цвет фона
3) высчитать новые координаты для заданных 3-х точек треугольника
4) отобразить эти точки с новыми координатами на экране и соединить их линиями
  • Вопрос задан
  • 174 просмотра
Пригласить эксперта
Ответы на вопрос 2
leahch
@leahch
3D специалист. Dолго, Dорого, Dерьмово.
Так в чем проблема? AffineTransform www.java2s.com/Tutorials/Java/Graphics_How_to/Tran...
Ответ написан
Комментировать
zagayevskiy
@zagayevskiy Куратор тега Java
Android developer at Yandex
Координаты всегда начинаются с 0. Рисовать ты, очевидно, будешь не в начале координат. Ты должен определиться, вокруг какой точки ты будешь вращать треугольник. Затем переместить эту точку в начало координат, и такой же трансформацией перенести вершины треугольника. Затем повернуть точки, используя матрицу поворота. Точка, вокруг которой ты вращаешь, при этом, останется в начале координат. Затем нужно выполнить обратный перенос.
Ссылку на аффинные преобразования тебе дали, алгоритм я тебе расписал. Осталось закодить.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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