后台功能如何在处理中工作?
Posted
技术标签:
【中文标题】后台功能如何在处理中工作?【英文标题】:How does background function work in Processing? 【发布时间】:2022-01-23 03:33:31 【问题描述】:哟,我希望你一切都好!
如标题所示,我想知道background
函数在处理中是如何工作的。
第一个程序(background
在画圆之前调用)和第二个程序(background
)有什么区别?在画完圆圈后调用)哪个“不起作用”?
int x = 1;
void setup()
size(400, 400);
background(255);
void draw()
background(255);
circle(200 + x, 200, 20);
x++;
int x = 1;
void setup()
size(400, 400);
background(255);
void draw()
circle(200 + x, 200, 20);
background(255);
x++;
【问题讨论】:
【参考方案1】:background
不仅定义了背景色,还用背景色填充了窗口。因此,您必须在绘制场景对象之前调用background
:
void draw()
background(255);
circle(200 + x, 200, 20);
x++;
background
清除窗口,从而清除所有以前绘制的对象。 background
不会改变状态。当您调用background
时,窗口中的每个像素都会立即更改。
(由于 处理 使用 OpenGL,glClear
在后台被调用。)
【讨论】:
@Bimbouw 不客气。请阅读What should I do when someone answers my question? 和How does accepting an answer work?。 不过,在我看来,这没有意义......我的意思是,在绘图之前在setup
中调用background
是有意义的,因为setup
被执行一次,但它没有' t 在draw
函数中...
@Bimbouw 请阅读我的回答。 background
实际上用背景颜色清除窗口。当您调用背景时,窗口中的每个像素都会立即更改。以上是关于后台功能如何在处理中工作?的主要内容,如果未能解决你的问题,请参考以下文章
如何使“在编辑器中打开”功能在 Vue Devtools 中工作