1
所以这是我的总代码,所以我从flickr中获取图像将其存储在数组中然后在绘制循环这些图像。然后我想让它们动画到100,100点。看到我的评论更详细的解释。动画图像,但图像不移动
int imageIndex;
XML xml;
String tag_mode = "all";
String words[];
PImage[] displayImages;
int amount = 500;
int counter = 0;
PrintWriter output;
int j = 0;
int x =50;
int y = 50;
String labelNaam = "Medium";
void setup() {
size(500, 500);
String lines[] = loadStrings("text.txt");
words = split(lines[0], " ");
displayImages = new PImage[amount];
output = createWriter("positions.txt");
for (int k = 0; k<words.length; k++) {
int randomX = int(random(2));
if (randomX == 1) {
x = displayWidth;
} else {
x = -500;
}
int randomX2 = int(random(2, 4));
if (randomX2 == 2) {
y = displayHeight;
} else {
y = -500;
}
String query = "https://api.flickr.com/services/rest/?method=flickr.photos.search&api_key=MY_API_KEY&tags="+ words[k] + "&sort=relevance&extras=url_o&tag_mode="+ tag_mode +"format=rest";
xml = loadXML(query);
XML[] children = xml.getChildren("photos");
if (children.length > 0) {
XML[] childPhoto = children[0].getChildren("photo");
// println(childPhoto);
if (childPhoto.length > 0) {
for (int i = 0; i < 1; i++) {
String id = childPhoto[i].getString("id");
String title = childPhoto[i].getString("title");
String user = childPhoto[i].getString("owner");
String url = "https://www.flickr.com/photos/"+user+"/"+id;
String query2 ="https://api.flickr.com/services/rest/?method=flickr.photos.getSizes&api_key=MY_APIKEY&photo_id="+id+"&format=rest";
xml= loadXML(query2);
XML[] children2 = xml.getChildren("sizes");
if (children2.length > 0) {
XML[] childSize2 = children2[0].getChildren("size");
if (childSize2.length >0) {
println(counter);
if (counter <= words.length) {
String labelNaam = "Medium";
String label = childSize2[5].getString("label");
String source = childSize2[5].getString("source");
displayImages[counter] = loadImage(source, "jpg");
counter++;
}
}
}
}
}
}
}
textAlign(CENTER, CENTER);
smooth();
}
void draw() {
if (j > words.length-1) {
j = 0;
}
if (displayImages[j] != null) {
println(x + "|||||"+ y);
image(displayImages[j], x, y);
j++;
}
if (x < 100) {
x+=100;
} else {
x-=100;
}
if (y < 100) {
y+=100;
} else {
y-=100;
}
delay(1000);
}
谢谢你的回答!但我不希望所有图像都有相同的起点。所以这就是为什么我把位置画出来,所以每个图像都有不同的起点。现在每个后续的图像被放置在100,100点附近,但是我希望所有的图像都移动到100,100点,而动画不会使静态接近100,100。我会怎么做?我编辑了我原来的帖子,所以你可以看到我的完整代码,那么它可能会更清晰一些。 – FutureCake