Object 1

object1

 

object2 (groen) is object1 gespiegeld in de x as

object1 en object2

 

 

cubquadrcub00

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"

Object1 is  samengesteld mbv de Bezier cubic quadratic cubic curve constructor creator.
Object2 (groen) is object1 is gespiegeld in de x  as.
 

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

Bekijk de animatie met raaklijnen, anker- en controlepunten,  ankerpunten 1 en 4 bewegen zich op en neer

 

 

Curven object1; 
Curven object2; 
 
void setup() {   
//size(960, 540); 
fullScreen(); 
 float x = width/2; 
 float y = height/2; 
 float n = height/40; 
             //ankerpunten:  a1=rood,  a2=groen,   a3=blauw, a4= lichtblauw 
object1 = new BezierCubQuadrCub(x,y, x+20*n,y+5*n, x-20*n,y+5*n, x,y,    
            //controlepunten:     c1=geel,      c2=paars,  c3=lichtbruin c4=lichtgroen  c5=bruin   
                              x-20*n,y-10*n,  x-3*n,y-6*n,   x,y-15*n,    x+3*n,y-6*n,  x+20*n,y-10*n, 
                              color(247, 63, 35, 100)); 
                               
             //ankerpunten:  a1=rood,  a2=groen,   a3=blauw     a4= lichtblauw 
object2 = new BezierCubQuadrCub(x,y, x+20*n,y-5*n, x-20*n,y-5*n, x,y,    
            //controlepunten: c1=geel,        c2=paars,  c3=lichtbruin c4= lichtgroen  c5=bruin   
                              x-20*n,y+10*n,  x-3*n,y+6*n, x,y+15*n,    x+3*n,y+6*n,    x+20*n,y+10*n, 
                              color(0, 255, 35, 100));              
}   
 
void draw() {  
  background(#E6FBFF); 
  strokeWeight(1); 
  object1.display(); 
  object1.xa3Re(); 
  object1.xa2Li();  
  object1.ya3Up(); 
  object1.ya2Up(); 
  object1.ya1Down(); 
  object1.ya4Down();  
   
  object2.display(); 
  object2.xa3Re(); 
  object2.xa2Li();  
  object2.ya3Down(); 
  object2.ya2Down(); 
  object2.ya1Up(); 
  object2.ya4Up();  
} 
 
void keyPressed() {       
  if (key == 's') {      
    noLoop();  
  }     
  
  if (key == 'r') {         
    loop();  
  }  
}