18 |
|
|
19 |
|
#include "random.h" |
20 |
|
|
21 |
+ |
#ifndef WFLUSH |
22 |
+ |
#define WFLUSH 30 /* flush after this many rays */ |
23 |
+ |
#endif |
24 |
|
|
25 |
+ |
|
26 |
|
getrect(s, r) /* get a box */ |
27 |
|
char *s; |
28 |
|
register RECT *r; |
134 |
|
register PNODE *p; |
135 |
|
int xmin, ymin, xmax, ymax; |
136 |
|
{ |
137 |
+ |
extern long nrays; |
138 |
+ |
static long lastflush = 0; |
139 |
|
static RAY thisray; |
140 |
|
double h, v; |
141 |
|
register int i; |
163 |
|
scalecolor(p->v, exposure); |
164 |
|
|
165 |
|
(*dev->paintr)(greyscale?greyof(p->v):p->v, xmin, ymin, xmax, ymax); |
166 |
+ |
|
167 |
+ |
if (dev->flush != NULL && nrays - lastflush >= WFLUSH) { |
168 |
+ |
lastflush = nrays; |
169 |
+ |
(*dev->flush)(); |
170 |
+ |
} |
171 |
|
} |
172 |
|
|
173 |
|
|