They’re may be a more elegant way to do this but this will work. Start by setting your slider to 0(delete keyframes), and place your text at the 0 point(in my example that would be dead center at the title safe.) Make sure the anchor point of your text layer is in the dead center of the layer. You can use “Y” to move the layer’s anchor point and hold down cntl to get it to snap. Create another null and name it “Rotation”, open up the rotation parameter and this expression:
input = thisComp.layer("Control").effect("Slider Control")("Slider");
ease(input, 0,100, 0, 360)
What that does is look at your input slider and maps 0 to 100 to 0 to 360, so that when you input 50, it will rotate 180 degrees. Now Parent your text to the null “rotation”. Lastly, open up the text’s rotation, alt+click to start and expression, type in a “-” minus sign and then pickwhip to your rotation’s “rotation” property. This will make your text rotate the opposite of the null, so it’s always level.
I updated the example project, but made one change, I changed the ease expression to
ease(input, 0,100, 45, 360)*.5
That way the text starts a little bit into pie chart, and for every percent increase only rotates half as much. It, keeps the text relatively in the middle of the pie.
7474_percentandtextposition.aep.zip
Johnny Cuevas, Editor
Thinkck.com
“I have not failed 700 times. I have succeeded in proving that those 700 ways will not work. When I have eliminated the ways that will not work, I will find the way that will work.”
—THOMAS EDISON on inventing the light bulb.