Wednesday, August 7, 2013
[Sample] Paint Web Camera
![[Sample] Paint Web Camera](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhaF2xEapmnYl9jjEAs-qo1VJUd5mBJ2XQWCByqlx4keBp3pkEtLmPyifSOHiVgocffC1MjlsIYEKd7x8T_U63ixQkyA9Ttysm1KHIcBTxDVHETrj49vymGmFQ5m7-7aa7jACfEhxdvx3w/s1600/paintCamera.jpg)
Judul: [Sample] Paint Web Camera
Format: *.swf
Language:Indonesia
Cuplikan Script 1
import flash.display.MovieClip;
import flash.events.MouseEvent;
import flash.display.Bitmap;
import flash.display.BitmapData;
import fl.controls.ColorPicker;
import fl.events.ColorPickerEvent;
import com.adobe.images.JPGEncoder;
import com.adobe.images.PNGEncoder;
import com.senocular.display.transform.*;
import id.web.PustakaFlash.Effect.Scetch;
var klikASSor = false;
var tool:TransformTool = new TransformTool(new ControlSetStandard());
var kamera:Camera = Camera.getCamera(),Clear = false,gantung = false;
kamera.setQuality(0, 100);
kamera.setMode(1024, 768, 100);
var video:Video = new Video(517.95,318.95);
video.attachCamera(kamera);
var sp:Shape = new Shape();
var sp2:Shape = new Shape();
var s:Scetch;
var bitmapData:BitmapData,bitmapDataTemp:BitmapData,bitmapDataTemp1:BitmapData,bitmapDataTemp2:BitmapData,bitmapDataTemp3:BitmapData;
var bitmapDataTemp4:BitmapData,bitmapDataTemp5:BitmapData,bitmapDataTemp6:BitmapData;
var thumbScale;
var bitmapHapus:BitmapData,thumbitmapData:BitmapData;
var bitmap:Bitmap,thumbbitmap:Bitmap;
var thumbdump:MovieClip;
ambilFotoBtn.addEventListener(MouseEvent.CLICK,captureImage);
ambilFotoBtn.addEventListener(MouseEvent.MOUSE_OVER,over);
ambilFotoBtn.addEventListener(MouseEvent.MOUSE_OUT,out);
simpanlFotoBtn.addEventListener(MouseEvent.CLICK,simpan);
simpanlFotoBtn.addEventListener(MouseEvent.MOUSE_OVER,over);
simpanlFotoBtn.addEventListener(MouseEvent.MOUSE_OUT,out);
HapuslFotoBtn.addEventListener(MouseEvent.CLICK,Hapus);
HapuslFotoBtn.addEventListener(MouseEvent.MOUSE_OVER,over);
HapuslFotoBtn.addEventListener(MouseEvent.MOUSE_OUT,out);
saven.addEventListener(MouseEvent.CLICK,simpanKomputer);
saven.addEventListener(MouseEvent.MOUSE_OVER,over);
saven.addEventListener(MouseEvent.MOUSE_OUT,out);
saven.visible = false;
toolBox_mc.myColorPicker.setStyle("columnCount", 5);
//toolBox_mc.myColorPicker.setStyle("swatchWidth", 8); ;
/*toolBox_mc.myColorPicker.setStyle("swatchHeight", 12);*/
//toolBox_mc.myColorPicker.setStyle("swatchPadding", 2);
//toolBox_mc.myColorPicker.setStyle("backgroundPadding", 3);
//toolBox_mc.myColorPicker.setStyle("textPadding", 7);
Mouse.hide();
function over(event:MouseEvent)
{
if (! klikASSor)
{
Mouse.show();
pcl.visible = false;
Mouse.cursor = "button";
}
}
function out(event:MouseEvent)
{
if (! klikASSor)
{
Mouse.hide();
pcl.visible = true;
Mouse.cursor = "auto";
}
}
HapuslFotoBtn.visible = simpanlFotoBtn.visible = false;
var gtg;
function setDepth(target)
{
var maxIndex:Number = maxIndex = numChildren - 1;
setChildIndex(target, maxIndex);
}
function simpan(event:MouseEvent)
{
tool.setTarget(null);
trace(stg.x);
if (! gantung)
{
gtg=new gantungan();
addChild(gtg);
gtg.name = "gantungan";
gtg.x = 0;
gtg.y = 15;
wdh.visible = false;
gantung = true;
}
rol.visible = false;
saven.visible = true;
setDepth(toolBox_mc);
setDepth(pcl);
}
function captureImage(e:MouseEvent)
{
rol.visible = wdh.visible = true;
kamp.visible = false;
//removeChild(kk);
if (kk !=null)
{
removeChild(kk);
}
var snaarr = ["snapNormal","scetsa","negatiff","sepia","Brighten","blackAndWhite","hue"];
var snaFunct = [efectNormal,efect,negatif,sepia,Brighten,blackAndWhite,hue];
var snaFunctThumb = [efectNormalThumb,efectThumb,negatiftumb,sepiatumb,Brightentumb,blackAndWhitethumb,huetumb];
bitmapHapus = bitmapData = new BitmapData(video.width,video.height);
bitmapDataTemp = new BitmapData(video.width,video.height);
bitmapDataTemp1 = new BitmapData(video.width,video.height);
bitmapDataTemp6 = bitmapDataTemp5 = bitmapDataTemp4 = bitmapDataTemp3 = bitmapDataTemp2 = new BitmapData(video.width,video.height);
bitmap = new Bitmap(bitmapData);
bitmapHapus.draw(video);
bitmapData.draw(video);
bitmapDataTemp.draw(video);
bitmapDataTemp1.draw(video);
bitmapDataTemp2.draw(video);
bitmapDataTemp3.draw(video);
bitmapDataTemp4.draw(video);
bitmapDataTemp5.draw(video);
bitmapDataTemp6.draw(video);
bitmap.name = "snapshots";
stg.addChild(bitmap);
stg.addChild(pen_mc);
s = new Scetch(bitmapDataTemp1);
var c:int = 0;
while (c<snaarr.length)
{
thumbdump=new MovieClip();
thumbitmapData = new BitmapData(video.width,video.height);
thumbbitmap = new Bitmap(thumbitmapData);
thumbitmapData.draw(video);
thumbScale = 97 / thumbbitmap.width;
snaFunctThumb[c]();
rol.addChild(thumbdump);
thumbdump.addChild(thumbbitmap);
thumbbitmap.scaleX = thumbbitmap.scaleY = thumbScale;
thumbdump.x=(c*(thumbdump.width+10));
thumbdump.y = 20;
thumbdump.buttonMode = true;
thumbdump.name = snaarr[c];
thumbdump.funct = snaFunct[c];
thumbdump.addEventListener(MouseEvent.MOUSE_UP, drawEfect);
thumbdump.addEventListener(MouseEvent.MOUSE_OVER,over);
thumbdump.addEventListener(MouseEvent.MOUSE_OUT,out);
c++;
}
e.currentTarget.visible = false;
HapuslFotoBtn.visible = simpanlFotoBtn.visible = true;
toolBox_mc.myColorPicker.addEventListener(Event.CHANGE, changeHandler);
//toolBox_mc.redSwatch_mc.buttonMode=toolBox_mc.greenSwatch_mc.buttonMode=toolBox_mc.blueSwatch_mc.buttonMode=true;
//toolBox_mc.penSizeOne.buttonMode=toolBox_mc.penSizeThree_mc.buttonMode=toolBox_mc.penSizeTwenty_mc.buttonMode=true;
//toolBox_mc.penSizeOne.mouseChildren=toolBox_mc.penSizeThree_mc.mouseChildren=toolBox_mc.penSizeTwenty_mc.mouseChildren=false;
toolBox_mc.penSizeOne_mc.addEventListener(MouseEvent.CLICK,penDraw);
toolBox_mc.penSizeThree_mc.addEventListener(MouseEvent.CLICK,penDraw);
toolBox_mc.penSizeTwenty_mc.addEventListener(MouseEvent.CLICK,penDraw);
stg.addEventListener(MouseEvent.MOUSE_DOWN, startDrawing);
stg.addEventListener(MouseEvent.MOUSE_MOVE, isDrawing);
stg.addEventListener(MouseEvent.MOUSE_UP, finishedDrawing);
asesories();
setDepth(pcl);
video.attachCamera(null);
}
toolBox_mc.addEventListener(MouseEvent.MOUSE_OVER,over);
toolBox_mc.addEventListener(MouseEvent.MOUSE_OUT,out);
function efectThumb()
{
s = new Scetch(thumbitmapData);
}
function efectNormalThumb()
{
//s=new Scetch(d);
//bitmapData=bitmapDataThumb;
}
function efect(d)
{
/*bitmapData=bitmapDataTemp;
bitmap = new Bitmap(bitmapData);
stg.addChild(bitmap);
s=new Scetch(bitmapData);*/
stg.removeChild(bitmap);
stg.removeChild(pen_mc);
pen_mc.graphics.clear();
bitmapHapus = bitmapDataTemp1;
bitmapData = bitmapDataTemp1;
bitmap = new Bitmap(bitmapData);
stg.addChild(bitmap);
stg.addChild(pen_mc);
}
function efectNormal(d)
{
//s=new Scetch(d);
stg.removeChild(bitmap);
stg.removeChild(pen_mc);
pen_mc.graphics.clear();
bitmapData = bitmapDataTemp;
bitmapHapus = bitmapDataTemp;
bitmap = new Bitmap(bitmapData);
stg.addChild(bitmap);
stg.addChild(pen_mc);
//setChildIndex(pen_mc, stg.numChildren - 1);
}
function negatif(b)
{
trace("negatif");
stg.removeChild(bitmap);
stg.removeChild(pen_mc);
pen_mc.graphics.clear();
bitmapData = bitmapDataTemp2;
bitmap = new Bitmap(bitmapData);
stg.addChild(bitmap);
stg.addChild(pen_mc);
var matrix:Array = new Array(-1,0,0,0,255,0,-1,0,0,255,0,0,-1,0,255,0,0,0,1,0);
var cmFilter:ColorMatrixFilter = new ColorMatrixFilter(matrix);
bitmap.filters = [cmFilter];
var bitmaphapusTemp2 = new BitmapData(bitmap.width,bitmap.height);
bitmaphapusTemp2.draw(bitmap);
bitmapHapus = bitmaphapusTemp2;
}
function negatiftumb()
{
var matrix:Array = new Array(-1,0,0,0,255,0,-1,0,0,255,0,0,-1,0,255,0,0,0,1,0);
var cmFilter:ColorMatrixFilter = new ColorMatrixFilter(matrix);
thumbbitmap.filters = [cmFilter];
}
function sepia(b)
{
stg.removeChild(bitmap);
stg.removeChild(pen_mc);
pen_mc.graphics.clear();
bitmapData = bitmapDataTemp3;
bitmap = new Bitmap(bitmapData);
stg.addChild(bitmap);
stg.addChild(pen_mc);
var matrix:Array = new Array(0.3588,0.609,0.082,0,0,0.309,0.609,0.082,0,0,0.309,0.609,0.082,0,0,0,0,0,1,0);
var cmFilter:ColorMatrixFilter = new ColorMatrixFilter(matrix);
bitmap.filters = [cmFilter];
var bitmaphapusTemp2 = new BitmapData(bitmap.width,bitmap.height);
bitmaphapusTemp2.draw(bitmap);
bitmapHapus = bitmaphapusTemp2;
}
function sepiatumb()
{
var matrix:Array = new Array(0.3588,0.609,0.082,0,0,0.309,0.609,0.082,0,0,0.309,0.609,0.082,0,0,0,0,0,1,0);
var cmFilter:ColorMatrixFilter = new ColorMatrixFilter(matrix);
thumbbitmap.filters = [cmFilter];
}
function Brighten(b)
{
stg.removeChild(bitmap);
stg.removeChild(pen_mc);
pen_mc.graphics.clear();
bitmapData = bitmapDataTemp4;
bitmap = new Bitmap(bitmapData);
stg.addChild(bitmap);
stg.addChild(pen_mc);
var matrix:Array = new Array(2,0,0,0,0,0,2,0,0,0,0,0,2,0,0,0,0,0,1,0);
var cmFilter:ColorMatrixFilter = new ColorMatrixFilter(matrix);
bitmap.filters = [cmFilter];
var bitmaphapusTemp2 = new BitmapData(bitmap.width,bitmap.height);
bitmaphapusTemp2.draw(bitmap);
bitmapHapus = bitmaphapusTemp2;
}
function Brightentumb()
{
var matrix:Array = new Array(2,0,0,0,0,0,2,0,0,0,0,0,2,0,0,0,0,0,1,0);
var cmFilter:ColorMatrixFilter = new ColorMatrixFilter(matrix);
thumbbitmap.filters = [cmFilter];
}
function blackAndWhite(b)
{
stg.removeChild(bitmap);
stg.removeChild(pen_mc);
pen_mc.graphics.clear();
bitmapData = bitmapDataTemp5;
bitmap = new Bitmap(bitmapData);
stg.addChild(bitmap);
stg.addChild(pen_mc);
var matrix:Array = [1,1,1,0,0,1,1,1,0,0,1,1,1,0,0,0,0,0,1,0];
var cmFilter:ColorMatrixFilter = new ColorMatrixFilter(matrix);
bitmap.filters = [cmFilter];
var bitmaphapusTemp2 = new BitmapData(bitmap.width,bitmap.height);
bitmaphapusTemp2.draw(bitmap);
bitmapHapus = bitmaphapusTemp2;
}
function blackAndWhitethumb()
{
var matrix:Array = [1,1,1,0,0,1,1,1,0,0,1,1,1,0,0,0,0,0,1,0];
var cmFilter:ColorMatrixFilter = new ColorMatrixFilter(matrix);
thumbbitmap.filters = [cmFilter];
}
function hue(b)
{
stg.removeChild(bitmap);
stg.removeChild(pen_mc);
pen_mc.graphics.clear();
bitmapData = bitmapDataTemp6;
bitmap = new Bitmap(bitmapData);
stg.addChild(bitmap);
stg.addChild(pen_mc);
var matrix:Array = new Array();
matrix = matrix.concat([0,1,0,0,0]);// red
matrix = matrix.concat([0,0,1,0,0]);// green
matrix = matrix.concat([1,0,0,0,0]);// blue
matrix = matrix.concat([0,0,0,1,0]);// alpha
var my_filter:ColorMatrixFilter = new ColorMatrixFilter(matrix);
bitmap.filters = [my_filter];
var bitmaphapusTemp2 = new BitmapData(bitmap.width,bitmap.height);
bitmaphapusTemp2.draw(bitmap);
bitmapHapus = bitmaphapusTemp2;
}
function huetumb()
{
var matrix:Array = new Array();
matrix = matrix.concat([0,1,0,0,0]);// red
matrix = matrix.concat([0,0,1,0,0]);// green
matrix = matrix.concat([1,0,0,0,0]);// blue
matrix = matrix.concat([0,0,0,1,0]);// alpha
var my_filter:ColorMatrixFilter = new ColorMatrixFilter(matrix);
thumbbitmap.filters = [my_filter];
}
function HapusGris(event:MouseEvent)
{
pen_mc.graphics.clear();
}
function drawEfect(e:MouseEvent)
{
trace(e.currentTarget.funct);
e.currentTarget.funct(bitmapData);
rol.x = 363.95 - e.currentTarget.x;
setDepth(toolBox_mc);
setDepth(pcl);
}
toolBox_mc.pensil.addEventListener(MouseEvent.MOUSE_UP, drawPensil);
toolBox_mc.b.addEventListener(MouseEvent.MOUSE_UP, Hapusin);
function Hapusin(event:MouseEvent)
{
Clear = true;
klikASSor = false;
pcl.gotoAndStop(2);
Mouse.hide();
pcl.visible = true;
tool.setTarget(null);
stg.removeChild(tool);
}
function drawPensil(event:MouseEvent)
{
Clear = false;
klikASSor = false;
pcl.gotoAndStop(1);
Mouse.hide();
pcl.visible = true;
tool.setTarget(null);
stg.removeChild(tool);
}
function Hapus(event:MouseEvent)
{
while (stg.numChildren > 0)
{
stg.removeChildAt(0);
}
init();
video.attachCamera(kamera);
saven.visible = rol.visible = wdh.visible = false;
kamp.visible = true;
if (gantung)
{
removeChild(gtg);
gantung = false;
}
kk=new kekeran();
addChild(kk);
kk.y = stg.y = 54.75;
kk.x = stg.x = 202.5;
//removeChild(getChildByName("gantungan"));
//stg.removeChild(pen_mc);
pen_mc.graphics.clear();
//stg.removeChild(bitmap);
ambilFotoBtn.visible = true;
HapuslFotoBtn.visible = simpanlFotoBtn.visible = false;
toolBox_mc.myColorPicker.removeEventListener(Event.CHANGE, changeHandler);
toolBox_mc.penSizeOne_mc.removeEventListener(MouseEvent.CLICK,penDraw);
toolBox_mc.penSizeThree_mc.removeEventListener(MouseEvent.CLICK,penDraw);
toolBox_mc.penSizeTwenty_mc.removeEventListener(MouseEvent.CLICK,penDraw);
stg.removeEventListener(MouseEvent.MOUSE_DOWN, startDrawing);
stg.removeEventListener(MouseEvent.MOUSE_MOVE, isDrawing);
stg.removeEventListener(MouseEvent.MOUSE_UP, finishedDrawing);
}
//coding painting;
var stg:MovieClip,masck:MovieClip;;
var pen_mc:MovieClip;
var drawing:Boolean = false;
var penSize:uint = 1;
var penColor:Number = 0x000000;
var kk;
function init():void
{
rol.visible = wdh.visible = false;
kamp.visible = true;
kk=new kekeran();
stg = new MovieClip();
masck = new MovieClip();
pen_mc = new MovieClip();
addChild(stg);
stg.addChild(masck);
addChild(kk);
stg.addChild(sp);
masck.addChild(sp2);
sp.graphics.lineStyle(1, 0xFF0000, 0);
sp.graphics.beginFill(0x0,0);
sp.graphics.drawRect(0, 0, video.width, video.height);
sp.graphics.endFill();
sp2.graphics.lineStyle(1, 0xFF0000, 1);
sp2.graphics.beginFill(0x0,1);
sp2.graphics.drawRect(0, 0, video.width, video.height);
sp2.graphics.endFill();
stg.addChild(video);
stg.addChild(pen_mc);
kk.y = stg.y = 54.75;
kk.x = stg.x = 202.5;
stg.mask = masck;
}
function penDraw(e:MouseEvent)
{
(e.currentTarget.name =="penSizeOne_mc") ? (penSize = 1) : (e.currentTarget.name =="penSizeThree_mc") ? (penSize = 3) : (e.currentTarget.name =="penSizeTwenty_mc") ?(penSize = 20):null;
}
init();
function startDrawing(e:MouseEvent):void
{
if (! Clear && ! klikASSor)
{
trace("Pen Has started drawing");
drawing = true;
pen_mc.graphics.lineStyle(penSize, penColor, 1.0);
pen_mc.graphics.moveTo(stg.mouseX, stg.mouseY);
}
else
{
pen_mc.graphics.lineStyle(10);
pen_mc.graphics.lineBitmapStyle(bitmapHapus);
pen_mc.graphics.moveTo(stg.mouseX,stg.mouseY);
drawing = true;
}
}
function isDrawing(e:MouseEvent):void
{
if (drawing)
{
pen_mc.graphics.lineTo(stg.mouseX, stg.mouseY);
}
}
function finishedDrawing(e:MouseEvent):void
{
trace("finished drawing");
drawing = false;
}
function changeHandler(e:Event)
{
trace(e.target.selectedColor);
penColor = e.target.selectedColor;
}
function simpanKomputer(e:MouseEvent)
{
var bitmapDataTemp22 = new BitmapData(video.width,video.height);
bitmapDataTemp22.draw(stg);
var bitmap2 = new Bitmap(bitmapDataTemp22);
var jpgEncoder:JPGEncoder = new JPGEncoder(100);
var byteArray:ByteArray = jpgEncoder.encode(bitmapDataTemp22);
byteArray = PNGEncoder.encode(bitmapDataTemp22);
var fileReference:FileReference=new FileReference();
fileReference.save(byteArray, "Hasil.jpg");
}
Cuplikan Script 2
import flash.sensors.Accelerometer;
stage.addEventListener(MouseEvent.MOUSE_MOVE, pclGerak);
function pclGerak(e:MouseEvent):void
{
pcl.x = mouseX + 5;
pcl.y = mouseY - 5;
}
function asesories()
{
var arr1 = [toolBox_mc.rbt1,toolBox_mc.rbt2,toolBox_mc.rbt3,toolBox_mc.rbt4,toolBox_mc.mlt1,toolBox_mc.mlt2,toolBox_mc.kms1,toolBox_mc.kms2,toolBox_mc.kms3,toolBox_mc.bom1,toolBox_mc.bom2,toolBox_mc.bom3,toolBox_mc.bom4,toolBox_mc.bom5];
for each (var a in arr1)
{
a.addEventListener(MouseEvent.CLICK,klkAs);
}
}
var obj;
function klkAs(e:MouseEvent):void
{
Mouse.show();
pcl.visible = false;
klikASSor = true;
(e.currentTarget.name =="rbt1") ? (obj = "rambut1") :
(e.currentTarget.name =="rbt2") ? (obj = "rambut2") :
(e.currentTarget.name =="rbt3") ? (obj = "rambut3") :
(e.currentTarget.name =="rbt4") ? (obj = "rambut4") :
(e.currentTarget.name =="mlt1") ? (obj = "mulut1") :
(e.currentTarget.name =="mlt2") ? (obj = "mulut2") :
(e.currentTarget.name =="kms1") ? (obj = "kumis1") :
(e.currentTarget.name =="kms2") ? (obj = "kumis2") :
(e.currentTarget.name =="kms3") ? (obj = "kumis3") :
(e.currentTarget.name =="bom1") ? (obj = "boom1") :
(e.currentTarget.name =="bom2") ? (obj = "boom2") :
(e.currentTarget.name =="bom3") ? (obj = "boom3") :
(e.currentTarget.name =="bom4") ? (obj = "boom4") :
(e.currentTarget.name =="bom5") ? (obj = "boom5") :
null;
var ak:Class = getDefinitionByName(obj) as Class;
var ass2=new ak();
stg.addChild(tool);
stg.addChild(ass2);
ass2.x=(stg.width/2)-ass2.width;
ass2.y=(stg.height/2)-ass2.height;
//tool.setTarget(ass2);
ass2.addEventListener(MouseEvent.MOUSE_DOWN, tool.select);
stage.addEventListener(MouseEvent.MOUSE_DOWN, tool.deselect);
}
function edit(e:MouseEvent){
//tool.target=e.currentTarget;
tool.y=tool.x=0;
e.currentTarget.addEventListener(MouseEvent.MOUSE_DOWN, tool.select);
}















Subscribe to:
Post Comments (Atom)