@Ladreawm

Кривая Безье и скорость анимации. Как построить зависимость изменения расположения от времени?

В моём случае используется любая кривая из кубических Безье, её характеристика не важна. Мне нужно построить зависимость для моего объекта перемещения между его расположением и временем aka продолжительностью анимации, опираясь на кривую Безье, как на скорость этого изменения. Перемещение имеет прямолинейную траекторию движения.

Как мне нужно изменять координаты объекта по X и Y в каждой итерации цикла по типу 'цикл(i < duration)', чтобы движение оставалось с прямой траекторией (по диагонали), но изменилась лишь скорость перемещения (анимации) ?

Или как это делает CSS, чтобы сделать аналогию на ЯП?
  • Вопрос задан
  • 539 просмотров
Решения вопроса 1
RAX7
@RAX7
Берем библиотеку https://github.com/gre/bezier-easing и интерполируем начальные и конечные координаты
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Griboks
@Griboks
Эта штука называется animation curve. Если просто, то ваша кривая - эта функция f(t). Соответственно, в вашем случае будет V=f(t); затем просто используете скорость в вашем уравнении движения. В общем случае: x+=Vx, y+=Vy. Ну а как найти проекцию вектора скорости на оси координат вы ещё со школы знаете.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы