Разобрался сам var x1: Number = myBall.x - myCenterX; var y1: Number = myY - myCenterY; var x2: Number = (myCos * x1) - (mySin * y1); var y2: Number = (myCos * y1) + (mySin * x1); myBall.x = myCenterX + x2; myY = myCenterY + y2; myBall.y = (myY * 0.5) + (myCenterY / 2);

отаю с этой функцией, которая перемещает объект вокруг центральной точки идеального круга, и пытаюсь изменить его, чтобы переместить его в овальную форму, которая в 1/2 раза больше его ширины?

В принципе, у меня установлена ​​скорость

var myVelocity:Number = 0.25;

затем я рассчитываю свои синус и косинус на основе скорости

var myCos:Number = Math.cos(myVelocity);
var mySin:Number = Math.sin(myVelocity);

затем я вычисляю расстояние объекта от фиксированных центральных точек вдоль каждой оси и

var x1:Number = myBall.x - centerX;
var y1:Number = myBall.y - centerY;
var x2:Number = myCos * x1 - mySin * y1;
var y2:Number = myCos * y1 + mySin * x1;
myBall.x = centerX + x2;
myBall.y = centerY + y2;

У меня есть другая функция, которая вычисляет x и y на основе myBall.x = centerX + cos (angle) * radius; это достаточно легко изменить радиус, чтобы стать эллипсом, но есть ли простой способ изменить вышеупомянутый, чтобы стать эллипсом? Я хочу сделать это, чтобы быть более эффективным с кодом и уменьшить количество вызовов математических функций

Ответы на вопрос(1)

Ваш ответ на вопрос