コンペイトウみたいだったりウィルスみたいだったり
//////////////////////////////////////
*
* copyright 2010 glasses factory
* (http://glasses-factory.net)
* @autor YAMAGUCHI EIKICHI
*
* 2010 2010/01/05
*
* 2日目
* これをもとにちょいちょい作る。
*
/
///////////////////////////////////
/**
* Copyright glasses_factory ( http://wonderfl.net/user/glasses_factory )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/aDeo
*/
/*//////////////////////////////////////
*
* copyright 2010 glasses factory
* (http://glasses-factory.net)
* @autor YAMAGUCHI EIKICHI
*
* 2010 2010/01/05
*
* 2日目
* これをもとにちょいちょい作る。
*
/*//////////////////////////////////////
package
{
import flash.display.Sprite;
import flash.events.Event;
public class Study1 extends Sprite
{
/*//////////////////////////////////////
/* public variables
/*//////////////////////////////////////
/*//////////////////////////////////////
/* getter
/*//////////////////////////////////////
/*//////////////////////////////////////
/* setter
/*//////////////////////////////////////
/*//////////////////////////////////////
/* public methods
/*//////////////////////////////////////
//Constractor
public function Study1()
{
super();
init();
//試しに2回呼び出してみたら綺麗?だったので今回だけ笑
init();
}
public function init():void
{
buyo = new BuyoBuyo();
addChild( buyo );
buyo.x = stage.stageWidth * 0.5;
buyo.y = stage.stageHeight * 0.5;
}
/*//////////////////////////////////////
/* private methods
/*//////////////////////////////////////
/*//////////////////////////////////////
/* private variables
/*//////////////////////////////////////
private var buyo:BuyoBuyo;
}
}
import flash.display.Graphics;
import flash.display.Sprite;
class BuyoBuyo extends Sprite
{
public function BuyoBuyo()
{
_col = Math.random() * 0xffffff;
ptVect = new Vector.<Particle>();
var p0:Particle = new Particle( Math.cos( 0 ) * _radius, Math.sin( 0 ) * _radius );
var i:uint = 1;
while( i < PT_NUM )
{
var angle:Number = Math.PI * 2 / PT_NUM * i;
var rad:Number = _radius + ( Math.random() * _degree - _degree / 2 );
var p:Particle = new Particle( Math.cos( angle ) * rad, Math.sin( angle ) * rad);
ptVect.push( p );
i++;
}
this.cacheAsBitmap = true;
this.blendMode = "multiply";
draw();
}
public function draw():void
{
var g:Graphics = this.graphics;
g.clear();
g.beginFill( _col );
g.moveTo( (ptVect[ptVect.length -1].x + ptVect[0].x ) * 0.5 , ( ptVect[ptVect.length - 1].y + ptVect[0].y) * 0.5 );
var i:int = 0;
while( i < PT_NUM )
{
g.curveTo(
ptVect[i % ptVect.length].x, ptVect[i % ptVect.length].y,
( ptVect[i % ptVect.length].x + ptVect[(i + 1) % ptVect.length].x) * 0.5,
( ptVect[i % ptVect.length].y + ptVect[(i + 1) % ptVect.length].y ) * 0.5 );
++i;
}
g.endFill();
}
private const PT_NUM:uint = 60;
public var ptVect:Vector.<Particle>;
private var _radius:Number = 150;
private var _degree:Number = _radius / 5;
private var _col:uint;
}
class Particle
{
public var x:Number = 0;
public var y:Number = 0;
public var tmpX:Number = 0;
public var tmpY:Number = 0;
public var vx:Number = 0;
public var vy:Number = 0;
public function Particle( xx:Number, yy:Number)
{
x = tmpX = xx;
y = tmpY = yy;
}
}