分散&整列
分散&整列
クリックで分散と整列します。
♥0 |
Line 60 |
Modified 2012-06-23 15:17:20 |
MIT License
archived:2017-03-20 07:47:42
ActionScript3 source code
/**
* Copyright yuugurenote ( http://wonderfl.net/user/yuugurenote )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/yd8C
*/
package {
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.events.Event;
import flash.geom.Point;
[SWF(width=465,height=465,backgroundColor=0xFFFFFF,frameRate=60)]
public class AS120623_01 extends Sprite {
public var sw:Number=stage.stageWidth;
public var sh:Number=stage.stageHeight;
public var max:Number=400;
public var myFlag:Boolean=false;
public var myArray:Array = new Array();
public var mySet:Array = new Array();
public var myPos:Array = new Array();
public var _myCircle1:myCircle1;
public function AS120623_01() {
for (var i:Number=0; i<max; i++) {
_myCircle1=new myCircle1();
_myCircle1.x=Math.random()*sw;
_myCircle1.y=Math.random()*sh;
addChild(_myCircle1);
myArray.push(_myCircle1);
mySet.push( new Point(i%20*10+140,Math.floor(i/20)*10+140));
myPos.push(new Point(Math.random()*sw,Math.random()*sh))
}
stage.addEventListener(MouseEvent.MOUSE_DOWN,xDown);
addEventListener(Event.ENTER_FRAME,xEnter);
}
public function xDown(e:MouseEvent):void {
if (! myFlag) {
myFlag=true;
} else {
myFlag=false;
}
}
public function xEnter(e:Event):void {
if (myFlag) {
for (var i:Number=0; i<max; i++) {
myArray[i].x += (mySet[i].x - myArray[i].x)/8;
myArray[i].y += (mySet[i].y - myArray[i].y)/8;
}
} else {
for (var j:Number=0; j<max; j++) {
myArray[j].x += (myPos[j].x - myArray[j].x)/8;
myArray[j].y += (myPos[j].y - myArray[j].y)/8;
}
}
}
}
}
import flash.display.Sprite;
import flash.events.Event;
class myCircle1 extends Sprite {
public var _r:Number;
public function myCircle1() {
this.graphics.beginFill(0xCCCCCC,1);
this.graphics.drawCircle(0,0,5);
this.graphics.endFill();
}
}