Search code examples
imageloadprocessing

Load multiple images in Processing


I would like to load and draw multiple/all images from a directory in Processing. I cant find a way to extend the one image example:

PImage a;

void setup() {
  size(800,800);
  background(127);
  a = loadImage("a/1.jpg");
  noLoop();
}  

void draw(){
  image(a,random(300),random(300),a.width/2, a.height/2);

}

to multiple images. Is there a simple way to achieve this?

Thank you very much.


Solution

  • I'm sure there are more elegant ways to do it, but wouldn't something as simple as this work?

    PImage a;
    Pimage b;
    
    void setup() {
      size(800,800);
      background(127);
      a = loadImage("a/1.jpg");
      b = loadImage("b/1.jpg");
      noLoop();
    }  
    
    void draw(){
      image(a,random(300),random(300),a.width/2, a.height/2);
      image(b,random(300),random(300),b.width/2, b.height/2);
    }
    

    You can find an example of listing a directories here: http://processing.org/learning/topics/directorylist.html. The reference section for loops is here: http://processing.org/reference/loop_.html.