2012-02-18 2 views
1

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

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

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

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

спасибо за ответ. Но я искал все файлы из каталога (например, в цикле), вместо того, чтобы писать каждый из них. 500 изображений. – digit

+0

Специфичность хорошая. Я добавил дополнительную информацию в ответ. – Bill

0

Представьте у вас известное количество изображений (п) называется 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); 
} 
} 
Смежные вопросы