BASIC > Sine and Cosine




Codice
final float distanza=20;
final float incAngolo=PI/120;

int   maxX, maxY;
float Xc, Yc,
      raggio,
      angolo=0,
      Xr, Yr,      
      x1, y1,
      x2, y2,
      seno, coseno,
      col_seno, col_coseno;

void setup()
{
  size(500, 500);
  smooth();
  ellipseMode(RADIUS);
  frameRate(30);

  maxX=width;          maxY=height;
  Xc=maxX/2;           Yc=maxY/2;;
  raggio=0.33*maxX;
 
  float distanza2=2*distanza;
 
  x1=distanza2;       y1=distanza2;
  x2=width-distanza2; y2=height-distanza2;
}

void draw()
{
  background(127);
  stroke(255);
  strokeWeight(1);      line(0, Yc, maxX, Yc  );            
                        line(Xc, 0, Xc,   maxY);
  noFill();             ellipse(Xc, Yc, raggio, raggio);

  coseno=cos(angolo);
  seno=sin(angolo);
  Xr=raggio*coseno;
  Yr=-raggio*seno;
  col_coseno=map(coseno, -1, +1, 0, 255);
  col_seno  =map(  seno, -1, +1, 0, 255);

  stroke(150);
  strokeWeight(2);      
  fill(col_coseno, 0, col_seno); ellipse(Xc, Yc, abs(Xr), abs(Yr));
  fill(col_coseno, 0, 0);        ellipse(Xc+Xr, y1, distanza, distanza);
                                 ellipse(Xc+Xr, y2, distanza, distanza);  
  fill(0, 0, col_seno);          ellipse(x1, Yc+Yr, distanza, distanza);
                                 ellipse(x2, Yc+Yr, distanza, distanza);
  stroke(255);                   line(Xc, Yc, Xc+Xr, Yc+Yr);
  angolo += incAngolo;
}
There are no comments on this page.
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki