Синус и косинус t являются соответственно координатами y и x точки на окружности, образующей угол t с осью x. Нет необходимости в этом в прямоугольнике! Прямоугольник состоит из четырех линий. Если tидет от 0к 1, он достигает точки (px,py)в t==0и к (qx,qy)в t==1с помощью строки, заданной:
(l(x),l(y)) = (t*qx + (1-t)*px, t*qy + (1-t)*py)
если вместо 0и 1вы переходите от времени t0к t1, вы можете сначала нормализовать время, а затем применить приведенную выше формулу.
(l(x),l(y)) = ( ((t-t0)/(t1-t0))*qx + ((t1-t)/(t1-t0))*px, ((t-t0)/(t1-t0))*qy + ((t1-t)/(t1-t0))*py )
Теперь, для вашего прямоугольника, разделите на четыре случая ifпо каждому ребру, которое покрывает один промежуток времени, и примените движение линии.
Обратите внимание, что если ваш прямоугольник выровнен по оси, у вас всегда будет либо значение x, либо значение y, которое является постоянным. Например, для t между 0и a/4(и предположим (X, Y) внизу слева),
(l(x),l(y)) = ((4*t/a)*(X+Width) + (1-4*t/a)*(X), Y+Height)
Что также равно:
(l(x),l(y)) = (X + (1-4*t/a)*(Width), Y+Height)