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 / 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 08:14
【Swift】2つの配列を交互につなぎ合わせる ref: http://qiita.com/ken0nek/items/55e9ac0be32d35fbaa67
let num = 1234
// Int -> [String]
let numList = String(num).characters.flatMap { String($0) }
print(numList)
// ["1", "2", "3", "4"]
let opeList = ["+", "-", "*"]
let zipped = zip(numList, opeList + [""]) // 要素数を合わせる
@ken0nek
ken0nek / NSExpression
Last active September 28, 2016 08:21
【Swift】文字列の計算式を処理する ref: http://qiita.com/ken0nek/items/a5e2be8b27d6b19d50dd
let numList = [5, 8, 4, 2].map { String(Double($0)) } // 割り算を正確に行うためにDouble型への変換をはさむ
print(numList)
// ["5.0", "8.0", "4.0", "2.0"]
let opeList = ["+", "/", "-"]
let zipped = zip(numList, opeList + [""])
let equation = zipped.reduce("") { $0 + $1.0 + $1.1 }
print(equation)
@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: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
}
let start = NSDate()
// someMethod
let timeElapsed = -startTime.timeIntervalSinceNow
print(timeElapsed)