Processing 显示动画时按按钮更改对象
我正在尝试在代码中添加动画。到目前为止,我拥有的是一个可以通过按下按钮来改变的对象。所以每次你按下按钮,对象都会改变(它是一棵树,我正在改变它的分支)。有没有可能添加一些像雪花这样的动画?问题是我必须把它放在draw方法中,这样它就会被自动调用,让我们认为它是动画。因此,我还必须始终添加背景/按钮和所有内容。但是我不能对我的主要对象(树)这样做,因为我只想在你按下按钮时更改它 有什么解决办法吗Processing 显示动画时按按钮更改对象,processing,Processing,我正在尝试在代码中添加动画。到目前为止,我拥有的是一个可以通过按下按钮来改变的对象。所以每次你按下按钮,对象都会改变(它是一棵树,我正在改变它的分支)。有没有可能添加一些像雪花这样的动画?问题是我必须把它放在draw方法中,这样它就会被自动调用,让我们认为它是动画。因此,我还必须始终添加背景/按钮和所有内容。但是我不能对我的主要对象(树)这样做,因为我只想在你按下按钮时更改它 有什么解决办法吗 提前感谢在刷新其他对象的同时保留某些对象,您可以: 仅刷新部分屏幕。比如,画一个形状(rect或其他任
提前感谢在刷新其他对象的同时保留某些对象,您可以:
background()
在每个绘制周期清除整个屏幕/**
*这是一个非常简单的示例,可以删除屏幕的一部分以
*选择性持久绘制
**/
无效设置(){
尺寸(400400);
背景(0);
仰泳();
}
作废提款(){
填充(0);
矩形(0,0,宽度/2,高度);
填充(120);
椭圆(宽度/4,帧数%宽度,100100);
}
void mouseMoved(){
填充(255);
椭圆(mouseX,mouseY,10,10);
}
二,
/**
*一个非常简单的有条件地绘制stuf的示例
*坚持
**/
ArrayList points=新的ArrayList();
布尔showBalls=true;//有图格尔的钥匙吗
无效设置(){
尺寸(400400);
背景(0);
仰泳();
}
作废提款(){
背景(0);
填充(30);
rect(帧数百分比宽度,100200200);
填充(120);
椭圆(宽度/2,帧数%宽度,150,150);
填充(255);
if(showBalls){
对于(PVector p:点){
椭圆(p.x,p.y,10,10);
}
}
如果(points.size()>500){
点。清除();
}
}
void mouseMoved(){
椭圆(mouseX,mouseY,10,10);
添加(新的PVector(mouseX,mouseY));
}
按下void键(){
showBalls=!showBalls;
}
三,
/**
*使用PGraphics作为图层的一个非常简单的示例
*坚持
**/
图形层;
无效设置(){
尺寸(400400);
图层=createGraphics(宽度、高度);
layer.beginDraw();
分层填充(255);
layer.endDraw();
背景(0);
仰泳();
}
作废提款(){
背景(0);
填充(30);
rect(帧数百分比宽度,100200200);
填充(120);
椭圆(宽度/2,帧数%宽度,150,150);
图像(层,0,0);
}
void mouseMoved(){
layer.beginDraw();
椭圆层(mouseX,mouseY,10,10);
layer.endDraw();
}
我已经对动画进行了编码。但正如我所说,我是在draw方法中完成的(该方法一直自动执行)。通过这种方式,我一次又一次地创建新的背景/按钮和所有元素(因此树隐藏在它们后面),您可以编辑您的问题,或者如果需要,可以删除它。只要试着问一些具体的问题,比如“如何使用Win32/C++绘制椭圆?”,好的问题就在这些方面。请发布一些代码,并添加一些具体的问题。我很乐意帮助你。