2008.10.17.05:44 Practice

function setUp() {
total = 50;
cenX = 400;
cenY = 300;
layerObj = this.createEmptyMovieClip("layer0", 0);
layerObj._x = cenX;
layerObj._y = cenY;
//
range = 10;
tmpX = 0;
tmpY = 0;
//
for (i=0; i<total; i++) {
lineLayer = layerObj.createEmptyMovieClip("lineLayer"+i, i);
//
//
var colRGB = i/total*256;
lineLayer.lineStyle(0,colRGB,100);
w = range*(total-i+1)*(total-i)/20;
lineLayer.moveTo(w/2*-1,w/2*-1);
lineLayer.beginFill(colRGB,100);
lineLayer.lineTo(w/2,w/2*-1);
lineLayer.lineTo(w/2,w/2);
lineLayer.lineTo(w/2*-1,w/2);
lineLayer.lineTo(w/2*-1,w/2*-1);
lineLayer.endFill();
//
}
// EnterFrame
layerObj.onEnterFrame = function() {
runtime();
};
}
function runtime() {
trace(layerObj._xmouse%180);

for (i=0; i<total; i++) {
obj = layerObj["lineLayer"+i];
if (i == 0) {
obj._x += (layerObj._xmouse-obj._x)/5;
obj._y += (layerObj._ymouse-obj._y)/5;
obj._rotation += (layerObj._xmouse%180-obj._rotation)/5;
} else {
pveObj = layerObj["lineLayer"+(i-1)];
obj._x += (pveObj._x-obj._x)/5;
obj._y += (pveObj._y-obj._y)/5;
obj._rotation += (pveObj._rotation-obj._rotation)/5;
}
}
}
//
setUp();




2008.11.10.04:58 BitmapData IV

//
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));
}
}

};






2008.11.10.15:32 BitmapData III

//
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() {
//
videoW = 160;
stageW = 800;
gridRatio = (random(3)+1);
w = 16*gridRatio;
h = 12*gridRatio;
dotSize = stageW/w;
videoSpace = videoW/w;
//
bmpCache.draw(my_video);
//
for (j=0; j<h; 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;
dotCache.fillRect(new Rectangle(0, 0, dotSize, dotSize),hexCode);
displayBoardBitmap.copyPixels(dotCache,new Rectangle(0, 0, dotSize, dotSize),new Point(xPos, yPos));
}
}

};




2008.11.10.15:31 BitmapData II

//
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
var bmpCache:BitmapData = new BitmapData(160, 120, false, 0x00FF0000);
var bmpObj:BitmapData = new BitmapData(800, 600, false, 0x00FF0000);
var mcDisplay:MovieClip = this.createEmptyMovieClip("mc", 0);
mcDisplay.attachBitmap(bmpObj,this.getNextHighestDepth());
//
i = 0;
row = 5;
w = 160;
h = 120;
//
this.onEnterFrame = function() {
//
var tmpX = i%row*w;
var tmpY = (i-i%row)/row*h;
trace(tmpX+" "+tmpY);

i++;
if (i == 25) {
i = 0;
}
//
bmpCache.draw(my_video);
bmpObj.copyPixels(bmpCache,new Rectangle(0, 0, 160, 120),new Point(tmpX, tmpY));
//
};

20081103.01:03 BitmapData

//
import flash.display.BitmapData;
import flash.geom.Rectangle;
import flash.geom.Point;
// video instance on the Stage.
var my_video:Video;
var my_cam:Camera = Camera.get();
my_video.attachVideo(my_cam);



//
var bmpObj:BitmapData = new BitmapData(160, 120, false, 0x00FF0000);
var mc_2:MovieClip = this.createEmptyMovieClip("mc", 0);

mc_2._x = 400;

but0.onPress = function() {
bmpObj.draw(my_video);
mc_2.attachBitmap(bmpObj,this.getNextHighestDepth());
};



























the videoObject must firstly be created in library & place on stage