xxxxxxxxxx
75
function setup() {
if (windowHeight > 1080) {
createCanvas(1080, 1080);
} else {
createCanvas(windowWidth, windowHeight);
}
angleMode(DEGREES);
radius = 300;
}
function draw() {
background(0);
translate(width / 2, height / 2);
rotate(30);
for (i = 0; i < 3; i++) {
push();
rotate(120 * i + 60);
//translate(radius*sin(35.5), 0);
translate(radius*0.955, 0);
rotate(-90 + 0);
fountain();
pop();
}
for (i = 0; i < 3; i++) {
push();
rotate(120 * i);
//translate(radius*sin(35.5), 0);
translate(radius / 2.32, 0);
rotate(-90 + 180);
fountain();
pop();
}
}
function wave(r) { //Spotless Yin Yang (just the wave)
fill(0);
arc(0, 0, r, r, 0, 180);
fill(255);
arc(0, 0, r, r, 180, 0);
fill(0);
ellipse(r / 4, 0, r / 2);
fill(255);
ellipse(-r / 4, 0, r / 2);
}
function coin(r) { //Black-white semicircles
fill(0);
//arc(0, 0, r, r, 0, 180);
fill(255);
arc(0, 0, r, r, 180, 0);
}
function fountain() {
noStroke();
coin(radius);
push();
translate(radius / 4, 0);
rotate(-frameCount);
wave(radius / 2);
pop();
push();
translate(-radius / 4, 0);
rotate(frameCount);
scale(-1, 1);
wave(radius / 2);
pop();
}