In this article, I'll cover the issues involved with expression speed and frequency control, then present some practical solutions to the problem. The good news is that there are ways to work around the problems. It may seem like it should be, but it definitely is not.
The bottom line is that in the world of expressions, controlling speed or frequency is not a simple task. Instead of gradually speeding up, holding steady, then slowing down, the rotation starts at a fairly constant rate, slows down in the middle, and then actually backs up at the end (see sidebar movie). You keyframe the slider to go from zero to 360, hold at 360, then go back to zero. Spd = effect('Slider Control')('Slider') This is the new version of the expression: Your idea is to connect variable spd to a Slider Control and keyframe the slider value. Now you decide that you want to be able to manipulate the rotation speed.
So far so good-it works as expected (see sidebar if you're wondering about the expression's use of value). This is how the expression looks, set up to rotate at 360 degrees (one revolution) per second: You have added a variable named spd to let you set the rotation speed. Imagine that you have created an expression for the Rotation property, based on the global attribute time, which generates a nice smooth rotation.