xxxxxxxxxx
38
function setup() {
createCanvas(1000, 1000);
background("#000035");
stroke("#FAF9F6");
let turtleString = "B";
for (let i = 0; i < 11; i++) {
turtleString = turtleString.replaceAll("B", "F+[B+]-B[-B]FF");
}
print(turtleString);
strokeWeight(10);
translate(width / 2, height / 1.1);
renderString(turtleString);
}
let branchLength = 50;
let angle = Math.PI / 4;
function renderString(string) {
for (let character of string) {
if (character == "F") {
rotate(random(angle, -angle));
strokeWeight(branchLength / 12);
line(0, 0, 0, 1, -branchLength);
translate(0, -branchLength);
} else if (character == "+") {
rotate(angle);
} else if (character == "-") {
rotate(-angle);
} else if (character == "[") {
branchLength /= 2;
push();
} else if (character == "]") {
branchLength *= 2;
pop();
}
}
}