}
}
break;
+ case Reo_spiral_in:
+ for (i = -(rad->radius), j = -(rad->radius), k = rad->radius; k >= 0; )
+ {
+ if (rad->affected[MAX_FOV_RADIUS + i][MAX_FOV_RADIUS + j])
+ {
+ rad->effect_fun(rad->centre_y + i, rad->centre_x + j, rad->pvt);
+ }
+ if ((i == 0) && (j == 0))
+ {
+ k = -1;
+ }
+ else if (i == -k)
+ {
+ if (j == k)
+ {
+ ++i;
+ }
+ else
+ {
+ ++j;
+ }
+ }
+ else if (j == k)
+ {
+ if (i == k)
+ {
+ --j;
+ }
+ else
+ {
+ ++i;
+ }
+ }
+ else if (i == k)
+ {
+ if (j == -k)
+ {
+ --i;
+ }
+ else
+ {
+ --j;
+ }
+ }
+ else if (j == -k)
+ {
+ if (i == 1 - k)
+ {
+ --k;
+ i = -k;
+ j = -k;
+ }
+ else
+ {
+ --i;
+ }
+ }
+ }
+ break;
+
default:
print_msg("FATAL: attempt to use unimplemented radiance evaluation order %d\n", rad->order);
abort();