Skip to content

Instantly share code, notes, and snippets.

@ramsaylanier
Created December 11, 2017 15:55
Show Gist options
  • Select an option

  • Save ramsaylanier/d4af90d38d093400e32e864d4fa4903b to your computer and use it in GitHub Desktop.

Select an option

Save ramsaylanier/d4af90d38d093400e32e864d4fa4903b to your computer and use it in GitHub Desktop.
onmessage = function (e) {
const data = e.data
const length = data.data.length
const BLOCKSIZE = 5
const STEPS = 4
let i = -4
let count = 0
let rgb = {r: 0, g: 0, b: 0}
while ((i += BLOCKSIZE * STEPS) < length) {
++count
rgb.r += data.data[i]
rgb.g += data.data[i + 1]
rgb.b += data.data[i + 2]
}
// ~~ used to floor values
rgb.r = ~~(rgb.r / count)
rgb.g = ~~(rgb.g / count)
rgb.b = ~~(rgb.b / count)
postMessage(rgb)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment