public SimpleLiteD3d(NyARToolkitCS topLevelForm, ResourceBuilder i_resource) { NyMath.initialize(); this._capture = i_resource.createWmCapture(); this._capture.setOnSample(this); this._d3dmgr = i_resource.createD3dManager(topLevelForm); this._back_ground = i_resource.createBackGround(this._d3dmgr); this._d3dcube = new ColorCube(this._d3dmgr.d3d_device,40); //AR用のパターンコードを読み出 NyARCode code = i_resource.createNyARCode(); //ARラスタを作る(DirectShowキャプチャ仕様)。 this.m_raster = i_resource.createARRaster(); //1パターンのみを追跡するクラスを作成 this.m_ar = new NyARSingleDetectMarker(i_resource.ar_param, code, 80.0, this.m_raster.getBufferType()); //計算モードの設定 this.m_ar.setContinueMode(false); ////立方体(頂点数8)の準備 return; }
public SimpleLiteD3d(NyARToolkitCS topLevelForm, ResourceBuilder i_resource) { NyMath.initialize(); this._capture = i_resource.createWmCapture(); this._capture.setOnSample(this); this._d3dmgr = i_resource.createD3dManager(topLevelForm); this._back_ground = i_resource.createBackGround(this._d3dmgr); this._d3dcube = new ColorCube(this._d3dmgr.d3d_device, 40); //AR用のパターンコードを読み出 NyARCode code = i_resource.createNyARCode(); //ARラスタを作る(DirectShowキャプチャ仕様)。 this.m_raster = i_resource.createARRaster(); //1パターンのみを追跡するクラスを作成 this.m_ar = new NyARSingleDetectMarker(i_resource.ar_param, code, 80.0, this.m_raster.getBufferType()); //計算モードの設定 this.m_ar.setContinueMode(false); ////立方体(頂点数8)の準備 return; }
static void Main() { // フォームとメインサンプルクラスを作成 using (NyARToolkitCS frm = new NyARToolkitCS()) { ResourceBuilder nyar_res; try { nyar_res = new ResourceBuilder(); } catch (Exception e) { MessageBox.Show(e.Message, "SimpleLiteD3d::デバイスの初期化に失敗しました。"); return; } using (SimpleLiteD3d sample = new SimpleLiteD3d(frm,nyar_res)) { // メインフォームを表示 frm.Show(); //キャプチャ開始 sample.start(); Stopwatch sw = new Stopwatch(); // フォームにフォーカスがある間はループし続ける while (frm.Focused) { sw.Start(); // メインループ処理を行う sample.MainLoop(); //スレッドスイッチ Thread.Sleep(0); // イベントがある場合はその処理する Application.DoEvents(); sw.Stop(); //sample.fps_x_100 = (int)(1000 * 100 / (sw.ElapsedMilliseconds+1)); sw.Reset(); } //キャプチャの停止 //sample.stop(); } } return; }
static void Main() { // フォームとメインサンプルクラスを作成 using (NyARToolkitCS frm = new NyARToolkitCS()) { ResourceBuilder nyar_res; try { nyar_res = new ResourceBuilder(); } catch (Exception e) { MessageBox.Show(e.Message, "SimpleLiteD3d::デバイスの初期化に失敗しました。"); return; } using (SimpleLiteD3d sample = new SimpleLiteD3d(frm, nyar_res)) { // メインフォームを表示 frm.Show(); //キャプチャ開始 sample.start(); Stopwatch sw = new Stopwatch(); // フォームにフォーカスがある間はループし続ける while (frm.Focused) { sw.Start(); // メインループ処理を行う sample.MainLoop(); //スレッドスイッチ Thread.Sleep(0); // イベントがある場合はその処理する Application.DoEvents(); sw.Stop(); //sample.fps_x_100 = (int)(1000 * 100 / (sw.ElapsedMilliseconds+1)); sw.Reset(); } //キャプチャの停止 //sample.stop(); } } return; }