xxxxxxxxxx
37
function setup() {
createCanvas(1200, 1200);
let turtleString = "B";
for (let i = 0; i < 10; i++) {
turtleString = turtleString.replaceAll("B", "F+[B+]-B[-B]FF");
}
print(turtleString);
strokeWeight(10);
translate(width / 2, height / 1.1);
renderString(turtleString);
}
let branchLength = 100;
let angle = Math.PI / 8;
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();
}
}
}