>>Но как узнать то же самое у эллипса
длину элипса аналитически нельзя выразить, можно подобрать или воспользоваться каким-либо численным приближением (легко нагуглишь)
>>и без правильных расчетов он будет 80% движений висеть в воздухе
это можно, весь расчет заключается в определении текущего радиуса

Код AS3:
var g2r:Number=Math.PI/180;
var speed:Number=2;
var rW:Number=ball.width/2;
var rH:Number=ball.height/2;
var y0:Number=ball.y-rW;
addEventListener(Event.ENTER_FRAME, moving);
function moving(e:Event):void {
ball.rotation+=speed;
var a:Number=g2r*ball.rotation;
var rX=rW*Math.cos(a);
var rY=rH*Math.sin(a);
var r=Math.sqrt(rX*rX+rY*rY);
ball.y=y0+r;
ball.x+=g2r*speed*r;//грубо длина дуги для текущего радиуса
}