如何加载使用Pimage创建的最新文件夹?

时间:2017-07-20 00:27:04

标签: processing

我有新的文件夹,其中包含每次运行不同草图时在草图的数据文件夹中创建的图像。我需要找到一种方法来加载最近创建的文件夹中的最新图像。它看起来像这样:http://imgur.com/a/0PIsJ(test2是最近创建的)
我将如何使用Pimage进行此操作?

我目前在草图中使用的代码:

final int len=25;
final float thresh=170;

final int STEPX=18;
final int STEPY=18;

boolean newDesign=false;
PImage pic;

ArrayList<PImage> imgContainer;
int n=3;

void setup() {  
size(800, 800, P2D);
colorMode(RGB, 255);
rectMode(CENTER);
//imageMode(CENTER);

pic=loadImage("hand.jpg");
pic.resize(width, height);

color c1 = color(200, 25, 25);
color c2 = color(25, 255, 200);  

imgContainer=new ArrayList<PImage>();
for (int i=0; i<n; i++) {
PImage pimg=loadImage("");
pimg.resize(STEPX,STEPY);
imgContainer.add(pimg);
}

noLoop();  //Driven by redraw
noStroke();
}

void draw() {
background(250, 250, 250);
if (newDesign==false) {
return;
}

pic.loadPixels();

for (int y = 0; y < height; y+=STEPY) {
for (int x = 0; x < width; x+=STEPX) {
// Get the color stored in the pixel
int index=y*width+x;
color pixelValue = pic.pixels[index];
// Determine the brightness of the pixel
float pixelBrightness = brightness(pixelValue);

float imgPicked=map(pixelBrightness,0,255, 0, n);
println("DEBUGGING check n="+n+" map returns "+imgPicked);
image(imgContainer.get((int)imgPicked), x, y);
}
}
}

void mouseReleased() {
newDesign=!newDesign;
redraw();
}

1 个答案:

答案 0 :(得分:0)

您可以使用the Java API中的File课程。它包含列出目录中所有文件(和文件夹)的函数,以及获取上次修改时间的函数。

你也应该从小做起。从基本草图开始,只打印出最近的文件夹。然后建立在那。然后,如果你遇到困难,你可以发帖MCVE。还要确保您的代码格式正确,因为您发布的代码非常难以阅读。祝你好运。