Skip to content

Instantly share code, notes, and snippets.

View ken0nek's full-sized avatar

Ken Tominaga ken0nek

  • San Francisco, CA
View GitHub Profile
// フォトライブラリを開く
-(IBAction)openLibrary{
// 画像の取得先をフォトライブラリに設定
UIImagePickerControllerSourceType sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
// フォトライブラリを使用可能かどうか判定する
if ([UIImagePickerController isSourceTypeAvailable:sourceType]) {
// UIImagePickerControllerを初期化・生成
// カメラを起動する
-(IBAction)launchCamera{
// 画像の取得先をカメラに設定
UIImagePickerControllerSourceType sourceType = UIImagePickerControllerSourceTypeCamera;
// カメラが使用可能かどうか判定する
if ([UIImagePickerController isSourceTypeAvailable:sourceType]) {
// UIImagePickerControllerを初期化・生成
-(IBAction)postToTwitter{
// ServiceTypeをTwitterに設定
NSString *serviceType = SLServiceTypeTwitter;
// Twitterが利用可能かチェック
if ([SLComposeViewController isAvailableForServiceType:serviceType]) {
// SLComposeViewControllerを初期化・生成
SLComposeViewController *twitterPostVC = [[SLComposeViewController alloc] init];
// storyboardに置いたimageViewからCIImageを生成する
let image = CIImage(CGImage: self.sampleImageView.image?.CGImage)
// 顔認識なのでTypeをCIDetectorTypeFaceに指定する
let detector = CIDetector(ofType: CIDetectorTypeFace, context: nil, options: [CIDetectorAccuracy: CIDetectorAccuracyHigh])
// 取得するパラメーターを指定する
let options = [CIDetectorSmile : true, CIDetectorEyeBlink : true]
// 画像から特徴を抽出する
@ken0nek
ken0nek / integral.swift
Last active December 11, 2015 10:39
integral, sigma
extension Double : ForwardIndexType {
public func successor() -> Double {
return self + 1.0
}
}
infix operator ∫ { associativity left precedence 120 }
func ∫ (left: Range<Double>, right: (Double -> Double)) -> Double {
let dx = (left.endIndex - left.startIndex) / 1000
let r = left.startIndex.stride(to: left.endIndex, by: dx)
//
// RootViewController.swift
// iOS9Sampler
//
// Created by Shuichi Tsutsumi on 2015/06/10.
// Copyright © 2015 Shuichi Tsutsumi. All rights reserved.
//
import UIKit
var result: [(hasSmile: Bool, leftEyeClosed: Bool, rightEyeClosed: Bool)] = []
for feature in features as! [CIFaceFeature] {
result.append((feature.hasSmile, feature.leftEyeClosed, feature.rightEyeClosed))
}
if result.count >= 1 {
if result[0].hasSmile {
self.playerAttack()
@ken0nek
ken0nek / file0.swift
Last active September 28, 2016 06:15
【Swift】enumerateを使ったときの値の受け取り方 ref: http://qiita.com/ken0nek/items/5c9c3f5138fbbaf5e82c
[1, 2, 3, 4] -> ["0:1", "1:2", "2:3", "3:4"]
@ken0nek
ken0nek / file0.swift
Last active September 28, 2016 06:26
【Swift】Int型の数字から[Int]型の配列を生成する。数字を桁ごとに分ける。 ref: http://qiita.com/ken0nek/items/825289a7f3ea1d840337
let num = 1234
let numList = "\(num)".characters.flatMap { Int("\($0)") }
// let numList = String(num).characters.flatMap { Int(String($0)) }
print(numList)
// [1, 2, 3, 4]
@ken0nek
ken0nek / file0.swift
Last active September 28, 2016 06:34
【Swift】2つの配列から辞書を作る ref: http://qiita.com/ken0nek/items/8e97692eeaeda6eb5770
let romanStrs = ["M", "D", "C", "L", "X", "V", "I"]
let romanNums = [1000, 500, 100, 50, 10, 5, 1]
let romanToNum = zip(romanStrs, romanNums).reduce([String: Int]()) { (dic, t) in
var dic = dic
dic[t.1] = t.0
return dic
}