flash on 2014-12-20
♥0 |
Line 60 |
Modified 2014-12-20 06:00:48 |
MIT License
archived:2017-03-30 11:51:14
ActionScript3 source code
/**
* Copyright mutantleg ( http://wonderfl.net/user/mutantleg )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/uBfS
*/
package {
import flash.geom.Point;
import flash.display.BitmapData;
import flash.events.Event;
import flash.display.Sprite;
public class FlashTest extends Sprite {
public function FlashTest() {
canvas = new BitmapData(400, 400, false, 0);
vecChunk = new Vector.<xChunk>(0,false);
var k:int;
var i:int; var a:xChunk;
for (i = 0; i < 400; i+= 40)
{
for (k = 0; k < 400; k+= 40)
{
a = new xChunk();
a.rect.x = k; a.rect.y = i;
a.rect.width = 40; a.rect.height = 40;
vecChunk.push(a);
}//nextk
}//nexti
var num:int;
num = vecChunk.length;
for (i = 0; i < num; i++)
{
a = vecChunk[i];
canvas.fillRect(a.rect, 0xFFffFFff * Math.random() );
}//nexti
stage.addEventListener(Event.ENTER_FRAME, onEnter);
}//ctor
public var canvas:BitmapData;
public var vecChunk:Vector.<xChunk>;
public var it:int = 0;
public function getChunk():xChunk
{
it +=1; if (it >= vecChunk.length) { it = 0; }
return vecChunk[it];
}//getchunk
public var dp:Point = new Point();
public var temp:BitmapData = new BitmapData(40,40,false,0);
public function onEnter(e:Event):void
{
graphics.clear();
graphics.lineStyle(2,0);
var a:xChunk;
a = getChunk();
//temp.noise(Math.random()*0xFFffFF, 0, 255);
temp.perlinNoise(1+Math.random()*16,1+Math.random()*16,2+Math.random()*6, 2+Math.random()*6, true, Math.random()<0.5,Math.random()*7+1, Math.random()<0.2);
//canvas.fillRect(a.rect, Math.random()*0xFFffFFff);
dp.x = a.rect.x; dp.y = a.rect.y; canvas.copyPixels(temp, temp.rect, dp);
graphics.beginBitmapFill(canvas,null, false, false);
graphics.drawRect(0,0,canvas.width, canvas.height);
graphics.endFill();
}//onenter
}//classend
}
import flash.geom.Rectangle;
internal class xChunk
{
public var rect:Rectangle = new Rectangle(0,0,0,0);
public var user:int = -1;
}//xchucnk