/* Max Yen, cs184-bj
   12867328 
   polka dots */

#include "rmannotes.sl"

surface lab7(float radius = 0.35;
		color dotcolor = color "rgb" (0, 0, 1); 
		float hfrequency = 4, vfrequency = 5; )
{
  color surface_color, layer_color;
  color layer_opac;
  float fuzz = 0.025;
  point center;
  float radius, half_width;
  float d;
  float row;
  float ss, tt;
 
  ss = repeat(s, vfrequency);
  tt = repeat(t, hfrequency);
  row = whichtile(t, hfrequency);
  if (even(row))
    ss = mod(ss + 0.5, 1);

  surface_color = Cs;
  layer_color = dotcolor;
  center = (.5, .5, 0);  /* position of ring */
  d = distance(center, (ss, tt, 0));
  layer_opac = 1 - smoothstep(radius - fuzz, radius, d);
  surface_color = blend(surface_color, layer_color, layer_opac);

  Ci = surface_color;
}