Wow! Thanks, Nicolai. It looks very cool! :) GLMGaussianBlurBrickRenderer was just for lulz and is so sloooow... On Wed, Dec 31, 2014 at 9:13 PM, Nicolai Hess <nicolaihess@web.de> wrote:
I saw this GLMGaussianBlurBrickRenderer class #example nice!
And once I did something similiar, a Morph that blurres the underlaying display.
But instead of doing a convolution (convolve image with kernel) by hand, I convolve the kernel with the image by using copyBits from the BitBlt:
| form temp dest from to | form := Display contentsOfArea: self bounds. temp := Form extent: self extent depth: 32. temp getCanvas fillColor: Color white darker. dest := Form extent: self extent depth: 32. dest getCanvas fillColor: Color white darker. to := kernel size // 2. from := -1 * to. (from to: to) do: [ :i | temp copyBits: form at: i @ 0 translucent: (kernel at: i + to + 1) ]. (from to: to) do: [ :i | dest copyBits: temp at: 0 @ i translucent: (kernel at: i + to + 1) ]. aCanvas drawImage: dest at: self bounds topLeft.