我正在尝试使图像在处理中移动,但是图像留下了痕迹。让我绊倒的重要部分是,我无法在draw()中声明背景,因为我还有其他放置图像的功能。以下是相关代码:
void setup()
{
size(752,500);
background = loadImage("prairie.jpg");
background(background);
noStroke();
animal = loadImage("squirrel.png");
bird = loadImage("bird.gif");
rock = loadImage("rock.png");
cloud = loadImage("cloud.png");
jeep = loadImage("jeep.png");
flower = loadImage("flower.png");
}
float jeepX = 752;
float jeepY = 250;
float size = 100;
void draw()
{
image(jeep,150,350,125,125);
image(jeep,jeepX,jeepY,size,size);
jeepX--;
jeepY = jeepY + .25;
size += .25;
image(jeep,jeepX + 1,jeepY - .25, size -.25, size - .25, 0,0,0,0);
if(jeepY > height)
{
jeepX = 752;
jeepY = 250;
size = 100;
}
}
这是给实验室使用的,助教不知道如何,而且我还没有机会去问教授。
如果没有人知道答案和/或与其他功能(放置图像)有关,我将发布相关代码。
最佳答案
为了使移动的物体不留痕迹,必须在重新绘制图片之前先清除边框(如果没有,请不要忘记重置背景)
实际上,它会绘制一辆吉普车,然后再绘制另一辆吉普车。