xxxxxxxxxx
let clBlack = '#fff';
let clWhite = '#000';
let clStroke = '#fff';
let stw = 1;
let deltaY = -500;
let deltaX = 800;
let speed = 3; // Her iki kare için ortak hız
function setup() {
createCanvas(600, 600);
}
function draw() {
background(clWhite);
// Kare sabiti
squaresPattern();
// Yukarıdan aşağıya hareket eden kare
push();
translate(0, deltaY);
squaresPattern();
pop();
// Sağdan sola hareket eden kare
push();
translate(deltaX, 0);
squaresPattern();
pop();
// deltaY ve deltaX hızı artır/azalt
deltaY += speed;
deltaX -= speed;
// deltaY loop
if (deltaY > height * 3) {
deltaY = -500;
}
// deltaX loop
if (deltaX < -600) {
deltaX = 800;
}
}
function squaresPattern() {
let xpos = width / 2;
let ypos = height / 2;
// Canvas boyutuna göre karelerin başlangıç boyutu
let size = min(width, height) * 0.8;
stw = 1;
// Döndürme açısını ayarlamak için değişken
let angle = frameCount * 0.01; // Her karede açıyı artır
// Kareleri merkezde döndürme
translate(xpos, ypos);
rotate(angle); // Döndürme işlemi
translate(-xpos, -ypos);
for (let i = 0; i < 22; i++) {
noFill();
strokeWeight(stw);
stroke(clStroke);
stw += 0.4;
square(xpos - size / 2, ypos - size / 2, size);
// Canvas boyutuna göre karelerin küçülme oranı
size -= min(width, height) * 0.05;
}
}