header

 de parent of superclass                 terug naar de inleiding        
 

//Beschikbare bewegingsmethodes: stijgen, dalen, heen, terug, heenEnTerug,
//terugEnHeen, opEnNeer,  snelhxy, trillen, draaien en sinus.

 
class ExtraSuper {
float cx1, cy1,cx2, cy2, ax2, ay2; 

float x;
float y;
float b;
float h;
color c; 


int r;
float a;
int yspeed = 2;
int snelhHeen = 2;
int snelhTerug = 4;  
 int snelhOpEnNeer = 2;
int snelhHeenEnTerug = 8;
int xsnelh = 1;
int ysnelh = 8;
//toegevoegde constructor tbv de beziercubic subclass
ExtraSuper(float x_, float y_, float cx1_, float cy1_, float cx2_, float cy2_, float ax2_, float ay2_, color c_) {
x = x_; 
y = y_; 
cx1 = cx1_;  cy1 = cy1_;  cx2 = cx2_;  cy2 = cy2_;  ax2 = ax2_;  ay2 = ay2_;  c = c_;
}
 
ExtraSuper(float x_, float y_, float b_, float h_, color c_) {  

x = x_;
y = y_;
b = b_;
h = h_;
c = c_ ;  
 }

void stijgen() {  
 y = y - yspeed;  
 if (y < 0) {  
 y = height; 
 } 
 }
 
void dalen() {  
 y = y + yspeed;  
 if (y > height) {  
 y = 0; 
 } 
 }
 
void heen() {  
 x = x + snelhHeen;  
 if (x > width) {  
 x = 0; 
 } 
 }
 
void terug() {  
 x = x - snelhTerug;  
 if (x < 0) {  
 x = width; 
 } 
 }
 
void heenEnTerug() {  
 x = x + snelhHeenEnTerug;  
 if ((x > width) || (x < 0)) {  
 snelhHeenEnTerug = snelhHeenEnTerug * -1; 
 } 
 }
 
void terugEnHeen() {  
 x = x - snelhHeenEnTerug;  
 if ((x > width) || (x < 0)) {  
 snelhHeenEnTerug = snelhHeenEnTerug * -1; 
 } 
 }
 
void opEnNeer() {  
 y = y - snelhOpEnNeer;  
 if ((y < 0) || (y > height)) {  
 snelhOpEnNeer = snelhOpEnNeer* -1; 
 } 
 }
 
void neerEnOp() {  
 y = y + snelhOpEnNeer;  
 if ((y < 0) || (y > height)) {  
 snelhOpEnNeer = snelhOpEnNeer* -1; 
 } 
 }
 
void snelhxy() {  
 x = x + xsnelh;  
 if ((x > width) || (x < 0)) {  
 xsnelh = xsnelh * -1; 
 }  
 y = y + ysnelh;  
 if ((y > height) || (y < 0)) {  
 ysnelh = ysnelh * -1; 
 } 
 }
 
void trillen() {  
 x += random(-1, 1);  
 y += random(-1, 1); 
 }
 
void draaien() {  
 translate(width/2, height/2);  
//translate verplaatst het middelpunt van het canvas naar het (0,0) punt van het assenstelsel 
 r = r + 1; //ook mag r++ 
 rotate(radians(r));  
 if (r == 360) r = 0; 
 }
 //de methode draaien
//Je hebt ook rotateX, rotateY en rotateZ . Niet vergeten met P3D het assenstelsel 3d te maken. 
// De draaien methode moet in de sketch tussen pushMatrix(); en popMatrix(); staan 
// Als je de vorm in het centrum wil laten draaien moet je x en y in de constructor op 0 zetten dus: 
// object1 = new ClassSub(0, 0, b, h, color(r,g,b));  
// In draw: 
// pushMatrix(); 
// object1.draaien(); //na pushMatrix(); eerst de draaien methode aanroepen  
// object1.ellips(); 
// popMatrix();
 
void sinus() { 
 y = map(sin(a), -1, 1, 0, height); 
 x = x + 4;  
 if (x > width) x = 0; 
 a = a +0.03; 
 }
  
 void display() {  
 ellipse(x, y, 30, 10); 
 } 
}