Diferencia entre revisiones de «Arbol recursivividad»

De Casiopea
Sin resumen de edición
Sin resumen de edición
 
(No se muestran 2 ediciones intermedias del mismo usuario)
Línea 1: Línea 1:
{{Proyecto
{{Proyecto
|Título=Trajan Pirkovic: Arbol recursividad
|Título=Árbol recursividad
|Tipo de Proyecto=Proyecto de Taller
|Tipo de Proyecto=Proyecto de Taller
|Palabras Clave=recursividad, processing, prueba, dibujo
|Palabras Clave=recursividad, processing, prueba, dibujo
Línea 12: Línea 12:
|Imagen=Arbol221111.JPG
|Imagen=Arbol221111.JPG
}}
}}
<pre>
void setup() {
void setup() {
   size(400, 600);
   size(400, 600);
Línea 58: Línea 59:
    
    
}
}
</pre>

Revisión actual - 00:41 22 nov 2011

Á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
  
}