BAD_ACCESS

おもにiOS、ときどき変な電子工作、ガジェット話。

#9 とにかく簡単にカメラで撮影してみるーC4でエフェクト付きカメラをつくる(1)

この記事は「一人アドベントカレンダー2013〜Lonely Advent Calender 2013〜」の10日目の記事です。

前回まではAudio Playerをつくるということで書いてまいりましたが、今回からは画像関連を扱うということでC4を使ってエフェクト付きカメラをつくってみようと思います。

今回はとにかく、とにかく簡単にカメラ撮影ができるようになればいいということで、画面をタップしたら撮影というこれ以上ないシンプルなカメラを作ります。

ほんとに簡単すぎてこれだけ…ってなってる。

まずはメンバ変数にC4Cameraを追加します。

@implementation C4WorkSpace {
    C4Camera *cam;
}

setupでまず、カメラの大きさを指定して初期化してやります。

-(void)setup {
    cam = [C4Camera cameraWithFrame:CGRectMake(0, 0, 240, 320)];
    [self.canvas addCamera:cam];
    cam.center = se
    [cam initCapture];
    (つづく)

そのあと、tapジェスチャを追加します。

    (つづき)
    [self addGesture:TAP name:@"capture" action:@"captureImage"];
    (つづく)

カメラ撮影のアクションを受け、画面に表示させるためのリスナーを追加します。

    (つづき)
    [self listenFor:@"imageWasCaptured" fromObject:cam andRunMethod:@"putCapturedImageOnCanvas"];
}

あとは撮影メソッドと、

-(void)captureImage {
    [cam captureImage];
}

撮影アクション後の配置メソッドを。

-(void)putCapturedImageOnCanvas {
    C4Image *img = cam.capturedImage;
    img.width = 240.0f;
    img.center = self.canvas.center;
    [self.canvas addImage:img];
}

はい!以上です。

画面をタップするとパシャっと撮れます!カメラロールに保存はできてませんが、簡単すぎて拍子抜けしますね。 次回はもう少しカメラっぽい機能を追加していく予定です。