summaryrefslogtreecommitdiff
path: root/js/treegenerator.js
blob: 225c63938a7377d3dfbd937e0f385f84dcd1e9d2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37

var size;
var start_angle;
var angle_decay;
function draw_branch(x, y, t)
{
  if (t > 8)
    return;
  var sz = size * pow(0.5, t);
  var angle = start_angle + angle_decay * t;
  line(x, y, x+cos(angle)*sz, y-sin(angle)*sz);
  line(x, y, x-cos(angle)*sz, y-sin(angle)*sz);
  draw_branch(x+cos(angle)*sz, y-sin(angle)*sz, t+1);
  draw_branch(x-cos(angle)*sz, y-sin(angle)*sz, t+1);
  
}
function setup()
{
	
  createCanvas(700, 700);
  stroke(0);
}

function draw()
{
  size = parseFloat(document.getElementById("size").value);
  start_angle = parseFloat(document.getElementById("angle").value);
  angle_decay = parseFloat(document.getElementById("angledecay").value);
  background(255);
  draw_branch(width/2, height, 0);
}

function saveTree()
{	
	save("tree.png");
	
}