Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Java Мобильная разработка (Android)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.11.2017, 20:37   #1
vars-cat
Новичок
Джуниор
 
Регистрация: 14.11.2017
Сообщений: 1
По умолчанию Вращение фигуры на canvas

Необходимо реализовать вращение квадрата и треугольника. Для треугольника нашёл формулу, но она почему-то неправильно работает.
После трансформации первые две координаты получаются равными, и треугольник исчезает.
Координаты треугольника: (300;300), (300;600), (600;450). Координаты центра тяжести: (400;450).

Код:
@Override public void Rotate()
    {
        double angle = 0.3;
 
        for(int i = 0; i < 3; i++)
        {
            double R = Math.sqrt(Math.pow(coordinates[i].x - centroid.x, 2) + Math.pow(coordinates[i].y - centroid.y, 2));
            coordinates[i].x = (int) (R * Math.cos(angle) + centroid.x);
            coordinates[i].y = (int) (R * Math.sin(angle) + centroid.y);
        }
    }
Результат: (572;503), (572;503), (591;509).
vars-cat вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вращение фигуры по заданной траектории schibeki Помощь студентам 12 28.02.2017 23:53
Lazarus Вращение фигуры Atherakhia Помощь студентам 0 25.05.2015 23:43
вращение фигуры missg Паскаль, Turbo Pascal, PascalABC.NET 4 15.04.2012 22:27
Вращение фигуры в 3D плоскости Владилена Помощь студентам 4 04.04.2012 11:26
Вращение фигуры vandrouny Общие вопросы Delphi 3 22.05.2010 21:16