View all expressions
Motion

Loop Path

Loops a property's animation, optionally creating a "ping-pong" effect where the animation plays forward and backward alternately.

try{
timeStart = thisProperty.key(1).time;
duration = thisProperty.key(thisProperty.numKeys).time-timeStart;
pingPong = false;
quant=Math.floor((time-timeStart)/duration);
if (quant<0) quant = 0
if (quant%2 == 1 && pingPong == true) {
t = 2*timeStart+ (quant+1) *duration - time;
}
else{ t = time-quant*duration;
}
}
catch(err){
t = time;
} thisProperty.valueAtTime(t)
Loop Path

Practical use case

Loops a property's animation, optionally creating a "ping-pong" effect where the animation plays forward and backward alternately.

Check out similar expressions

Data-driven video workflows for After Effects are easier with Plainly.

a mesh of elegant lines transparent image