de 4 curven in hun uitganspositie

de 4 curven in hun uitganspositie

 

 

 

beziercubquadrcub anim2 header

Bezier Cubic Quadratic Cubic animatie

Een animatie met  gekoppelde Cubic Quadratic Cubic curven.             terug naar de inleiding

De schets maakt gebruik van de class "BezierCubQuadrCub"  zie  curven classes   en de superclass "Curven"

De 4 ankerpunten bewegen zich in horizontale en verticale richting over de x en y as.
In de superclass "curven" zijn de bewegingsnelheden ya1 en ya4 up en down verdubbeld.
De snelheden xa1, xa4, Li en Re zijn ook verdubbeld, dit effect is in de animatie goed te zien.
 
Object1 is  samengesteld mbv de Bezier cubic quadratic cubic curve constructor creator.
 

Bekijk de animatie in fullScreen(): . Met de "s" toets stopt, en met de "r" toetst start de animatie.

 

Curven object1; 
Curven object2; 
Curven object3; 
Curven object4; 
 
void setup() {   
fullScreen(); 
 float x = width/2; 
 float y = height/2; 
 float n = height/20; 
             //ankerpunten:  a1=rood,  a2=groen,   a3=blauw,     a4= lichtblauw 
object1 = new BezierCubQuadrCub(x,y-5*n, x-10*n,y, x+10*n,y, x,y-5*n,    
            //controlepunten: c1=geel,      c2=paars,  c3=lichtbruin c4= lichtgroen c5=bruin   
                              x-15*n,y-6*n,  x,y-10*n, x,y-10*n, x,y-10*n,  x+15*n,y-6*n, 
                              color(247, 63, 35, 100)); 
                               
object2 = new BezierCubQuadrCub(x,y+5*n, x-10*n,y, x+10*n,y, x,y+5*n,    
            //controlepunten: c1=geel,      c2=paars,  c3=lichtbruin c4= lichtgroen c5=bruin   
                              x-15*n,y+6*n,  x,y+10*n, x,y+10*n, x,y+10*n,  x+15*n,y+6*n, 
                              color(255, 255, 0, 100));   
                               
object3 = new BezierCubQuadrCub(x-5*n,y, x,y+10*n, x,y-10*n, x-5*n,y,    
            //controlepunten: c1=geel,      c2=paars,  c3=lichtbruin c4= lichtgroen c5=bruin   
                              x-6*n,y+15*n,  x-10*n,y, x-10*n,y, x-10*n,y,  x-6*n,y-15*n, 
                              color(131, 240, 44, 100));  
                             
object4 = new BezierCubQuadrCub(x+5*n,y, x,y+10*n, x,y-10*n, x+5*n,y,    
            //controlepunten: c1=geel,      c2=paars,  c3=lichtbruin c4= lichtgroen c5=bruin   
                              x+6*n,y+15*n,  x+10*n,y, x+10*n,y, x+10*n,y,  x+6*n,y-15*n, 
                              color(44, 240, 222, 100));                                                             
}   
 
void draw() {  
  
  background(0); 
  object1.display(); 
  object1.ya1Down(); 
  object1.xa2Re(); 
  object1.xa3Li(); 
  object1.ya4Down(); 
   
  object2.display(); 
  object2.ya1Up(); 
  object2.xa2Re(); 
  object2.xa3Li(); 
  object2.ya4Up(); 
   
  object3.display();  
  object3.xa1Re(); 
  object3.ya2Down(); 
  object3.ya3Up(); 
  object3.xa4Re(); 
   
  object4.display(); 
  object4.xa1Li(); 
  object4.ya2Down(); 
  object4.ya3Up(); 
  object4.xa4Li(); 
} 
 
void keyPressed() {       
  if (key == 's') {      
    noLoop();  
  }     
  
  if (key == 'r') {         
    loop();  
  }  
}