Bezier Quadratic Cubic Quadratic animatie 2
Een animatie met gekoppelde Quadratic Cubic Quadratic curven. terug naar de inleiding ga naar de animatie
De schets maakt gebruik van de class "BezierQuadrCubQuadr" zie curven classes en de superclass "Curven"
object1 is gecreerd mbv de Bezier quadratic cubic quadratic curve constructor creator.
object2 is object1 gespiegeld in de x as: +y -> -y en -y -> +y
object3 is object1 -90 gr gedraaid door: 1) x waarden -> y waarden en y waarden -> x waarden, 2) spiegelen in de x as: +y -> -y en -y -> +y
object4 is object3 gespiegeld in de y as: +x -> -x en -x -> +x
Bekijk de animatie in fullScreen(): . Met de "s" toets stopt, en met de "r" toetst start de animatie. met de "d" toets een afbeelding van de animatie downloaden
Bekijk ook de animatie met de objecten van deze schets en de bewegingsmethoden van Bezier Quadratic Cubic Quadratic animatie 1.
Curven object1;
Curven object2;
Curven object3;
Curven object4;
void setup() {
size(800, 800);
//fullScreen();
float x = width/2;
float y = height/2;
float n = height/24;
//object1 is gecreerd met de curve constructor creator
//ankerpunten: a1=rood, a2=groen, a3=blauw, a4=lichtblauw
object1 = new BezierQuadrCubQuadr(x,y, x-10*n,y+5*n, x+10*n,y+5*n, x,y,
//controlepunten: c1=geel, c2=paars, c3=bruin c4=lichtgroen
x+10*n,y-5*n, x+10*n,y-5*n, x-10*n,y-5*n, x-10*n,y-5*n,
color(247, 63, 35, 100));
//object2 is object1 gespiegeld in de x as: y -> -y en -y -> y
//ankerpunten: a1=rood, a2=groen, a3=blauw, a4=lichtblauw
object2 = new BezierQuadrCubQuadr(x,y, x-10*n,y-5*n, x+10*n,y-5*n, x,y,
//controlepunten: c1=geel, c2=paars, c3=bruin c4=lichtgroen
x+10*n,y+5*n, x+10*n,y+5*n, x-10*n,y+5*n, x-10*n,y+5*n,
color(150, 17, 150, 100));
//object3 is object1 -90 gr geroteerd door: 1) x waarden -> y waarden en y waarden -> x waarden
// 2) spiegelen in de x as: +y -> -y en -y -> +y
//ankerpunten: a1=rood, a2=groen, a3=blauw, a4= lichtblauw
object3 = new BezierQuadrCubQuadr(x,y, x+5*n,y+10*n, x+5*n,y-10*n, x,y,
//controlepunten: c1=geel, c2=paars, c3=bruin c4=lichtgroen
x-5*n,y-10*n, x-5*n,y-10*n, x-5*n,y+10*n, x-5*n,y+10*n,
color(150, 255, 0, 100));
//object4 is object3 gespiegeld in de y as: +x -> -x en -x -> +x
//ankerpunten: a1=rood, a2=groen, a3=blauw, a4= lichtblauw
object4 = new BezierQuadrCubQuadr(x,y, x-5*n,y+10*n, x-5*n,y-10*n, x,y,
//controlepunten: c1=geel, c2=paars, c3=bruin c4=lichtgroen
x+5*n,y-10*n, x+5*n,y-10*n, x+5*n,y+10*n, x+5*n,y+10*n,
color(50, 227, 213, 100));
}
void draw() {
background(#E6FBFF);
// background(0);
strokeWeight(1);
object1.display();
object1.ya1Down();
object1.ya4Down();
object1.ya2Up();
object1.ya3Up();
object2.display();
object2.ya1Up();
object2.ya4Up();
object2.ya2Down();
object2.ya3Down();
object3.display();
object3.xa1Li();
object3.xa4Li();
object3.ya2Down();
object3.ya3Up();
object4.display();
object4.xa1Re();
object4.xa4Re();
object4.ya2Down();
object4.ya3Up();
}
void keyPressed() {
if (key == 's') {
noLoop();
}
if (key == 'r') {
loop();
}
}