Private Sub AnimateTo(MoveFrom As Int, MoveTo As Int, Duration As Int)
Private CurrentPosition As Int
Private BeginTime As Long = DateTime.Now
CurrentPosition = MoveTo
Dim tempValueA As Float
Do While DateTime.Now < BeginTime + Duration
tempValueA = CallAnimation(DateTime.Now - BeginTime, MoveFrom, MoveTo - MoveFrom, Duration)
' tempValueA = CubicTimeEaseInOut(DateTime.Now - BeginTime, MoveFrom, MoveTo - MoveFrom, Duration)
DrawCircle(tempValueA)
Sleep(5)
If MoveTo <> CurrentPosition Then Return 'will happen if another update has started
Loop
DrawCircle(CurrentPosition)
End Sub