1
我想讓小圓圈能夠在大圓內旋轉。但是,我得到的結果是,小圓圈在大圓外旋轉。 這裏是我的代碼:閃迴圈不在另一個圓內旋轉
import flash.events.Event;
import flash.events.MouseEvent;
var Rec:Number=-1;
stage.addEventListener(Event.ENTER_FRAME,EntFrame);
function EntFrame(e:Event):void
{
if (Rec == -1)
{
CircleL.rotation-= 2;
}
}
var cenX = CircleL.x;
var cenY = CircleL.y;
var ccStep = .01;
var twoPI = 2 * Math.PI;
var circleSNum1:Number = Math.random();
var circleSNum2:Number = Math.random();
var circleSNum3:Number = Math.random();
var circleSNum4:Number = Math.random();
var circleSNum5:Number = Math.random();
function randomRange(minNum:Number, maxNum:Number):Number
{
return (Math.floor(Math.random() * (maxNum - minNum + 1)) + minNum);
}
var radius1 = randomRange(10, 90);
var radius2 = randomRange(10, 90);
var radius3 = randomRange(10, 90);
var radius4 = randomRange(10, 90);
var radius = randomRange(10, 90);
function move(event:Event):void
{
CircleL.CircleS1.x = cenX + Math.cos(circleSNum1 * twoPI) * radius;
CircleL.CircleS1.y = cenY + Math.sin(circleSNum1 * twoPI) * radius;
CircleL.CircleS2.x = cenX + Math.cos(circleSNum2 * twoPI) * radius2;
CircleL.CircleS2.y = cenY + Math.sin(circleSNum2 * twoPI) * radius2;
CircleL.CircleS3.x = cenX + Math.cos(circleSNum3 * twoPI) * radius3;
CircleL.CircleS3.y = cenY + Math.sin(circleSNum3 * twoPI) * radius3;
CircleL.CircleS4.x = cenX + Math.cos(circleSNum4 * twoPI) * radius4;
CircleL.CircleS4.y = cenY + Math.sin(circleSNum4 * twoPI) * radius4;
CircleL.CircleS5.x = cenX + Math.cos(circleSNum5 * twoPI) * radius1;
CircleL.CircleS5.y = cenY + Math.sin(circleSNum5 * twoPI) * radius1;
}
addEventListener(Event.ENTER_FRAME,move);
下面是它的外觀,當我運行它,如:
我可以問爲什麼stop()或play()無法在我的代碼上工作? isit因爲我使用var Rec:Number = -1;製作動畫? – Darren
@達倫:請不要在評論中提出新問題。創建一個新問題。現在是否解決了圈子的問題? – null
Yeap它解決了! – Darren