ページ

2008年10月13日月曜日

波紋(その16)

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク

SimpleCapへ組み入れてみる。まずはウィンドウキャプチャで選択したウィンドウを波立たせてみよう。視覚効果が良さそうなら採用することにする。

見た目の確認が重要なので動作を最優先させる。そこで前回までのコードをコピーして動くものを組み立てる。
手始めに主要部分を Transaction という新クラスに記述する。

Transaction.h

@interface Transition : NSObject {

NSNumber *_inputTime;
NSNumber *_inputWidth;
NSNumber *_inputScale;
NSNumber *_framePerSec;
NSNumber *_totalSec;

CIFilter* _filter;
NSInteger _count;

NSView* _view;
BOOL _finished;
id _target;
}

@property (retain) NSNumber* inputTime;
@property (retain) NSNumber *inputWidth;
@property (retain) NSNumber *inputScale;
@property (retain) NSNumber *framePerSec;
@property (retain) NSNumber *totalSec;

- (id)initWithView:(NSView*)view;
- (void)draw;
- (void)startWithTarget:(id)target CGImage:(CGImageRef)cgimage;

@end


トランジションで使うパラメータをメンバ変数にもち、イニシャライザに、描画メソッド(draw)、トランジション開始のメソッドを用意した。これと SimpleCap既存のウィンドウキャプチャを組み合わせてみる。

実行してみる。



うーむ。波だっているようだが、色がおかしい上に上下反転(フリップ)している。
一筋縄ではいかないようだ。