summaryrefslogtreecommitdiff
path: root/js/tree.js
blob: 64cd2f3d191d2ad0a05af17831403b00f202a81b (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

function draw_branch(x, y, t)
{
  if (t > 8)
    return;
  var sz = (400 * pow(0.5, t)) * map(255-frameCount%256, 0, 255, 0, 1);
  var angle = map(mouseX, 0, width, 0, HALF_PI) + t * map(mouseY, 0, height, -HALF_PI, HALF_PI);
  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);
  background(255);
  draw_branch(width/2, height, 0);
}
function draw()
{
  background(255);
  draw_branch(width/2, height, 0);
}