922
922
NUX_RETURN_IF_FALSE (height_ != 0);
924
924
ImageSurface temp (format_, width_, height_);
926
int gauss_w = 1 + 2 * 3; // Level(+1)
927
int mask[7] = {1,6,15,20,15,6,1}; // Mask
928
int gauss_sum = 64; // Sum
937
for (int j = 0; j < height_ - 1; j++)
939
for (int i = gauss_w - 1; i < width_ - 1; i++)
946
for (int k = 0; k < gauss_w; k++)
948
int color = Read(i - (gauss_w-1) + k, j);
949
R = NUX_RGBA_GET_RED (color);
950
G = NUX_RGBA_GET_GREEN (color);
951
B = NUX_RGBA_GET_BLUE (color);
952
A = NUX_RGBA_GET_ALPHA (color);
965
temp.Write32b(i, j, NUX_RGBA (R, G, B, A));
970
for (int j = gauss_w - 1; j < height_ - 1; j++)
972
for (int i = 0; i < width_ - 1; i++)
979
for (int k = 0; k < gauss_w; k++)
981
int color = Read(i, j - (gauss_w-1) + k);
982
R = NUX_RGBA_GET_RED (color);
983
G = NUX_RGBA_GET_GREEN (color);
984
B = NUX_RGBA_GET_BLUE (color);
985
A = NUX_RGBA_GET_ALPHA (color);
998
Write32b(i, j, NUX_RGBA (R, G, B, A));
926
int gauss_w = 1 + 2 * 3; // Level(+1)
927
int mask[7] = {1,6,15,20,15,6,1}; // Mask
928
int gauss_sum = 64; // Sum
937
for (int j = 0; j < height_ - 1; j++)
939
for (int i = gauss_w - 1; i < width_ - 1; i++)
946
for (int k = 0; k < gauss_w; k++)
948
int color = Read(i - (gauss_w-1) + k, j);
949
R = NUX_RGBA_GET_RED (color);
950
G = NUX_RGBA_GET_GREEN (color);
951
B = NUX_RGBA_GET_BLUE (color);
952
A = NUX_RGBA_GET_ALPHA (color);
965
temp.Write32b(i, j, NUX_RGBA (R, G, B, A));
970
for (int j = gauss_w - 1; j < height_ - 1; j++)
972
for (int i = 0; i < width_ - 1; i++)
979
for (int k = 0; k < gauss_w; k++)
981
int color = Read(i, j - (gauss_w-1) + k);
982
R = NUX_RGBA_GET_RED (color);
983
G = NUX_RGBA_GET_GREEN (color);
984
B = NUX_RGBA_GET_BLUE (color);
985
A = NUX_RGBA_GET_ALPHA (color);
998
Write32b(i, j, NUX_RGBA (R, G, B, A));
1003
1003
///////////////////////////////////////////////////////////////////