Archive for February, 2015

Ejemplo: visualizando elementos de un arreglo cuyos valores cambian

Monday, February 23rd, 2015

moscas

float moscasX[];
float moscasY[];
int manada = 500;
int especial = 49;

void setup() {
  size(500, 500);
  moscasX = new float[manada]; 
  moscasY = new float[manada];  
  for (int i=0; i<manada; i=i+1) {
    moscasX[i] = random(500);
    moscasY[i] = random(500);
  }
  noStroke();
}

void draw() {
  background(255);

  // for para pintarlas
  for (int i=0; i<manada; i=i+1) {
    if (i==especial) {
      fill(0, 200, 150);
      ellipse(moscasX[i], moscasY[i], 10, 10);
    } else {
      fill(100, 100, 100);
      ellipse(moscasX[i], moscasY[i], 2, 2);
    }
  }

  // for para moverlas
  for (int i=0; i<manada; i=i+1) {
    moscasX[i] = moscasX[i] + random(-1, 1);
    moscasY[i] = moscasY[i] + random(-1, 1);
  }
}

Descargar la carpeta comprimida de este ejemplo: moscas

Ejemplo: visualizando datos aleatorios de un arreglo

Monday, February 23rd, 2015

visualzacionArreglos

float temperaturas[];
PFont tipo;

void setup() {
  size(1000, 500);
  temperaturas = new float[500];
  for(int i=0; i<500; i=i+1) {
    temperaturas[i] = random(100);  
  }
  temperaturas[30] = 9;
  temperaturas[43] = 40;
  noStroke();
  tipo = loadFont("SansSerif-48.vlw");
  textFont(tipo, 7);
  colorMode(HSB, 100);
}

void draw() {
  background(0, 0, 69);
  for(int i=0, k=0; i<500; i=i+1,k=k+10) {
    fill(50, 50, temperaturas[i]);
    rect(k, 250-temperaturas[i], 5,temperaturas[i] ); 
    fill(0);
    text((int)temperaturas[i], k, 250-temperaturas[i]); 
  }
}

Descargar la carpeta comprimida de este ejemplo: arreglos_1

Ejemplo: Creando un botón con processing

Monday, February 16th, 2015

ButtonExample

int x=20, y=20, w=50, h=30;
PFont mifont;
void setup() {
 size(500, 500);
 // no olvidar crear el font en el menu Tools->Create Font...
 mifont = loadFont("Monospaced-48.vlw");
 textFont(mifont, 11);
 background(255);
}
void draw() {
 // 1. Dibujar el boton borde negro relleno gris
 fill(128);
 stroke(0);
 rect(x, y, w, h);
 // 2. Dibujar el texto del boton color negro
 fill(0);
 text("borrar", x+6, y+h-10);
 // verificar si se dio click en el boton
 if(mouseX > x && mouseX < x+w && mouseY > y && mouseY < y+h && mousePressed==true) {
 // si hubo click en el botón borrar la pantalla con color blanco
 background(255); 
 } 
 // seleccionar color de relleno gris
 fill(200);
 // desconectar el borde
 noStroke();
 if(mousePressed == true) {
 // si el mouse está presionado en el área de la ventana
 // dibujar el trazo con elipses de 5 pixeles de radio
 ellipse(mouseX, mouseY, 5, 5);
 }
}

Descargar la carpeta comprimida de este ejemplo: ButtonExample

Lillian Schwartz-The Artist and the Computer pt.1

Monday, February 16th, 2015

Parte 1:

YouTube Preview Image

Parte 2:

YouTube Preview Image

Composición dinámica: verbo pensar

Monday, February 16th, 2015

pensar

Usando el verbo pensar diseñe una composición dinámica que lo represente.

 

 

 

Copy Paste, Anni Albers, Estructuras repetitivas.

Tuesday, February 3rd, 2015

Escoja un fragmento de la composición enviada de Anni Albers y represéntelo en su composición mediante el uso de primitivas gráficas y el comando de repetición for. Recuerde que su solución debe ser de 500×300 pixeles.

anni

 

anni2

 

 

Copy Paste, Paul Klee, Fire at Full Moon, 1933

Monday, February 2nd, 2015

Copy Paste: escoja un fragmento del cuadro “Fire at Full Moon” de Paul Klee y represéntelo en su composición mediante el uso de primitivas gráficas (líneas, puntos, rectángulos, elipses, curvas, etc.). Recuerde que su solución debe ser de 500×300 pixeles.

065-2