SwiftのGenericsで少し凝ったこと(?)をやろうとしてハマったのでメモ。 動作を確認した環境 環境 情報 Xcode 6.3 (6D570) iOS 8.3 Swift 1.2 Date 2015/5/15 1. はじめに 普通に、線形補間を行う関数を書いてみた。とりあえず、型はIntで。 /// 単純な線形補間(Int版) func interpolation(y0: Int, y1: Int, x0: Int, x1: Int, x: Int) -> Int { if x0 == x1 { return y0 } else { return (y0 * (x1 - x) + y1 * (x - x0)) / (x1 - x0) } } Playgroundで実験するとこんな感じ。 やっぱり、Doubleが欲しくなったのでDouble版を別に作成。 /// 単純な線形補間(Do
![SwiftのGenericsでハマったメモ - 開発メモ](https://cdn-ak-scissors.b.st-hatena.com/image/square/c3953f54144c0d9e3542216d23c2cfdf4325ab71/height=288;version=1;width=512/http%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fs%2Fsee_ku%2F20150515%2F20150515203455.png)