Teselación de Los Tres Camellos

De Casiopea

[[Archivo:Teselaci�n.jpg|thumb|800px|center|Los Tres Camellos de Danilo]]


TítuloLos Tres Camellos de Danilo
Tipo de ProyectoProyecto de Curso
Palabras Claveproyecto final, Danilo Garrido
Del CursoImagen Escrita 2012,
CarrerasDiseño Industrial"Diseño Industrial" is not in the list (Arquitectura, Diseño, Magíster, Otra) of allowed values for the "Carreras Relacionadas" property.
Alumno(s)Danilo Garrido
ProfesorHerbert Spencer
PDFArchivo:Teselación de los Tres Camellos.pdf
/*el concepto a plantear en ésta teselación es cómo  el vertex o curveVertex, nos permite obtener cualquier figura, y además de eso, cómo el pushMatrix y sus funciones, permiten cambiar las dimensiones de ésta figura.
la figura del camello es solo un dibujo hecho en un cuaderno, pero asegurando que los puntos estén bien definidos, y que luego diibujo con curveVertex.
lo interesante de éste trabajo está en cómo el pushMatrix me permite dar otras posiciones al camello, y diferente orientación.
los tres camellos es una mezcla detallada de curveVertex con pushMarix, y si bien no se logra el objetivo de cubrir cada espacio con los tres camellos, la teselación hecha es interezante.*/

import processing.pdf.*;
void setup() {
  size(1000, 1000,PDF,"Teselación de los Tres Camellos.pdf");
  background(255);
  smooth();
  noFill();
  strokeCap(SQUARE);
}
void draw() {
  for (float x= 10; x<900; x=x+120) {
    for (float y=5; y<900; y=y+120) {


      pushMatrix();
      scale(1.65);
      translate(x+50, y+22);
      rotacion(); 
      translate(x-80, y+93);
      rotate(-196);
      scale(.48);
      rotacion();

     
      popMatrix();
  cierre();  
  }
  }
}
void camello() {

  beginShape();
  curveVertex(20, 40);
  curveVertex(25, 10);
  curveVertex(27, 5);
  curveVertex(30, 0);
  curveVertex(35, 0);
  curveVertex(38, 3);
  curveVertex(40, 5);
  curveVertex(36, 5);
  curveVertex(35, 8);
  curveVertex(35, 10);
  curveVertex(40, 20);
  //////////////////////////////////
  curveVertex(20, 20);
  curveVertex(15, 20);
  curveVertex(10, 20);
  curveVertex(5, 25);
  curveVertex(0, 30);
  //////////////////////////////
  curveVertex(0, 40);
  curveVertex(0, 60);
  curveVertex(15, 60);
  curveVertex(15, 50);
  curveVertex(18, 42);
  curveVertex(20, 40);
  /////////////////////////////
  curveVertex(20, 40);
  curveVertex(27, 42);
  curveVertex(30, 50);
  curveVertex(30, 60);
  curveVertex(40, 60);
  curveVertex(40, 50);
  ///////////////////////////
  curveVertex(40, 50);
  curveVertex(42, 45);
  curveVertex(45, 42);
  curveVertex(50, 40);
  ///////////////////////////
  curveVertex(50, 40);
  curveVertex(55, 38);
  curveVertex(58, 35);
  curveVertex(60, 30);
  curveVertex(58, 25);
  curveVertex(55, 23);
  curveVertex(50, 20);
  curveVertex(40, 20);
  endShape(CLOSE);
}


void rotacion() {
  pushMatrix();
  translate(2,20);
  camello();
  translate(12,15);
  rotate(90);
  camello();
  translate(12,10);
  rotate(90);
  camello();
 
  popMatrix();
}

void cierre(){
  println("listo");
 exit();
}