xxxxxxxxxx
38
function setup() {
createCanvas(400, 400);
background("#FAF9F6");
let turtleString = "B";
for (let i = 0; i < 10; i++) {
turtleString = turtleString.replaceAll("B", "F+[B+]-B[-B]FF");
}
print(turtleString);
strokeWeight(2);
translate(width / 2, height / 1.1);
renderString(turtleString);
}
let branchLength = 8;
let angle = Math.PI / 9;
function renderString(string) {
for (let character of string) {
if (character == "F") {
rotate(random(angle, -angle));
strokeWeight(branchLength / 12);
line(0, 0, 0, -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();
}
}
}