//
import flash.display.BitmapData;
import flash.geom.Rectangle;
import flash.geom.Point;
//
//
//
// video instance on the Stage.
var my_video:Video;
var activity_pb:mx.controls.ProgressBar;
var my_cam:Camera = Camera.get();
my_video.attachVideo(my_cam);
// prepare bitmap
// CLONE THE WEBCAM
var bmpCache:BitmapData = new BitmapData(160, 120, false, 0x00FF0000);
// CLONE THE DOT
var dotCache:BitmapData = new BitmapData(50, 50, false, 0x00FF0000);
// THE COMBINED IMAGE
var displayBoardBitmap:BitmapData = new BitmapData(800, 600, false, 0x00000000);
var mcDisplay:MovieClip = this.createEmptyMovieClip("mc", 0);
mcDisplay.attachBitmap(displayBoardBitmap,this.getNextHighestDepth());
//
//
this.onEnterFrame = function() {
displayBoardBitmap.fillRect(new Rectangle(0, 0, 800, 600),0x00000000);
//
videoW = 160;
stageW = 800;
gridRatio = 5;//(random(5)+1);
w = 16*gridRatio;
h = 12*gridRatio;
dotSize = stageW/w;
videoSpace = videoW/w;
//
bmpCache.draw(my_video);
//
for (j=h-1; j>=0; j--) {
for (i=0; i<w; i++) {
obj = this["mc"+(j*w+i)];
//trace([xPos, yPos]);
var hexCode = bmpCache.getPixel(i*videoSpace, j*videoSpace);
if (i<10) {
trace(hexCode);
}
//
var xPos = i*dotSize;
var yPos = j*dotSize;
var tmpSize = dotSize*(1+random(5))
dotCache.fillRect(new Rectangle(0, 0, dotSize, tmpSize),hexCode);
displayBoardBitmap.copyPixels(dotCache,new Rectangle(0, 0, dotSize, tmpSize),new Point(xPos, yPos));
}
}
};
