forked from: bitmap.perlinNoise

by bradsedito forked from bitmap.perlinNoise (diff: 24)
♥0 | Line 43 | Modified 2011-10-18 07:26:40 | MIT License
play

ActionScript3 source code

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

// forked from _ryotaros's bitmap.perlinNoise
package {
    import flash.geom.Point;
    import flash.display.Bitmap;
    import flash.display.BitmapData;
    import flash.display.BitmapDataChannel;
    import flash.display.Sprite;
    import flash.events.Event;
    
    public class FlashTest extends Sprite 
    {
        public  var SW:Number = new Number( stage.stageWidth  );
        public  var SH:Number = new Number( stage.stageHeight );
        public  var SD:Number = new Number( 10000             );
        private var _skySprite:Sprite = new Sprite();
        private var bmpdata:BitmapData;
        
        public function FlashTest() 
        {
            stage.addChild( _skySprite );
            bmpdata = new BitmapData( 120, 120, true, 0xffffff);
            var bmp:Bitmap =new Bitmap(bmpdata);
            
            bmp.x = ( bmp.x-(bmp.width) - SW ); 
            bmp.scaleX = 12;
            bmp.scaleY = 6;
          //bmp.scaleZ = 1; 
            bmp.rotationX = 65;

                _skySprite.addChild( bmp );                
          }
          
          private var baseX:Number = 60;
          private var baseY:Number = 60;
          private var octvas:uint = 4;
          private var randomSeed:int = Math.random()*0xffffffff;
          private var stitch:Boolean = false;
          private var fractalNoise:Boolean = true;
          private var channelOptions:uint =new uint( null );
          //private var channelOptions:uint =new uint( BitmapDataChannel.ALPHA );
          //private var channelOptions:int = BitmapDataChannel.GREEN | BitmapDataChannel.BLUE;
          private var grayScale:Boolean = true;
          private var offset:Array = [new Point(), new Point() , new Point(), new Point()]
          
          private function enterframe (e:Event):void {
                  bmpdata.perlinNoise(baseX, baseY, octvas, randomSeed, stitch, fractalNoise, channelOptions, grayScale,offset );
                  offset[0].y += 1;
                  offset[1].y += 1;
                  offset[2].y += 0.5;    
                  offset[3].y += 0.25;
          }
    }
}