0004-JS-P5E-Recursion
function setup() {
createCanvas(720, 560);
noStroke();
noLoop();
}
function draw() {
inputParamsEllipse(360, 280, 6);
}
function inputParamsEllipse(xPos, radius, level) {
const tt = (126 * level) / 4.0;
fill(tt);
ellipse(xPos, height / 2, radius * 2, radius * 2);
if (level > 1) {
level = level - 1;
inputParamsEllipse(xPos - radius / 2, radius / 2, level);
inputParamsEllipse(xPos + radius / 2, radius / 2, level);
// xPos = 360; radius = 280;level=6
// inputParamsEllipse(360 - 280 / 2, 280 / 2, 5); [xPos:220,radius:140]
// inputParamsEllipse(360 + 280 / 2, 280 / 2, 5); [xPos:500,radius:140]
// xPos = 220; radius = 140;level=5
// xPos = 500; radius = 140;level=5
// inputParamsEllipse(220 - 140 / 2, 140 / 2, 4); [xPos:150,radius:70]
// inputParamsEllipse(220 + 140 / 2, 140 / 2, 4); [xPos:290,radius:70]
// inputParamsEllipse(500 - 140 / 2, 140 / 2, 4); [xPos:430,radius:70]
// inputParamsEllipse(500 + 140 / 2, 140 / 2, 4); [xPos:570,radius:70]
}
}

Comments
Post a Comment