发新话题
打印

FLASH大头贴

FLASH大头贴

复制内容到剪贴板
代码:
原来有几个前辈贴过了一些关于这个技术的代码,有JAVA的,也有FLASH COM的。现在我把FLASH部分通过摄象头获得图象信息的代码贴出来。供大家参考。
    这段代码是我参考了别人的代码自己写出来的。原来的那个网站里总共提供了两个类来实现这个问题。估计贴出来大多数人也会看的眼花缭乱不知所以(其实我也没太看明白)。所以按原来程序的思路自己重新写了一部分。大多数语句都写了注释。如果大家有什么不明白的,欢迎跟贴讨论
    注意:本程序需要Video的支持。具体添加办法请搜索FLASH8帮助(这个东西是FLASH库本身自带的)
/*FLASH大头贴原程序
/*程序编写:Benmouse 2005-12-01
import flash.display.BitmapData; //要应用这个对象。。必须要包含一下

myCrame=Camera.get();      //创建摄象头对象
myVideo.attachVideo(myCrame);   //显示视频
var imger:BitmapData = new BitmapData(myVideo._width, myVideo._height, false);
imgShow.attachBitmap(imger, this.getNextHighestDepth(), "auto", true);
var thehang:Number=0;
var ID:Number;
var PX:Array=new Array();
btn1.onRelease=function()
{
imger.draw(myVideo); //imger是场景中一个空的组件,用来显示myVideo的图象
thehang=0;
_root.ID=setInterval(makeImg, 5);
}
function makeImg()
{
var pix:Number;
var pixer:String;
PX[thehang]=new Array();
for(w=0;w<imgShow._width;w++)
{
  pix=imger.getPixel(w,thehang);
  pixer=pix.toString(16);
  if(pix == 0xFFFFFF) pixer = ""; // don’t send blank pixel
  PX[thehang].push(pixer);
}
thehang+=1;
if(thehang>=imgShow._height)
{
  clearInterval(_root.ID);
  imger.dispose();
  sendVars();
}
}
function sendVars()
{
sender=new LoadVars();
sender.w=myVideo._width;
sender.h=myVideo._height;
  
for(i=0;i<sender.h;i++)
{
     sender["PX"+i]=_root.PX[i];
}
sender.send("send.php","_blank","POST");
}

如果你觉得这篇文章很棒,你就可以

收藏到QQ书签
海纳百川  有容乃大

TOP

死家伙 我来坐沙发了
本帖最近评分记录
  • 评分者:QQ空间社区 赠送:经验+3 评语:抢到沙发  日期:2008-8-28 23:50


点击进入私密相册

                                                                                D·īл.欧美主流素材
                                                                              D.iл --------QQ空间


TOP

TOP



地板
..............⌒.ˊ)
           ╰  ╮
     .ˊ╰╯ ;﹎.淺唱∨、:_________額演的素額ノ

TOP

发新话题