Tomás Valladares, pizarra colores azar

De Casiopea
pizarrita


Títulopizarrita
Tipo de ProyectoProyecto de Curso
Palabras Clavetarea 4
AsignaturaImagen Escrita 2012,
Del CursoImagen Escrita 2012,
CarrerasArquitectura
Alumno(s)Tomás Valladares Vergara


// tomás valladares 

// ideas tomadas de http://www.openprocessing.org/sketch/39147
//  http://www.openprocessing.org/sketch/49646
// http://www.openprocessing.org/sketch/1156

/* teclas : 's' graba imagen 
 'o' color al azar 
 'n' establece el fondo en negro 
 'b' establece el fondo en blanco
 '1-9' opacidad
 '+' aumenta tamaño trazo 
 '-' disminuye tamaño trazo ( al llegar a 0 el trazo pasa a negativos
 haciendo que se cuelgue el programa (?)) */


float d, grosor; // distancia y grosor 
color strokee; // declaro el termino strokee
int opacidad;
int ab;
void setup() {
  size(700, 700); //pantalla completa
  smooth(); // suavizado (anti-alisaing)
  background(0); // fondo negro
  strokeCap(ROUND); // la hago round ya que al aumentar tamaño no se ve bien
  strokee = color(#BD18F0);
  colorMode(HSB); // establezco el formato de color para mas adelante  ( hue, saturacion, brillo , alpha)
  opacidad = 255; // establezco el valor para el termino declarado arriba , opacidad 
  int ab = 1; // calor para ser reemplazado en el strokeweight
}

void draw() {
  if (mousePressed) {
    // velocidad = distancia / tiempo
    /* calcula distancia entre
     la posición actual del mouse y la posición anterior */
    d = dist(mouseX, mouseY, pmouseX, pmouseY); 
    grosor = map(d, 0, 100, 1, 20);

    strokeWeight(ab);  // strokeWeight(grosor), reemplazo por ab 
    line(mouseX, mouseY, pmouseX, pmouseY);
    stroke(strokee, opacidad);
  }
}

void keyPressed() {
  if (key == 's') { // graba
    saveFrame("img/######.jpg");
  }
  if (key == 'n') { // cambia color N fondo 
    background(0);
  }
  if (key == 'b') { // cambia color blanco fondo
    background(255);
  }
  if (key == 'o') {  // cambia color al azar 
    strokee = color(random(255), 255, 255);
  }
  /* 1-9 = opacidad 
   * el termino floor redondea el valor a un valor int */
  if (key == '1') {
    opacidad = floor(255*0.1);
  }
  if (key == '2') {
    opacidad = floor(255*0.2);
  }
  if (key == '3') {
    opacidad = floor(255*0.3);
  }
  if (key == '4') {
    opacidad = floor(255*0.4);
  }
  if (key == '5') {
    opacidad = floor(255*0.5);
  }
  if (key == '6') {
    opacidad = floor(255*0.6);
  }
  if (key == '7') {
    opacidad = floor(255*0.7);
  }
  if (key == '8') {
    opacidad = floor(255*0.8);
  }
  if (key == '9') {
    opacidad = floor(255*0.9);
  }
  if (key == '0') {
    opacidad = 255;
  }
  if (key == '+') {   // aumenta tamaño linea 
    ab = ab+1;
  }
  if (key == '-') {   // disminuye tamaño linea  
    ab = ab-1;
  } 
  else {
    ab = ab;
  }
}