tangram gans

 

 

tangram gans

 

 

tangram kat

 

tangram kat

Tangram "Gans"    De schets maakt gebruik van de superclass:  "Vormen"                       terug naar de inleiding
en de subclasses:   "Drieh_nh" , "Paral_na" en "Rechthoek".
 
De 3 tangram rechthoekige driehoeken worden hier samengesteld met Drieh_nh, zie de tabel:
Het eerste argument in de constructor is de basis van de driehoek.
Het tweede argument in de constructor is de hoogte van de driehoek.
De driehoek is een rechthoekige driehoek als de hoogte de helft is van de basis.
 
a = sqrt(2*n*n);
 
driehoek basis  
schuine zijde
  hoogte                                               
 klein,    basis = a    n    a/2  
 middel, basis = 2*n    a    n  
 groot,   basis = 2*a    2*n    a  
 
 

Vormen vorm[]; 
 
void setup() {  
  // fullScreen();  
 size(500,800);  
  int n = height/12;  
  float a = sqrt(2*n*n);  
  float x = width/2;  
  float y = height/2;   
  //gans  
  vorm = new Vormen[7]; 
  vorm[0]  = new Drieh_nh(a*2, a, 2, x,   y,       -135, color(255, 255, 0));  
  vorm[1]  = new Drieh_nh(a*2, a, 3, x,   y,        -45, color(0, 255, 0));   
  vorm[2]  = new Rechthoek(n,  n, 5, x,   y,          0, color(0, 244, 255));  
  vorm[3]  = new Drieh_nh(a, a/2, 6, x,   y+2*n,    135, color(255, 255, 0));  
  vorm[4]  = new Drieh_nh(a, a/2, 6, x-n, y+n,      180, color(255, 255, 0));  
  vorm[5] = new Drieh_nh(2*n,n,   6, x-n, y-(2*n+a), 45, color(0, 0, 255));   
  vorm[6] = new Paral_na(n,  0,   1, x-n, y-2*n,     45, color(255, 0, 255));  
}  
  
void draw() {  
  background(#E6FBFF);       
  stroke(0);   
  for (int i = 0; i <7; i++) 
  { 
  vorm[i].display();  
  } 
  //assenstelsel  
  stroke(255, 0, 0);  
  line(width/2,0, width/2, height);  
  line(0, height/2, width, height/2); 
}
 
Tangram "Kat"    De schets maakt gebruik van de superclass:  "Vormen"  
en de subclasses:   "Drieh_an" , "Paral_na" en "Rechthoek".
 
 

Vormen vorm[];  
 
void setup() {  
 size(500,500); 
  int   n = height/9; 
  float a = sqrt(2*n*n);  
  float x = width/2; 
  float y = height/2;  
  vorm      = new Vormen[7];   
  vorm[0]   = new Drieh_an(n*2, 1, x,   y,       90, color(255, 0, 0)); 
  vorm[1]   = new Drieh_an(n*2, 1, x+a, y+a,    135, color(0, 255, 0)); 
  vorm[2]  =  new Rechthoek(n,n,1, x,   y,      -45, color(0, 244, 255)); 
  vorm[3]   = new Drieh_an(n,   3, x,   y-a,    -90, color(255, 255, 0)); 
  vorm[4]   = new Drieh_an(n,   3, x,   y-a,    +90, color(255, 255, 0));     
  vorm[5]   = new Drieh_an(a,   5, x,   y,      270, color(0, 0, 255)); 
  vorm[6] = new Paral_na(n, 0,  3, x+a, y+a+2*n,-90, color(255, 0, 255));   
} 
 
void draw() { 
  background(#E6FBFF);  
   stroke(0);   
  for (int i = 0; i < 7; i++)  
  {  
  vorm[i].display();   
  }   
    //assenstelsel    
  stroke(255, 0, 0);    
  line(width/2,0, width/2, height);    
  line(0, height/2, width, height/2); 
}