Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

deutsche VersionAn


It's possible to nest loops inside other loops. 

Hier is an example with a built-in ScreenshotScreen Shot-function

Code Block
void setup()
{
  size(600,600);      // def. window size
  strokeWeight(1);    // line thickness 
}
  
void draw()
{
  background(255);    // def. background colour 
  
  for(int x = 0; x <= width; x+=30)
  {
    for(int y = 0; y <= height; y+=30)
    {
        smiley(x,y);          // funtion call
    }
  }
  
}
  
void keyPressed()
{
  switchif(key)
  {
  case == 's':) {
    save("screenShot.jpg");
    println("save the screen to screenShot.jpg");
    break;
  }
}
  
// function
void smiley(int x, int y)
{
  noFill();
  ellipse(x,y,18,18);  // head
  
  fill(0);
  ellipse(x - 3,y - 3,2,5);  // left eye
  ellipse(x + 3,y - 3,2,5);  // right eye 
  
  noFill();
  arc(x,y,10,10,radians(20),radians(180-20));  // mouth
}

...

  • Create a new shape instead of the smiley, and put exactly 100 repetitions on the screen
  • Modify the colour of your and/or the shape with each repetition

Example Solution to Exercise 7 


Code Block
collapsetrue
int W = 60;
void setup() {
  size(660,660);
  noStroke();
  colorMode(HSB);
}

void draw() {
  background(255);
  for  (int i =1; i<=10; i++) {
    for  (int j =1; j<=10; j++) {
      float hue = j*i*2.5;
      fill(hue,150, 255);
      myShape(i*W, j*W); 
    }
  }
}

void myShape(int x, int y) {
  int D = W/23;
  //ellipse(x, y, W, W);
  triangle(x, y-D, x-D, y+D, x+D, y+D);
}

...