Как подобрать формулу? Всем привет
Стоит задача анимации блока
Есть расстояние S, которое блок должен пройти в обоих направлениях
То есть блок должен вернутся в исходное положение
Есть скорость V, которая плавно уменьшается до нуля ( cubic-bezier.com/#0,.67,.3,1 )
Проблема в том что в школе плохо учил математику и теперь не могу придумать как правильно вычислять скорость по пути движения, чтобы успеть пройти S туда-сюда и не встать по середине пути
Великие математики, помогите пожалуйста!

21 Авг 2019 в 06:11
166 +1
1
Ответы
1

Привет! Для решения этой задачи вам может помочь использование уравнения равноускоренного движения.

Исходные данные:

Расстояние SСкорость VУскорение a (можно считать его равным const)

По формуле равноускоренного движения:
S = Vt + (at^2)/2

где t - время движения, которое необходимо найти. Из условия задачи мы знаем, что блок проходит расстояние S в обоих направлениях, поэтому время движения в одну сторону составляет t/2.

Также, учитывая, что скорость уменьшается до нуля с использованием заданной плавности функции (например, cubic-bezier), необходимо также учитывать изменение скорости со временем.

Можно попробовать итерационным методом:

Выбрать начальное значение tВычислить скорость на момент времени t (используя cubic-bezier)Проверить, достигнуто ли расстояние S за время tЕсли нет, скорректировать значение t и повторить шаги 2-3

Таким образом, вы сможете подобрать формулу для расчета времени движения блока, чтобы он успел пройти расстояние S в обоих направлениях и вернуться в исходное положение.

20 Апр 2024 в 13:22
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир