Загрузка нескольких изображений в обработке - PullRequest
1 голос
/ 19 февраля 2012

Я хотел бы загрузить и нарисовать несколько / все изображения из каталога в Обработка. Я не могу найти способ расширить один пример изображения:

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);

}

для нескольких изображений. Есть ли простой способ добиться этого?

Большое спасибо.

Ответы [ 2 ]

2 голосов
/ 19 февраля 2012

Я уверен, что есть более элегантные способы сделать это, но разве не так просто, как эта работа?

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);
}

Вы можете найти пример списка каталогов здесь: http://processing.org/learning/topics/directorylist.html. Справочный раздел для циклов здесь: http://processing.org/reference/loop_.html.

0 голосов
/ 08 сентября 2012

Представьте, что у вас есть известное количество изображений (n), называемых 0.jpg, 1.jpg, 2.jpg ..., тогда вы можете сделать вот что:

PImage[] fragment;
int n=3;

void setup() {
 size(400, 400);
 fragment=new PImage[n];
 for(int i=0;i<fragment.length;i++){
 fragment[i]=loadImage(str(i) + ".jpg");
}
}

void draw(){
  for(int i=0;i<fragment.length;i++){
  image(fragment[i],20*i,20*i);
}
}
...