BezierCubic curve animatie, uitganspositie
 
uitganspositie, de als bloemblaadjes gerangschikte curven

 

object LiBo

object LiBo

 

 

object groen
 
Object ¨groen¨

 

 

 

 

 

 

 

 

bezier anim
Bezier cubic animatie                      terug naar de inleiding
 
De schets maakt gebruik van de class "BezierCub"  zie  curven classes   en de  superclass ¨Curven¨
 
De schets bestaat uit 8 BezierCub objecten, waarvan er 2 (object LiBo en object groen) zijn samengesteld mbv de Beziercubic curve, constructor creator
In de constructor creator kan  je de 2 ankerpunten (rood, en groen) en de twee controlepunten (paars en bruin) in een gewenste positie kan plaatsen.
De coordinaten van deze punten vervolgens als argumenten in de constructor van de schets plaatsen.
 
bekijk de animatie     Er zit een fout in de verticaal bewegende curven, veroorzaakt door een bug in processing.js
 
 
 
//de op en neer bewegende objecten 
Curven reBo;  
Curven liBo;  
Curven reOn;  
Curven liOn;  
//de heen en weer bewegende objecten 
Curven groen;  
Curven rood;  
Curven geel;  
Curven blauw; 
 
 void setup() {  
//size(960,540); 
fullScreen(); 
 float x = width/2; 
 float y = height/2; 
 float nx = height/10; 
 float ny = height/10; 
 //Constructor          a1 = rood, a2 = groen, c1= geel, c2 = paars 
 liBo = new BezierCub(x,y, x,y, x-4*nx,y-ny, x-nx,y-4*ny, color(0, 0, 100, 100)); 
 reBo = new BezierCub(x,y, x,y, x+4*nx,y-ny, x+nx,y-4*ny, color(255, 200, 10, 100)); 
 liOn = new BezierCub(x,y, x,y, x-4*nx,y+ny, x-nx,y+4*ny, color(0, 200, 100, 100)); 
 reOn = new BezierCub(x,y, x,y, x+4*nx,y+ny, x+nx,y+4*ny, color(200, 0, 200, 100)); 
  
 groen = new BezierCub(x,y, x,y, x-3*nx,y-3*ny, x+3*nx,y-3*ny, color(0, 255, 0,100));  
 rood  = new BezierCub(x,y, x,y, x+3*nx,y-3*ny, x+3*nx,y+3*ny,color(255, 0, 0, 100));  
 geel  = new BezierCub(x,y, x,y, x+3*nx,y+3*ny, x-3*nx,y+3*ny,color(255, 255, 0, 100));  
 blauw = new BezierCub(x,y, x,y, x-3*nx,y+3*ny, x-3*nx,y-3*ny,color(0, 255, 255, 100));  
} 
 
 
void draw() {  
background(#E6FBFF);  
 groen.display(); 
 groen.xa1Li();  
 geel.display();  
 geel.xa1Re(); 
 blauw.display(); 
 blauw.xa1Re();  
 rood.display();  
 rood.xa1Li(); 
  
 reBo.display();  
 reBo.ya1Up();  
 liBo.display();  
 liBo.ya1Up();  
 reOn.display();  
 liOn.ya1Down();  
 liOn.display();  
 reOn.ya1Down();  
} 
 
void keyPressed() {       
  if (key == 's') {      
    noLoop();  
  }         
  if (key == 'r') {         
    loop();  
  }  
}