2013-03-20 51 views
0

嗨,這可能看起來像一個愚蠢的,但我是一個學生試圖做一個增強現實應用程序,我發現這個工具包的AR東西,我把它帶入閃光燈生成器,但我從來沒有真正使用過任何外部工具包之前,我不知道我在做什麼。在Actionscript中的編譯器錯誤

目前它一直說它試圖訪問未定義的屬性@ ar_cam,ar_vid,ar_marker,& ar_params。

我不知道我是否做錯了什麼,或者如果它與我如何使用外部工具包有關。

任何人都可以給我這個建議將不勝感激。

這是到目前爲止我的代碼:

package 
{ 
    import flash.display.BitmapData; 
    import flash.display.Sprite; 
    import flash.media.Camera; 
    import flash.media.Video; 
    import flash.utils.ByteArray; 

    import org.libspark.flartoolkit.core.FLARCode; 
    import org.libspark.flartoolkit.core.param.FLARParam; 

    [SWF(width="320", height="480", frameRate="30", backgroundColor="#FFFFFF")] 

    public class Main extends Sprite 
    { 
     [Embed(source="marker.pat", mimeType="application/octet-stream")] 
     private var marker:Class; 

     [Embed(source="camera_para.dat", mimeType="application/octet-stream")] 
     private var cam_params:Class; 

     public function Main() 
     { 
      createFLAR(); 
      createCam(); 
     } 
     public function createFLAR() 
     { 
      ar_params = new FLARParam(); 
      ar_marker = new FLARCode(16, 16); 
      ar_params.loadARParam(new cam_params() as ByteArray); 
      ar_marker.loadARPatt(new marker()); 
     } 
     public function createCam() 
     { 
      ar_vid = new Video(320, 480); 
      ar_cam = Camera.getCamera(); 
      ar_cam.setMode(320, 480, 30); 
      ar_vid.attachCamera(ar_cam); 
      addChild(ar_vid); 
     } 
    } 
} 

回答

3

你不能在任何的這些功能創建的對象的變量,以便替換

ar_params = new FLARParam(); 
ar_marker = new FLARCode(16, 16); 

var ar_params:FLARParam = new FLARParam(); 
var ar_marker:FLARCode = new FLARCode(16, 16); 

ar_vid = new Video(320, 480); 
ar_cam = Camera.getCamera(); 

var ar_vid:Video = new Video(320, 480); 
var ar_cam:Camera = Camera.getCamera(); //I don't know if Camera is right after the : so you could use * if that doesn't work 

在ActionScript 3的語法如下:

var [nameOfObject]:[typeOfObject] = new [ObjectClass](params); 

好運

+0

感謝的是擺脫了這些錯誤的反正。這總是一個愚蠢的錯誤。 – 2013-03-21 15:11:45