pike.git
/
src
/
modules
/
Image
/
dct.c
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/src/modules/Image/dct.c:1:
-
/* $Id: dct.c,v 1.
17
2000
/
12
/
01
08
:
10
:
00
hubbe
Exp $ */
+
/* $Id: dct.c,v 1.
18
2001
/
07/
12
13
:
29
:
50
grubba
Exp $ */
/* **! module Image **! note
-
**! $Id: dct.c,v 1.
17
2000
/
12
/
01
08
:
10
:
00
hubbe
Exp $
+
**! $Id: dct.c,v 1.
18
2001
/
07/
12
13
:
29
:
50
grubba
Exp $
**! class Image */ #include "global.h" #include <math.h> #include <ctype.h> #include "stralloc.h" #include "global.h"
pike.git/src/modules/Image/dct.c:138:
for (x=0; x<THIS->xsize; x++) costbl[x]=cos( (2*x+1)*u*pi/xsz2 ); for (y=0; y<THIS->ysize; y++) { z0=cos( (2*y+1)*v*pi/ysz2 ); for (x=0; x<THIS->xsize; x++) { double z; z = costbl[x] * z0;
-
sum.
r+
=pix->r*z;
-
sum.
g+
=pix->g*z;
-
sum.
b+
=pix->b*z;
+
sum.
r +
=
(float)(
pix->r*z
)
;
+
sum.
g +
=
(float)(
pix->g*z
)
;
+
sum.
b +
=
(float)(
pix->b*z
)
;
pix++; } }
-
sum.r*=d;
-
sum.g*=d;
-
sum.b*=d;
+
sum.r
*=
(float)
d;
+
sum.g
*=
(float)
d;
+
sum.b
*=
(float)
d;
area[u+v*THIS->xsize]=sum; } fprintf(stderr,"."); fflush(stderr); } fprintf(stderr,"\n"); dx=((double)(THIS->xsize-1))/(img->xsize); dy=((double)(THIS->ysize-1))/(img->ysize); pix=img->img;
pike.git/src/modules/Image/dct.c:177:
for (u=0; u<THIS->xsize; u++) costbl[u]=cos( (2*xp+1)*u*pi/xsz2 ); for (v=0; v<THIS->ysize; v++) { z0=cos( (2*yp+1)*v*pi/ysz2 )*(v?1:c0)/4.0; for (u=0; u<THIS->xsize; u++) { double z; z = (u?1:c0) * costbl[u] * z0;
-
sum.
r+
=val->r*z;
-
sum.
g+
=val->g*z;
-
sum.
b+
=val->b*z;
+
sum.
r +
=
(float)
val->r*z;
+
sum.
g +
=
(float)
val->g*z;
+
sum.
b +
=
(float)
val->b*z;
val++; } }
-
sum.r*=enh;
-
sum.g*=enh;
-
sum.b*=enh;
+
sum.r
*=
(float)
enh;
+
sum.g
*=
(float)
enh;
+
sum.b
*=
(float)
enh;
pix->r=testrange((DOUBLE_TO_INT(sum.r+0.5))); pix->g=testrange((DOUBLE_TO_INT(sum.g+0.5))); pix->b=testrange((DOUBLE_TO_INT(sum.b+0.5))); pix++; } fprintf(stderr,"."); fflush(stderr); } free(area); free(costbl); pop_n_elems(args); push_object(o); }