我需要处理代码的帮助。它实际上是一个简短易用的代码,但我是编程的初学者,所以对我来说似乎一切都很困难...... :(
我的目标是......
我已经编写了一些代码(见下文),但它无法正常工作。如果有人能帮助我找出我的代码有什么问题,我将非常感激。非常感谢你提前! :)
这是我的代码:
PImage pic;
// Declare variables for the picture
float pic_x;
float pic_y;
float pic_r = 100;
float pic_x_new = random(0, 400);
float pic_y_new = random(0, 400);
boolean mouseOverPic;
void setup(){
size(500,500);
background(0,100,0);
//loading the picture
pic = loadImage("pic.png");
image(pic, pic_x, pic_y, pic_r, pic_r);
}
void draw(){
mouseOverPic = mouseX <= pic.width
&& mouseX >= pic_x
&& mouseY <= pic.height
&& mouseY >= pic_y;
if (mousePressed && mouseOverPic) {
background(100);
image(pic, pic_x_new, pic_y_new, pic_r, pic_r);
}
}
答案 0 :(得分:1)
请您尝试更具体,而不是说您的代码无法正常运行?您是否尝试过debugging your code来缩小问题范围?哪一行代码的行为与您的预期不同?
您所拥有的代码并没有多大意义,因为您只需在点击图像时绘制图像。这听起来并不像你想做的那样。并且您的碰撞检测代码不正确。尝试使用一些示例值运行您的代码,以确切了解它正在做什么。我在Processing available here中编写了一个关于碰撞检测的教程。
要解决这个问题,你真的需要break your problem down into smaller pieces并一次一张。例如:
如果您遇到特定步骤,请缩小问题范围并在新问题中发布MCVE。祝你好运。
答案 1 :(得分:0)
我相信你会对pic_x
进行测试,但会使用pic_x_new
来绘制图片(与y
相同)。您应该使用相同的var来放置和测试图像。
另一种方法是创建一个函数来测试鼠标对图像传递新值作为参数。