Перемещение шарика по траектории заданной функцией при нажатии по кнопке

Нужно сделать проект, в котором происходит перемещение "шарика" по траектории заданной функцией y=sinx (окрашенного круга), при нажатии по кнопке.Окружность должна двигаться по компоненту Panel вправо и при достижении его правая граница должна появляться у левой границы и снова двигаться вправо.