var a = document.getElementById("myCanvas"); var b = a.getContext("2d"); var angle = 0.5; var branchScale = 0.75; var l = 60; var minL = 5; var w = b.canvas.width; var h = b.canvas.height; b.translate(w/2, h); drawBranch(l, 0); function drawBranch(l, direction) { b.save(); var a = angle * Math.random(); b.rotate(a * direction); b.fillStyle = "#1e8214"; b.fillRect(-l / 20, 0, l / 10, -l); if (l > minL) { b.translate(0, -l); var c = 0.2 * (Math.random() - 0.5); c = c + 1; b.fillStyle = "#1e8214"; drawBranch(l * c * branchScale, -1); c = 1 + 0.2 * (Math.random() - 0.5); drawBranch(l * c * branchScale, 1); } b.restore(); }