rendering lijnen cirkels en vierkanten               terug naar de inleiding

De schets fullScreen op open processing

 

Shape lijn; 
Shape cirkelLiBo;  
Shape cirkelReOn;  
Shape vierkantReBo; 
Shape vierkantLiOn; 
 
void setup() {  
  fullScreen(); 
  // size(640,460);  
  lijn = new Shape(width/2, height/2, 50);  
  cirkelLiBo = new Shape(width/4, height/4, 50);  
  cirkelReOn = new Shape(width/4*3, height/4*3, 50);  
  vierkantReBo = new Shape(width/4*3, height/4, 50); 
  vierkantLiOn = new Shape(width/4, height/4*3, 50); 
  background(#E6FBFF); 
}  
void draw() {  
  frameRate(5); 
  lijn.stappen();  
  lijn.renderLijn(); 
   
  cirkelLiBo.stappen();  
  cirkelLiBo.renderCirkel(); 
   
  cirkelReOn.stappen();  
  cirkelReOn.renderCirkel(); 
   
  vierkantReBo.stappen();  
  vierkantReBo.renderVierkant(); 
   
  vierkantLiOn.stappen();  
  vierkantLiOn.renderVierkant(); 
}  
 
void keyPressed() { 
  if (key == 's') { 
    noLoop(); 
  } 
  if (key == 'r') {    
    loop(); 
  } 
  if (key == 'c') { 
    setup(); 
  } 
}
 
de class shapes
 
 

class Shape {  
  float x;  float y; float l; 
  float x1; float y1; 
  float x2; float y2; 
 
  Shape(float x_, float y_, float l_) {  
    x1 = x_; y1 = y_; 
    x2 = x1; y2 = y1; l = l_; 
  } 
   
  void renderLijn() {  
    line(x1, y1, x2, y2);  
    x1 = x2;  
    y1 = y2; 
  } 
 
  void renderCirkel() {  
    noFill(); 
    ellipse(x2, y2, l-2, l-2);  
    x1 = x2;  
    y1 = y2; 
  } 
 
  void renderVierkant() {  
    rectMode(CENTER); 
    noFill(); 
    rect(x2, y2, l, l);  
    x1 = x2;  
    y1 = y2; 
  } 
 
  void stappen() {   
    int keuze = int(random(8));  
    //Afhankelijk van de random keuze worden x en y waarden gekozen 
    //met verschillende hoeken 
    if (keuze == 0) {       //45 gr --> re onder  
      strokeWeight(3); 
      stroke(255, 0, 0);  
      x2 = x2 + l;  
      y2 = y2 + l; 
    } else if (keuze == 1) { //hor --> re  
   //   strokeWeight(1); 
    //  stroke(0);  
      x2 = x2 + l; 
    } else if (keuze == 2) { //45 gr --> re boven  
      x2 = x2 + l;  
      y2 = y2 - l; 
    } else if (keuze == 3) { //vert --> boven  
      strokeWeight(3); 
      stroke(0,255,0);  
      y2 = y2 -l; 
    } else if (keuze == 4) { //45 gr --> li boven  
      strokeWeight(2); 
      stroke(0, 0, 255);  
      y2 = y2 -l;  
      x2 = x2 -l; 
    } else if (keuze == 5) {  // hor --> links  
      x2 = x2 - l; 
    } else if (keuze == 6) {  // 45 gr --> li onder  
      strokeWeight(1); 
      stroke(255, 0, 0);  
      x2 = x2 - l;  
      y2 = y2 + l; 
    } else {                   // vert --> beneden  
      y2 = y2 + l; 
    }   
    //Dankzij constrain zie je een randje van 15 px 
    x2 = constrain(x2, 0+15, width-15);  
    y2 = constrain(y2, 0+15, height-15); 
  } 
}