Ceci est une ancienne révision du document !


Ateliers Processing de l'OA, deuxième année

// Videos from www.pexels.com
 
import processing.video.*;
 
Movie v1, v2;
PGraphics mask;
 
void setup() {
  size(960, 540);
  blendMode(MULTIPLY);
 
  v1 = new Movie(this, "vid1.mp4");
  v1.loop();
  v2 = new Movie(this, "vid2.mp4");
  v2.loop();
 
  mask = createGraphics(width, height);
 
  while (!v1.available() || !v2.available()) {
  }
}
 
void draw() {
  if (v1.available()) {
    v1.read();
  }
  if (v2.available()) {
    v2.read();
  }
 
  mask.beginDraw();
  mask.blendMode(DIFFERENCE);
  mask.background(255);          // Peindre le fond d'une couleur unie
  mask.fill(255);                // Choisir une couleur de remplissage
  mask.circle(mouseX, mouseY, 600 + 300*sin(millis()/350.0));   // Dessiner un cercle
  mask.circle(mouseX, mouseY, 600 + 300*sin(millis()/330.0));   // Dessiner un cercle
  mask.circle(mouseX, mouseY, 600 + 300*sin(millis()/310.0)); // Dessiner un cercle
  mask.circle(mouseX, mouseY, 600 + 300*sin(millis()/290.0)); // Dessiner un cercle
  mask.circle(mouseX, mouseY, 600 + 300*sin(millis()/270.0)); // Dessiner un cercle
  mask.endDraw();
  mask.loadPixels();
 
  loadPixels();
  for (int i=0; i<width*height; i++) {
     if (mask.pixels[i] == 0xFF000000) {
       pixels[i] = v2.pixels[i];
     } else {
       pixels[i] = v1.pixels[i];
     }
  }
  updatePixels();
}
  • atelier/processing/processingoa2.1699383791.txt.gz
  • Dernière modification: 2023/11/07 20:03
  • par gweltaz