Wednesday, September 26, 2012

After Effects Number Rolling

Alt + Shift + "=" to open the expression panel with the "text" transform effect open.

numDecimals = 0;
commas = true;
dollarSign = true;
millSuff = true;
beginCount = 10;
endCount = 110;
dur = .85;
t = time - inPoint;
s = linear (t, 0, dur, beginCount, endCount).toFixed(numDecimals);
prefix = "";
suffix = "";
if (s[0] == "-") { prefix = "-"; s = s.substr(1); }
if (dollarSign) prefix += "$";
if (millSuff) suffix += " MILLION";
if (commas) {
decimals = "";
if (numDecimals > 0){
decimals = s.substr(-(numDecimals + 1));
s = s.substr(0,s.length - (numDecimals + 1));
}
outStr = s.substr(-s.length, (s.length-1)%3 +1);
for (i = Math.floor((s.length-1)/3); i > 0; i--) {
outStr += "," + s.substr(-i*3,3);
}
prefix + outStr + decimals + suffix;
}
else
{
prefix + s + suffix;
}