flash on 2012-11-16
♥0 |
Line 89 |
Modified 2012-11-16 00:23:43 |
MIT License
archived:2017-03-30 22:56:22
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/eQNk
*/
package {
import flash.display.BitmapData;
import flash.display.Bitmap;
import flash.display.Sprite;
public class FlashTest extends Sprite {
public function FlashTest() {
var pic:Bitmap;
pic = new Bitmap(new BitmapData(64,64,false,0));
// addChild(pic);
pic.width = 400;
pic.height = 400;
stage.quality = "LOW";
var tex:BitmapData;
tex = new BitmapData(16,16,false,0);
tex.noise(Math.random()*255);
//tex.fillRect(tex.rect, 0xFF0000);
graphics.clear();
graphics.beginBitmapFill(tex);
graphics.drawEllipse(3,3,56,56);
//graphics.drawRect(8,8,32,32);
graphics.endFill();
pic.bitmapData.draw(this);
bleedTex(pic.bitmapData);
addChild(pic);
}//ctor
public function bleedTex(bm:BitmapData):void
{
var i:int;
var k:int;
var m:int;
var w:int;
var ni:int;
var nk:int;
var u:uint;
ni = bm.height;
nk = bm.width;
for (i = 0; i < ni; i++)
{
w = 0;
for (k = 0; k < nk; k++)
{
u = bm.getPixel(k, i);
if (u != 0 && w == 0)
{
w = 1;
for (m = k; m >= 0; m--)
{
bm.setPixel(m, i, u);
}//nextm
}
if (w == 1 && u == 0)
{
u = bm.getPixel(k-1,i);
for (m = k; m < nk; m++)
{
bm.setPixel(m, i, u);
}
break;
}
}//nextk
}//nexti
for (i = 0; i < ni; i++)
{
u = bm.getPixel(1, i);
if (u == 0) { continue; }
for (k = i; k >= 0; k--)
{
for (m = 0; m < nk; m++)
{
u = bm.getPixel(m, i);
bm.setPixel(m, k, u);
}
}
break;
}//nexti
for (i = ni; i > 0; i--)
{
u = bm.getPixel(1, i);
if (u == 0) { continue; }
for (k = i; k< ni; k++)
{
for (m=0; m<nk; m++)
{
u = bm.getPixel(m, i);
bm.setPixel(m,k,u);
}
}
break;
}//nexti
}//bleed
}//classend
}