forked from: BitmapDataSample9
forked from BitmapDataSample9 (diff: 18)
ActionScript3 source code
/**
* Copyright noise ( http://wonderfl.net/user/noise )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/rLG8
*/
// forked from nutsu's BitmapDataSample9
package {
import flash.display.Sprite;
import flash.display.BlendMode;
import flash.display.BitmapData;
import flash.display.Bitmap;
import flash.display.BitmapDataChannel;
import flash.geom.Point;
import flash.events.Event;
[SWF(width=465,height=465,backgroundColor=0)]
public class BitmapDataSample9 extends Sprite {
private var bmpdata:BitmapData;
private var bmpdata2:BitmapData;
public function BitmapDataSample9() {
//BitmapDataを作成して表示リストに追加
bmpdata = new BitmapData( 120, 120, false, 0 );
bmpdata2= new BitmapData( 120, 120, false, 0 );
var bmp:Bitmap = new Bitmap(bmpdata);
var bmp2:Bitmap = new Bitmap(bmpdata2);
bmp.scaleX = bmp.scaleY = 4;
bmp2.scaleX = bmp2.scaleY = 4;
addChild( bmp );
addChild(bmp2);
bmp.blendMode = "normal";
bmp2.blendMode = "screen";
//イベント
addEventListener( Event.ENTER_FRAME, enterframe );
}
private var baseX:Number = 60;
private var baseY:Number = 60;
private var octaves:uint = 3;
private var randomSeed:int = Math.random()*0xffffffff;
private var stitch:Boolean = false;
private var fractalNoise:Boolean = false;
private var channelOptions:int = BitmapDataChannel.RED|BitmapDataChannel.BLUE;
private var grayScale:Boolean = true;
private var offset:Array = [new Point(),new Point(),new Point()];
private function enterframe(e:Event):void {
//PerlinNoise
bmpdata.perlinNoise( baseX, baseY, octaves, randomSeed,
stitch, fractalNoise, channelOptions, grayScale, offset );
offset[0].y += 2;
offset[1].y += 1;
offset[2].y += 0.5;
bmpdata.perlinNoise( baseX, baseY, octaves, randomSeed, stitch, fractalNoise, channelOptions,grayScale, offset);
}
}
}