Albero

Immagine fissa.
Applicazione Java

final int   NUM=10;
final float deltaDim=0.59;
final float DIR=HALF_PI;
final float deltaDir=PI/4;

float Dimensioni[];

void setup()
{
   size(500, 500);
   smooth();
   stroke(0);
   background(255);

   float X0  = width/2;
   float Y0  = 0.95*height; 
   float DIM = height/2.4;
   
   Dimensioni=new float[NUM+1];
   Dimensioni[NUM]=DIM;
   for(int i=NUM-1; i >=1; i--)
	  Dimensioni[i]=Dimensioni[i+1]*deltaDim;

   albero(NUM, X0, Y0, DIR);
}

void albero(int n, float x, float y, float angolo)
{
   float newX=x+Dimensioni[n]*cos(angolo);
   float newY=y-Dimensioni[n]*sin(angolo);
   line(x, y, newX, newY);

   if(n > 1)
   {
	  albero(n-1, newX, newY, angolo+deltaDir);
	  albero(n-1, newX, newY, angolo-deltaDir);
   }
}