Swift転職なら=>【LevTech】
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大

頭痛が減ったので共有です!

rebuild.fmを応援しています!

HOME > モザイク描画

UIPixellateでモザイク描画

先日の描画(四角、丸、三角、線)の記事で最後の目の箇所をモザイクにしたかったのですが、できなかったのでこちらで検証します。

モザイク前 ー> 



参考:005 画像のモザイク処理
※上記サイトですが、とても丁寧にシンプルに記載されているのでオススメです!

まずはローカルの上記顔画像全体画像にモザイクをかけてみます


        //CIImageと表示用のImageView作成
        let myCIImage = CIImage(image: UIImage(named: "swift-salaryman-face.png"))
        var myImageView: UIImageView!
        
        //表示準備
        let myUIImage: UIImage = UIImage(CIImage: myCIImage);
        myImageView = UIImageView(frame: CGRectMake(0, 0, myUIImage.size.width, myUIImage.size.height));
        myImageView.image = myUIImage;
        self.view.backgroundColor = UIColor.blackColor();
        self.view.addSubview(myImageView);
        
        //この状態だと普通の画像
        
        //以下を追加するとモザイク処理
        var myPixellateFilter = CIFilter(name: "CIPixellate");
        myPixellateFilter.setValue(myCIImage, forKey: kCIInputImageKey);//対象のCIImageを指定
        let myCIImage2 : CIImage = myPixellateFilter.outputImage;
        let myUIImage2: UIImage = UIImage(CIImage: myCIImage2);
        myImageView.image = myUIImage2;
        myImageView.setNeedsDisplay();
        

画像全体のモザイク化には成功しましたが、本来は目の部分だけをモザイクをかけたいので調査を続けます。

結果


またもや、、、時間がなくなってしまいました。。。。どうやらUIBeizerpathで描画したUIViewをUIImageに変換、そこからCIImageに変換してモザイクをかけるようです。 このあたりも簡単にモザイクかけられるUtilでも作ってみようと思います。

改めて時間をもうけて別記事にて追加してみますorz

作成しました。(2014/11/19) 参考:UIViewからUIImageを作成

↓こんな記事もありますよ!

2Dバーコードをスキャンする

なんと2Dバーコード読み込み機能はAVFoundationに実装されています。GitHubにbowstさんが公開しているシンプルなソースがあったので共有です

UINavigationController

TabBarとUITableViewControllerを利用して一つのUIViewControllerだけをクリックすると右にスライドするUINavigationControlerを 利用したサンプルを記載します。というのも、AppDelegate内でUINavigationをself.windowのrootviewcontrollerにセットする 方法は多々あったのですが、AppDelegate内を利用しないでNavigationを実装する方法がなくハマっていましたのでを以下記載します

AppleWatchとiPhone連携をナターシャさんのデモを参考に調査

先日Swiftサラリーマンに関してTwitterでつぶやいてくださっていたまっちょさん に教えていただいたAppleWatchアプリ作成に関する海外のWatchKitのナターシャさんの記事(Architecting Your App for the Apple Watch)を教えていただきました、 動画やプレゼンもあり英語でしたがサンプルコードも付いていて分かりやすかったです!
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!