xxxxxxxxxx
41
var time = 0;
var delta = 0.05;
function setup() {
createCanvas(400, 400);
//frameRate(20);
rectMode(CENTER);
}
function rotating_square(x){
push();
var ang = map(x, 0, 20, 0, TWO_PI);
var cos_a = cos(ang);
var sin_a = sin(ang);
translate(50,50);
applyMatrix(cos_a, sin_a, -sin_a, cos_a, 0, 0);
rect(0,0,50,50);
pop();
}
function shrinking_square(x){
push();
var step = map(x%50,0,50,-200,200);
step = -(step*step)*(1/50);
translate(150,150);
applyMatrix(1 / step, 0, 0, 1 / step, 0, 0);
rect(0,0,50,50);
pop();
}
function draw() {
background(220);
rotating_square(time);
shrinking_square(time);
time+=delta;
}