recht 9 nx=nyDe 9 rechthoeken met nx = ny
 
 
 
rechth 2 6 nxx2 4 8 nyx2 rechthoeken 2 en 6 nx = 2*n
rechthoeken 4 en 8 ny = 2*n
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

schets

9 rechthoeken en 2 ellipsen.
Zie de schets voor de code
 
 
 
recht 9 ellips 2
 
 
 
 
recht 9 ellips 2 2
 
 header rechthoek
 
 
Rechthoek "Rechth"                                          terug naar de inleiding
 
Argumenten van de constructor: 1)  n, straal in x richting,  2) h1, straal in y richting,  3) d, draaipunt,  4)  x positie,  5)  y posititie,  6)  hoek,  7)  kleur
 
 

class Rechth extends Vormen {  
 Rechth(float n_, float h1_, int d_, float x_, float y_, float hoek_, color c1_) {  
    super();  
    n = n_;   
    h1 = h1_;  
    d  = d_;  
    x = x_;   
    y = y_;       
    hoek = hoek_;  
    c1 = c1_;  
  }  
  
  void display() {  
    fill(c1);  
    // noStroke();  
    pushMatrix();  
    translate(x, y);  
    rotate(radians(hoek));  
    rectMode(CENTER);  
    beginShape();   
    {  
    if (d == 0) rect(0,    0, n*2, h1*2);  
    if (d == 1) rect(n,   h1, n*2, h1*2);  
    if (d == 2) rect(n,    0, n*2, h1*2);  
    if (d == 3) rect(n,   h1, n*2, h1*2);  
    if (d == 4) rect(0,   h1, n*2, h1*2);  
    if (d == 5) rect(-n,  h1, n*2, h1*2);  
    if (d == 6) rect(-n,   0, n*2, h1*2);  
    if (d == 7) rect(-n, -h1, n*2, h1*2);  
    if (d == 8) rect(0,  -h1, n*2, h1*2);  
    }         
    endShape(CLOSE);  
    popMatrix();  
  }  
}
 
Schets met 9 rechthoeken en 2 ellipsen met:
objecten in een array
gebruik van a = sqrt(2*n*n); in de constructor.
gebruik van de draaipunt rotatie methode dpRotLi(); en dpRotRe();
De schets staat ook op open processing
De schets maakt gebruik van de superclass:  "Vormen"   en de subclass:   "Ellips"  en  "Rechth"
 
bekijk de schets op deze server
 
 

Vormen[] vorm = new Vormen[12]; 
void setup() { 
fullScreen(); 
 // size(960, 540); 
  float x = width/2; 
  float y = height/2; 
  float n = height/10; 
  float a = sqrt(2*n*n); 
  vorm[0] = new Rechth(a*2,  a*2,  0, x, y,45, color(#FF6464, 100)); 
  vorm[1] = new Rechth(n,  n,  1, x, y,45, color(#7CFA53, 100)); 
  vorm[2] = new Rechth(n*2,n,  2, x, y, 0, color(#539AFA, 100)); 
  vorm[3] = new Rechth(n,  n,  3, x, y,45, color(#53FACF, 100)); 
  vorm[4] = new Rechth(n,  n*2,4, x, y, 0, color(#E18EE3, 100)); 
  vorm[5] = new Rechth(n,  n,  5, x, y,45, color(#F5A33E, 100)); 
  vorm[6] = new Rechth(n*2,n,  6, x, y, 0, color(#E5F516, 100)); 
  vorm[7] = new Rechth(n,  n,  7, x, y,45, color(#DE905C, 100)); 
  vorm[8] = new Rechth(n,  n*2,8, x, y, 0, color(#FF8A40, 100)); 
  vorm[9] = new  Ellips(n*2,a*2,1,x, y, 0, color(#53FA86, 100)); 
  vorm[10] = new Ellips(n*2,a*2,3,x, y, 0, color(#53FAC9, 100)); 
} 
 
void draw() { 
  background(#E6FBFF);  
 // background(0);  
   
  for (int i= 0; i <11; i++) 
  { 
    vorm[i].display(); 
  } 
  vorm[9].dpRotLi(vorm[9]); 
  vorm[10].dpRotRe(vorm[10]); 
}
 
void keyPressed() {    
  if (key == 's') {   
    noLoop(); 
  }    
  if (key == 'r') {      
    loop(); 
  } 
}