forked from: forked from: PaintSample

by s26 forked from forked from: PaintSample (diff: 11)
see http://gihyo.jp/design/feature/01/frocessing/0003
♥0 | Line 35 | Modified 2010-07-02 20:43:58 | MIT License
play

ActionScript3 source code

/**
 * Copyright s26 ( http://wonderfl.net/user/s26 )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/j5Q3
 */

// forked from nutsu's forked from: PaintSample
// forked from nutsu's PaintSample
// see http://gihyo.jp/design/feature/01/frocessing/0003
package {
    import frocessing.display.F5MovieClip2DBmp;
    [SWF(width=465,height=465,backgroundColor=0x000000)]
    public class PaintSample2 extends F5MovieClip2DBmp
    {        
    private var count = 0
        public function setup():void
        {
            //キャンバスのサイズ指定
            size( 465, 465 );
            //背景の描画
            background( 0 );
            //色指定
            stroke( 0, 1 );
            //HSV
            colorMode( HSV, 1 );
        }
        
        public function draw():void
        {
            //マウスが押されているときは描画内容をクリア
            if ( isMousePressed ){
                background( 0 );
                count = 100
            }
            //dist()で2点間の距離を取得
            var d:Number = dist( pmouseX, pmouseY, mouseX, mouseY );
            if ( d < 3 )
                return;
                
            //中点
            var x1:Number = (pmouseX+mouseX)/2;
            var y1:Number = (pmouseY+mouseY)/2;
            
            //中点の周辺にランダムな円を描画
            d /= 2;
            for ( var i:int = 0; i < int(d); i++ ) {
                var xx:Number = x1 + random( -count/30, count/100 );
                var yy:Number = y1 + random( -count/30, count/100 );
                fill( random(0.4, 0.6), random(0.8, 1), random(0.8, 1),0.8 );
                circle( xx, yy, count/100 );
                count++
            }
        }
    }
}

Forked