/**
* Copyright mutantleg ( http://wonderfl.net/user/mutantleg )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/7lIS
*/
package {
import flash.geom.Point;
import flash.display.StageQuality;
import flash.text.TextField;
import flash.geom.Rectangle;
import flash.events.Event;
import flash.display.BitmapData;
import flash.display.Sprite;
public class FlashTest extends Sprite {
public function FlashTest() {
stage.quality = StageQuality.LOW;
deb = new TextField();
deb.width =320; deb.height=240;
deb.mouseEnabled = false;
deb.textColor = 0xFF0000;
addChild(deb);
pic = new BitmapData(465,465, false, 0xffFFffFF);
pic.noise(12,1,255, 7,true);
graphics.beginFill(0, 1);
graphics.drawCircle(235,235,128);
graphics.endFill();
//pic.draw(this);
graphics.clear();
graphics.beginBitmapFill(pic,null,false,false);
graphics.drawRect(0,0, 465,465);
graphics.endFill();
graphics.lineStyle(2,0xFF);
pic.lock();
var i:int; var k:int; var u:int;
for (i = 0; i < 32; i++)
for (k = 0; k < 32; k++)
{
u = pic.getPixel((k*16)+8, (i*16)+8);
if (u < 0xff) { continue; }
//if (pic.getPixel(k, i) > 256) { continue; }
graphics.drawRect(k*16,i*16,16,16);
}
pic.unlock();
canvas = new BitmapData(465,465,false,0);
tile = new BitmapData(16,16, true, 0x880000FF);
stage.addEventListener(Event.ENTER_FRAME, onEnter);
}//ctor
public var tile:BitmapData;
public var deb:TextField;
public var pic:BitmapData;
public var canvas:BitmapData;
public var rect:Rectangle = new Rectangle(235,235,4,4);
public var dp:Point = new Point();
public function onEnter(e:Event):void
{
graphics.clear();
graphics.beginBitmapFill(canvas,null,false,false);
graphics.drawRect(0,0, 465,465);
graphics.endFill();
canvas.unlock();
canvas.lock();
canvas.fillRect(canvas.rect, 0);
canvas.draw(pic);
graphics.lineStyle(2,0xFF);
var i:int; var k:int; var u:int;
for (i = 0; i < 32; i++)
for (k = 0; k < 32; k++)
{
u = pic.getPixel((k*16)+8, (i*16)+8);
if (u < 0xff) { continue; }
//if (pic.getPixel(k, i) > 256) { continue; }
//graphics.drawRect(k*16,i*16,16,16);
dp.x = k*16; dp.y = i*16;
canvas.copyPixels(tile, tile.rect, dp);
}
for (i =0; i < 64; i++)
{
rect.x += Math.random()*8-4;
rect.y += Math.random()*8-4;
if (rect.x > 465) {rect.x = 0;}
if (rect.x < 0) {rect.x = 465;}
if (rect.y > 465) {rect.y = 0;}
if (rect.y < 0) {rect.y = 465;}
pic.fillRect(rect, 0);
}
deb.text = ""+ pic.getPixel(stage.mouseX, stage.mouseY);
}//onenter
}//classend
}