0
저는 물건의 대부분을했고 중심점을 중심으로 회전하는 볼을 가지고 있습니다. 내가 필요로하는 것은 공이 같은 선을 따라 함께 무작위로 생성 된 점에서 회전하기 시작하는 것입니다. 여기 내 코드가있다. 감사.오브젝트를 무작위로 돌려서 ActionScript 3.0에서 회전 시키십시오.
import flash.display.Sprite;
var ball1 : Sprite = new ballMC();
var ball2 : Sprite = new ballMC();
var ball3 : Sprite = new ballMC();
var ball4 : Sprite = new ballMC();
var centreball : Sprite = new ballMC();
var centerX:Number = stage.stageWidth/2;
var centerY:Number = stage.stageHeight/2;
var radius:Number;
var speed:Number = 0.09 ;
var angle:Number = 0;
var rand1:Number = (Math.round(Math.random()*(1 + 100-50))+50);
var rand2:Number = (Math.round(Math.random()*(1 + 100-50))+50);
var rand3:Number = (Math.round(Math.random()*(1 + 100-50))+50);
var rand4:Number = (Math.round(Math.random()*(1 + 100-50))+50);
var reversebutt:butttonreverse = new butttonreverse();
var orbitoryDirection:String = "forward";
init();
function init():void
{
addChild(ball1);
addChild(ball2);
addChild(ball3);
addChild(ball4);
addChild(reversebutt);
addChild(centreball);
centreball.x = stage.stageWidth/2;
centreball.y = stage.stageHeight/2;
radius = (Math.round(Math.random()*(1 + 200-50))+50);
addEventListener(Event.ENTER_FRAME, circleit);
reversebutt.addEventListener(MouseEvent.CLICK,differentdir);
}
function circleit(e:Event):void
{
ball1.x = centerX + Math.cos(angle) * (radius + rand1);
ball1.y = centerY + Math.sin(angle) * (radius + rand1);
ball2.x = centerX + Math.cos(angle) * (radius + rand2);
ball2.y = centerY + Math.sin(angle) * (radius - rand2);
ball3.x = centerX + Math.cos(angle) * (radius - rand3);
ball3.y = centerY + Math.sin(angle) * (radius - rand3);
ball4.x = centerX + Math.cos(angle) * (radius - rand4);
ball4.y = centerY + Math.sin(angle) * (radius - rand4);
reversebutt.x = centerX + (centerX/2) ;
reversebutt.y = centerY + (centerY/2) ;
reversebutt.name = "1";
if (orbitoryDirection == "forward")
{
angle += speed;
}
else
{
angle -= speed;
}
}
function differentdir(event:MouseEvent):void
{
if (event.target.name == "1")
{
if (orbitoryDirection == "forward")
{
orbitoryDirection = "backwards";
}
else
{
orbitoryDirection = "forward";
}
}
}
헤이 guys..just 실제로 나 자신을 어떻게 알아 냈어. circleit 함수에서 저는 각도 값 cos과 sin 값을 다른 값으로 무작위로 나눕니다. 그것은 작동합니다. 여전히 올바른 방법인지 궁금합니다. – Ang