Отлично!
Это напоминает мне о моих первых шагах в IT. Как сильно мне нравились все эти простые математические вещи, но это заставляло вещи двигаться на экране. :)
На самом деле вам нужна линейная интерполяция. Существуют другие виды интерполяции, и некоторые API предлагают хорошую инкапсуляцию для концепции, но вот основная идея, и вам часто понадобятся эти вещи:
Вы должны переписать свой путь
y = f (x )
как функция времени:
во время 0 элемент будет в начальной позиции, во время 1 он достигнет конца. Затем вы увеличиваете время (t) по своему желанию (например, 0,001 каждые мс).
Итак, вот формула для простого линейного пути:
x = xstart + (xend-xstart) * t
y = ystart + (yend-ystart) * t
когда t изменяется, ваш объект будет просто линейно двигаться по траектории, линейно скорость будет постоянной на всем пути. Например, вы можете представить какое-то притяжение гравитации в конце, это будет моделироваться квадратичным ускорением (t ^ 2 вместо t) ...
С уважением,
Stephane