Image 处理中的图像移动/重力问题2.2.1
我正试图将重力应用于我加载到处理数据文件中的图像。所有的图像都很好,一切都很好。但是,我为之前只是形状的对象设置的重力条件与我放置的图像不匹配 这是源代码,很抱歉,如果它真的很草率…我是一个新手 基本上我有一个棒状图像,一个背景图像和一个气球。我希望单击鼠标时气球释放,并向上飞行。当我只使用简单的对象时,它工作得很好,但当我使用存储的图像时,我就遇到了错误。我做错了什么?我把这个代码搞砸了有多严重?我想弄清楚我做错了什么,真是疯了 顺便说一下,我使用的是processing 2.2.1Image 处理中的图像移动/重力问题2.2.1,image,image-processing,processing,Image,Image Processing,Processing,我正试图将重力应用于我加载到处理数据文件中的图像。所有的图像都很好,一切都很好。但是,我为之前只是形状的对象设置的重力条件与我放置的图像不匹配 这是源代码,很抱歉,如果它真的很草率…我是一个新手 基本上我有一个棒状图像,一个背景图像和一个气球。我希望单击鼠标时气球释放,并向上飞行。当我只使用简单的对象时,它工作得很好,但当我使用存储的图像时,我就遇到了错误。我做错了什么?我把这个代码搞砸了有多严重?我想弄清楚我做错了什么,真是疯了 顺便说一下,我使用的是processing 2.2.1 floa
float line;
float xpos;
float ypos;
float speed = 1;
float gravity = 1;
int bodyHeight = 160;
float easing = 0.02;
PImage b;
PImage lol;
PImage balloon;
void setup(){
size(500,500);
b=loadImage("1406075208097 copy.jpg");
lol=loadImage("Dark-Wood-Background.jpg");
//Here's where I have trouble
balloon=loadImage("1194986736244974413balloon-red-aj.svg.thumb.png");
xpos = (mouseX);
ypos = (mouseY);
}
void draw(){
//DRAW BACKGROUND
background(b);
stroke(0);
//DRAW THE TETHER
line(width/2,height/2,mouseX,mouseY);
//THE BALLOON
noStroke();
fill(245,91,97);
image(balloon,mouseX-10,mouseY-30);
//THE STICK
noStroke();
fill(144,113,73);
image(lol,228,250);
//This next section sets up the conditions for the balloon on the stick.
if(mousePressed){
//DRAW BACKGROUND
background(b);
stroke(0);
//DRAW THE TETHER
line(width/2,height/2,mouseX,mouseY);
//THE STICK
image(lol,228,250);
//THIS NEXT SECTION IS FOR THE UPWARD MOVING BALLOON
image(balloon,mouseX-10,mouseY-30);
ypos = speed-.9999999;
speed = speed - gravity;
// If square reaches the bottom
// Reverse speed
if (ypos > height){
speed = speed * -99.99999999999999999999999999999;
}
}
}
请看这一行:
image(balloon,mouseX-10,mouseY-30);
您总是在鼠标位置绘制气球图像。您永远不会使用xpos或ypos变量来绘制气球图像
在绘制气球时,请尝试实际使用xpos和YPO来定位气球。请帮助我释放气球。您遇到了哪些错误?你说的“我有麻烦了”是什么意思?在我为YPO和xpos建立浮点之前,我只是让我的if mouse press语句尝试引用我在那里的气球图像。每当我运行该代码时,它都会说它无法将Pimage转换为float。这是我的第一个问题。我希望气球的图像与我在代码中设置的重力条件一起工作。当它刚刚画出形状时,气球的形状很好地向上漂浮,并通过顶部离开屏幕。我想从图像文件中得到同样的东西,但我不太知道如何让它这样做。我正在制作一个小的flash游戏,你可以通过点击气球来释放气球,让它向上飞。一旦我把XPO和YPO放进去,我就不再得到转换错误,但气球不再遵循if语句。它不会像我希望的那样改变状态。处理起来很新,但每天花8个小时。所以想弄明白这件事让我抓狂。太棒了,它真的能用。现在最后一个问题。当我单击气球时,它只对鼠标单击一次执行浮动动画。有没有办法重复整个动画?看看你的if(鼠标按下)逻辑。仅在当前按下鼠标时执行。你必须检查你的逻辑,真正思考你想发生什么,什么时候发生。谢谢,我把它清理了一点。我添加了一个void mouseClicked函数,这样我就可以在鼠标点击后让东西保持在一种状态。现在我只需要清理更多的代码。非常感谢。另外,我添加了int state1和int state2,所以基本上我可以有两个气球存在的阶段:浮动和停留在鼠标位置。