Arbol recursivividad

De Casiopea
Árbol recursividad


TítuloÁrbol recursividad
Tipo de ProyectoProyecto de Taller
Palabras Claverecursividad, processing, prueba, dibujo
Período2011-2011
AsignaturaImagen Escrita,
Del CursoImagen Escrita,
CarrerasArquitectura
Alumno(s)Trajan Pirkovic
ProfesorHerbert Spencer

void setup() {

 size(400, 600);
 smooth();
 background(#022F6C);
 fill(#2C1001);
 rect(0, 400, 400, 300);
 noStroke();
 

}


void drawTree(float x, float y, float big, int levels) {

 pushMatrix();
 {
   translate(x, y);
   line(0, -big/2, -big/2, -big); // brazo izquierdo
   line(0, -big/2, 0, -big);         // brazo central
   line(0, -big/2, big/2, -big);  // brazo derecho
   line(0, 0, 0, -big/2);         // tronco
   if (levels > 0) {
     stroke(255);                            //color hojas
     drawTree(-big/2, -big, big*(random(.5, 1)), levels - 1); // Y izquierda
     drawTree(big/2, -big, big*(random(.5, 1)), levels - 1);  // Y derecha
     stroke(93, random(50, 93), 0);                           // color ramas
     drawTree(0, -big*(random(.5, 1)), big*0.8, levels - 1 );     // rama central
   }
 }
 popMatrix();

} void drawTronco(float x, float y, float x1, float y2) { // Linea para el tronco

 strokeWeight(2);
 {
   stroke(#645600);
   line(x, y, x1, y2);
 }

}

void draw() { }

void mouseReleased() {

 drawTree(mouseX, mouseY, 35, round(9));            //hace la recursiva
 drawTronco(mouseX, mouseY, mouseX, mouseY-90);      // Dibuja la linea del tronco
 

}