| 26 |
{ |
{ |
| 27 |
|
|
| 28 |
|
|
| 29 |
|
import flash.display.*; |
| 30 |
import jp.nyatla.nyartoolkit.as3.core.*; |
import jp.nyatla.nyartoolkit.as3.core.*; |
| 31 |
import jp.nyatla.nyartoolkit.as3.core.raster.*; |
import jp.nyatla.nyartoolkit.as3.core.raster.*; |
| 32 |
import jp.nyatla.nyartoolkit.as3.core.raster.rgb.*; |
import jp.nyatla.nyartoolkit.as3.core.raster.rgb.*; |
| 35 |
import jp.nyatla.nyartoolkit.as3.core.types.*; |
import jp.nyatla.nyartoolkit.as3.core.types.*; |
| 36 |
import jp.nyatla.nyartoolkit.as3.markersystem.NyARSensor; |
import jp.nyatla.nyartoolkit.as3.markersystem.NyARSensor; |
| 37 |
import org.libspark.flartoolkit.core.raster.*; |
import org.libspark.flartoolkit.core.raster.*; |
| 38 |
|
import org.libspark.flartoolkit.core.raster.rgb.*; |
| 39 |
import org.libspark.flartoolkit.core.rasterfilter.*; |
import org.libspark.flartoolkit.core.rasterfilter.*; |
| 40 |
|
|
| 41 |
|
|
| 42 |
|
|
| 43 |
/** |
/** |
| 44 |
* このクラスは、{@link NyARMarkerSystem}へ入力するセンサ情報(画像)を管理します。 |
* このクラスは、Flash向けにチューニングしたNyARSensorクラスです。 |
| 45 |
* センサ情報のスナップショットに対するアクセサ、形式変換機能を提供します。 |
* {@link Video}、{@link BitmapData}等の{@link IBitmapDrawable}インタフェイスを持つ |
| 46 |
* 管理している情報は、元画像(カラー)、グレースケール画像、ヒストグラムです。 |
* オブジェクトをセットできます。 |
| 47 |
* このインスタンスは{@link NyARMarkerSystem#update(NyARSensor)}関数により、{@link NyARMarkerSystem}に入力します。 |
* オブジェクトのセットには、{@link #update_2}を使います。 |
| 48 |
*/ |
*/ |
| 49 |
public class FLARSensor extends NyARSensor |
public class FLARSensor extends NyARSensor |
| 50 |
{ |
{ |
| 57 |
public function FLARSensor(i_size:NyARIntSize) |
public function FLARSensor(i_size:NyARIntSize) |
| 58 |
{ |
{ |
| 59 |
super(i_size); |
super(i_size); |
| 60 |
|
this._raster = new FLARRgbRaster(i_size.w, i_size.h); |
| 61 |
|
this.update(this._raster); |
| 62 |
} |
} |
| 63 |
/** |
/** |
| 64 |
* この関数は、画像ドライバに依存するインスタンスを生成する。 |
* この関数は、画像ドライバに依存するインスタンスを生成する。 |
| 76 |
private var _gstobin:FLARGs2BinFilter; |
private var _gstobin:FLARGs2BinFilter; |
| 77 |
private var _bin_raster:FLARBinRaster |
private var _bin_raster:FLARBinRaster |
| 78 |
private var _bin_id_ts:int; |
private var _bin_id_ts:int; |
| 79 |
private var _bin_th:int=-1; |
private var _bin_th:int = -1; |
| 80 |
|
private var _raster:FLARRgbRaster; |
| 81 |
|
/** |
| 82 |
|
* i_thで2値化した画像の参照値を得ます。この関数は{@link FLARMarkerSystem}用の関数です。 |
| 83 |
|
* @return |
| 84 |
|
* [readonly] |
| 85 |
|
*/ |
| 86 |
public function getBinImage(i_th:int):FLARBinRaster |
public function getBinImage(i_th:int):FLARBinRaster |
| 87 |
{ |
{ |
| 88 |
if((this._gs_id_ts!=this._bin_id_ts)||(this._bin_th!=i_th)){ |
if((this._gs_id_ts!=this._bin_id_ts)||(this._bin_th!=i_th)){ |
| 92 |
} |
} |
| 93 |
return this._bin_raster; |
return this._bin_raster; |
| 94 |
} |
} |
| 95 |
|
public function update_2(i_bmp:IBitmapDrawable):void |
| 96 |
|
{ |
| 97 |
|
this._raster.getBitmapData().draw(i_bmp); |
| 98 |
|
this.updateTimeStamp(); |
| 99 |
|
} |
| 100 |
} |
} |
| 101 |
} |
} |