這幾乎是soved,這一段腳本將採取陣列按鈕的周圍設置了橢圓形的項目(可以添加你想要的),空間他們(產地+半徑),和吐溫他們根據你設定的速度在它周圍。唯一的問題是間距不均勻,有些距離很近,有些距離很遠,我不明白爲什麼。
var angle:Number = 0;
var originX:Number = 200;
var originY:Number = 200;
var radiusX:Number = 267.5;
var radiusY:Number = 100;
var steps:Number = 360;
var speed:Number = 3.1415/steps;
var buttons:Array = new Array(this.age,this.ethnicity,this.sex,this.social,this.ability,this.orientation,this.faith);
for (i=0;i<buttons.length;i++) {
buttons[i].onEnterFrame = function() {
moveButtons(this);
controllButtons(this);
};
buttons[i]._order = (360/buttons.length) * (i+1);
}
function moveButtons(e) {
e._anglePhase = angle+e._order;
e._x = originX+Math.sin(e._anglePhase)*radiusX;
e._y = originY+Math.cos(e._anglePhase)*radiusY;
}
function controllButtons(e) {
angle += speed;
if (angle>=360) {
angle -= 360;
}
}
請注意,我得到這個腳本的基地http://www.actionscript.org/forums/showthread.php3?t=161830&page=2它轉化爲AS2,並使其從一個陣列工作。
我真的不明白關於角度的部分,你希望它們均勻間隔嗎? – grapefrukt 2011-06-15 14:26:15
是的,每個點的橢圓角度是不同的,我需要找到每個點的角度,所以我知道從哪裏開始。這有任何意義嗎? – 2011-06-16 08:09:12