diff --git a/Kotlin/lib/src/main/java/com/wolt/blurhashkt/BlurHashDecoder.kt b/Kotlin/lib/src/main/java/com/wolt/blurhashkt/BlurHashDecoder.kt index 3278868b..eb45483a 100644 --- a/Kotlin/lib/src/main/java/com/wolt/blurhashkt/BlurHashDecoder.kt +++ b/Kotlin/lib/src/main/java/com/wolt/blurhashkt/BlurHashDecoder.kt @@ -114,9 +114,9 @@ object BlurHashDecoder { var g = 0f var b = 0f for (j in 0 until numCompY) { + val cosY = cosinesY.getCos(calculateCosY, j, numCompY, y, height) for (i in 0 until numCompX) { val cosX = cosinesX.getCos(calculateCosX, i, numCompX, x, width) - val cosY = cosinesY.getCos(calculateCosY, j, numCompY, y, height) val basis = (cosX * cosY).toFloat() val color = colors[j * numCompX + i] r += color[0] * basis diff --git a/Swift/BlurHashDecode.swift b/Swift/BlurHashDecode.swift index 7fe3b398..70e8c3e8 100644 --- a/Swift/BlurHashDecode.swift +++ b/Swift/BlurHashDecode.swift @@ -37,8 +37,9 @@ extension UIImage { var b: Float = 0 for j in 0 ..< numY { + let basisY = cos(Float.pi * Float(y) * Float(j) / Float(height) for i in 0 ..< numX { - let basis = cos(Float.pi * Float(x) * Float(i) / Float(width)) * cos(Float.pi * Float(y) * Float(j) / Float(height)) + let basis = cos(Float.pi * Float(x) * Float(i) / Float(width)) * basisY) let colour = colours[i + j * numX] r += colour.0 * basis g += colour.1 * basis