var size:Number = 800;
var canvas:BitmapData = new BitmapData(size,size,false, 0x000000);
addChild(new Bitmap(canvas, "auto", true));
scaleX = scaleY = .5;
var pix:Number = size * size;
var scale:Number = 1/(size/3);
for (var i:Number = 0; i<pix; i++){
var xp:Number = (i % size);
var yp:Number = int(i / size);
var xt:Number = xp * scale;
var yt:Number = yp * scale;
var ca:Number = (Math.abs(Math.tan(yt) * Math.pow(Math.sin(xt),3)) * 100 ) % 155;
var cb:Number = (Math.abs(Math.tan(xt) * Math.pow(Math.sin(yt),3)) * 100) % 155;
ca|= cb;
canvas.setPixel(xp, yp, ca << 16 | ca << 8 | ca);
}
Another messy code snippet that I e-mailed to myself at some point…
Try replacing line 16 with some of these variations:
ca &= cb;
ca += cb;
ca -= cb;
ca ^= cb;
ca %= cb