--- ray/src/hd/rhpict2.c 1999/03/10 16:15:19 3.9 +++ ray/src/hd/rhpict2.c 2003/07/27 22:12:02 3.14 @@ -1,13 +1,12 @@ -/* Copyright (c) 1999 Silicon Graphics, Inc. */ - #ifndef lint -static char SCCSid[] = "$SunId$ SGI"; +static const char RCSid[] = "$Id: rhpict2.c,v 3.14 2003/07/27 22:12:02 schorsch Exp $"; #endif - /* * Rendering routines for rhpict. */ +#include + #include "holo.h" #include "view.h" #include "random.h" @@ -38,10 +37,10 @@ static char SCCSid[] = "$SunId$ SGI"; #define CLR4(f,i) FL4OP(f,i,&=~) #define TGL4(f,i) FL4OP(f,i,^=) #define FL4NELS(n) (((n)+0x1f)>>5) -#define CLR4ALL(f,n) bzero((char *)(f),FL4NELS(n)*sizeof(int4)) +#define CLR4ALL(f,n) memset((char *)(f),'\0',FL4NELS(n)*sizeof(int32)) #endif -static int4 *pixFlags; /* pixel occupancy flags */ +static int32 *pixFlags; /* pixel occupancy flags */ static float pixWeight[MAXRAD2]; /* pixel weighting function */ static short isqrttab[MAXRAD2]; /* integer square root table */ @@ -54,6 +53,7 @@ extern float *mydepth; /* depth values (visibility cul extern int hres, vres; /* current horizontal and vertical res. */ +void pixBeam(bp, hb) /* render a particular beam */ BEAM *bp; register HDBEAMI *hb; @@ -64,7 +64,7 @@ register HDBEAMI *hb; double d, prox; COLOR col; int n; - register int4 p; + register int32 p; if (!hdbcoord(gc, hb->h, hb->b)) error(CONSISTENCY, "bad beam in render_beam"); @@ -121,7 +121,7 @@ int n; short forequad[2][2]; int d; register int i; - register int4 p; + register int32 p; if (n <= 0) { #ifdef DEBUG @@ -155,7 +155,7 @@ int n; COLOR mykern[MAXRAD2]; int maxr2; double d; - register int4 p; + register int32 p; register int r2; int i, r, maxr, h2, v2; @@ -216,7 +216,7 @@ double *rf; { float rnt[NNEIGH]; double rvar; - register int4 p, pn; + register int32 p, pn; register int ni; if (n <= 0) @@ -252,17 +252,17 @@ double ransamp; meet_neighbors(0,random_samp,&ransamp); else meet_neighbors(1,smooth_samp,NULL); - free((char *)pixFlags); /* free pixel flags */ + free((void *)pixFlags); /* free pixel flags */ pixFlags = NULL; } reset_flags() /* allocate/set/reset occupancy flags */ { - register int4 p; + register int32 p; if (pixFlags == NULL) { - pixFlags = (int4 *)calloc(FL4NELS(hres*vres), sizeof(int4)); + pixFlags = (int32 *)calloc(FL4NELS(hres*vres), sizeof(int32)); CHECK(pixFlags==NULL, SYSTEM, "out of memory in reset_flags"); } else CLR4ALL(pixFlags, hres*vres); @@ -301,13 +301,13 @@ register short (*rnl)[NNEIGH]; nd[NNEIGH-1] = MAXRAD2; for (hoff = 0; hoff < hres; hoff = (hoff<=0) - hoff) { h2 = h + hoff; - if (h2 < 0 | h2 >= hres) + if ((h2 < 0) | (h2 >= hres)) continue; if ((h2-h)*(h2-h) >= nd[NNEIGH-1]) break; for (n = 0; n < NNEIGH && rnl[h2][n] < NINF; n++) { d = (h2-h)*(h2-h) + (v-rnl[h2][n])*(v-rnl[h2][n]); - if (d == 0 | d >= nd[NNEIGH-1]) + if ((d == 0) | (d >= nd[NNEIGH-1])) continue; if (nn < NNEIGH) /* insert neighbor */ nn++; @@ -373,5 +373,5 @@ char *dp; } } } - free((char *)rnl); /* free row list */ + free((void *)rnl); /* free row list */ }