Причина, по которой это происходит, заключается в том, что вы устанавливаете animationRepeatAutoreverses после установки преобразования.Таким образом, каждый раз, когда фигура идет вверх, это считается только 1 повторение.Принимая во внимание, что аспект вращения уже посчитал бы это как 2 повторения.
Другими словами, форма, перемещающаяся вниз и назад, составляет 1 повторение и занимает 2 секунды.Теперь, поскольку вращение не было установлено на автореверс, вращение займет всего 1 секунду, чтобы завершить 1 повторение.Таким образом, к моменту восстановления формы часть вращения уже сделала 2 повторения.Это означает, что вращение закончится через 100 секунд, а анимация вверх и вниз закончится через 200 секунд.
Надеюсь, я смог это четко объяснить.