All pastes #802862 Raw Edit

heron

public c v1 · immutable
#802862 ·published 2007-11-30 18:34 UTC
rendered paste body
void smooth(int dim, pixel *src, pixel *dst){    register int i;    register int j;    register int d = dim;    for(j = 0; j < d; ++j)    {        register int rdx = j;        for(i = 0; i < d; ++i)        {            register int red = 0;            register int green = 0;            register int blue = 0;            register int num = 0;            register int min_i = min(i+1,d-1);            register int min_j = min(j+1,d-1);            register int max_i = max(i-1,0);            register int jj = max(j-1,0);            for(; jj <= min_j; ++jj)            {                register int rdx2 = jj + max_i * d;                register int ii = max_i;                for(; ii <= min_i; ++ii)                 {                    red += src[rdx2].red;                    green += src[rdx2].green;                    blue += src[rdx2].blue;                    ++num;                    rdx2 += d;                }            }            dst[rdx].red = (red / num);            dst[rdx].green = (green / num);            dst[rdx].blue = (blue / num);            rdx += d;        }    }}