xxxxxxxxxx
// Muster mit eingedrehten Quadraten
function setup() {
createCanvas(920, 690);
//noLoop();
rectMode(CENTER); // für Rechteck bzw. Quadrat wird die Seitenlänge angegeben
background(0);
} // Ende function setup()
function draw() {
translate(60, 0);
scale(1,.86)
for (let Zeile=200; Zeile<=600; Zeile+=400) {
for (let Spalte=200; Spalte<=600; Spalte+=400) {
push();
translate(Spalte, Zeile); // Ursprung in die Mitte der Kachel schieben
let Seite = 400; // Seitenlänge des größten Quadrates
let drehWinkel = 0; // Drehwinkel des größten Quadrates
for (let i=0; i<38; i++) { // 38 Quadrate zeichnen
fill(i*9); // Farbe variieren
rotate(drehWinkel);
square(0, 0, Seite); // Quadrat(MitteX, MitteY, Seitenlänge) zeichnen;
let l = Seite; // Seitenlänge des Quadrates
// Größe des nächst kleineren Quadrates bestimmen
//---------------------------------------------------------------------
//Seite *=0.925; // Seitenlänge des nächsten Quadrates
Seite -=10; // Seitenlänge des nächsten Quadrates
//---------------------------------------------------------------------
let d= Seite * sqrt(2); // Diagonale des nächsten Quadrates
// Drehwinkel des nächsten Quadrates berechnen
drehWinkel = PI/4 - acos(l/d);
} // Next i
pop();
} // Next Spalte
} // Next Zeile
} // Ende function draw()
function mouseClicked(){
save("img_" + month() + '-' + day() + '_' + hour() + '-' + minute() + '-' + second() + ".jpg");
}