4 Ejemplos de Processing

4 ejemplos de processing De movimiento lineal. Al cambiar una variable para crear una línea en movimiento. Cuando la lín

Views 124 Downloads 4 File size 155KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

4 ejemplos de processing De movimiento lineal. Al cambiar una variable para crear una línea en movimiento. Cuando la línea se desplaza fuera del borde de la ventana, la variable se pone a 0, lo que sitúa la parte posterior de línea en la parte inferior de la pantalla.

float a = 100;

void setup() { size(640, 200); stroke(255); }

void draw() { background(51); a = a - 0.5; if (a < 0) { a = height; } line(0, a, width, a); }

Secuencial de James Patterson. Visualización de una secuencia de imágenes crea la ilusión de movimiento. Doce imágenes se cargan y cada uno se muestra de forma individual en un bucle. int numFrames = 12;

// The number of frames in the animation

int frame = 0; PImage[] images = new PImage[numFrames];

void setup() { size(200, 200); frameRate(30);

images[0]

= loadImage("PT_anim0000.gif");

images[1]

= loadImage("PT_anim0001.gif");

images[2]

= loadImage("PT_anim0002.gif");

images[3]

= loadImage("PT_anim0003.gif");

images[4]

= loadImage("PT_anim0004.gif");

images[5]

= loadImage("PT_anim0005.gif");

images[6]

= loadImage("PT_anim0006.gif");

images[7]

= loadImage("PT_anim0007.gif");

images[8]

= loadImage("PT_anim0008.gif");

images[9]

= loadImage("PT_anim0009.gif");

images[10] = loadImage("PT_anim0010.gif"); images[11] = loadImage("PT_anim0011.gif");

// If you don't want to load each image separately // and you know how many frames you have, you // can create the filenames as the program runs. // The nf() command does number formatting, which will // ensure that the number is (in this case) 4 digits. //for(int i=0; i img.width*img.height-1 || signal < 0) { direction = direction * -1; }

if (mousePressed) { int mx = constrain(mouseX, 0, img.width-1); int my = constrain(mouseY, 0, img.height-1); signal = my*img.width + mx; } else { signal += 0.33*direction; }

int sx = int(signal) % img.width; int sy = int(signal) / img.width;

if (keyPressed) { set(0, 0, img);

// fast way to draw an image

point(sx, sy); rect(sx - 5, sy - 5, 10, 10); } else { color c = img.get(sx, sy); background(c);

} }