Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Processing 循环序列的处理_Processing_Sequence_Ellipse - Fatal编程技术网

Processing 循环序列的处理

Processing 循环序列的处理,processing,sequence,ellipse,Processing,Sequence,Ellipse,我试图沿着画布的y轴和x轴顺序绘制几个椭圆。点在随机y位置绘制 我以前曾让椭圆沿x轴以随机高度顺序绘制。但是,沿y轴的所有椭圆都是同时绘制的 for(int x=0;xmh-3;y--){ 椭圆(x*直径,y*直径,直径,直径); } } xStep++; 如果(xStep>w){ xStep=0; 偏移=随机(1000); } 然后我继续添加另一个for循环,尝试沿y轴和x轴对椭圆进行排序。因此,视觉上,在绘制下一列(x轴)之前,在y轴上一个接一个地绘制每个椭圆。然而,使用下面的代码,我得到

我试图沿着画布的y轴和x轴顺序绘制几个椭圆。点在随机y位置绘制

我以前曾让椭圆沿x轴以随机高度顺序绘制。但是,沿y轴的所有椭圆都是同时绘制的

for(int x=0;xmh-3;y--){
椭圆(x*直径,y*直径,直径,直径);
}
}
xStep++;
如果(xStep>w){
xStep=0;
偏移=随机(1000);
}
然后我继续添加另一个for循环,尝试沿y轴和x轴对椭圆进行排序。因此,视觉上,在绘制下一列(x轴)之前,在y轴上一个接一个地绘制每个椭圆。然而,使用下面的代码,我得到的是y轴和x轴的顺序“绘制”,但在视觉上,它看起来不像是在绘制下一列之前完成了一行

//对行和帧进行计数
如果(计数器>7){
计数器=0;
行计数器++;
}
对于(int j=0;j mh-3;y--){
y=y-j;
椭圆(x*直径,y*直径,直径,直径);
}
}
}
}
xStep++;
计数器++;
如果(行计数器>7){
行计数器=0;
}
如果(xStep>w){
xStep=0;
偏移=随机(1000);
}
或者,如果我尝试对xStep使用条件,我只会绘制一行椭圆

//对行和帧进行计数
如果(计数器>7){
计数器=0;
行计数器++;
}
对于(int j=0;j mh-3;y--){
y=y-j;
椭圆(x*直径,y*直径,直径,直径);
xStep=lastXstep;
}
}
}
}
xStep++;
计数器++;
如果(行计数器>7){
行计数器=0;
}
如果(xStep>w){
xStep=0;
偏移=随机(1000);
}
有人能帮我指出for循环构造的错误方向吗?
谢谢。

请记住,每次调用
draw()
函数都会绘制一个帧。处理是双缓冲的,因此直到
draw()
函数结束时屏幕才会更新。这就是为什么你只看到最终结果,而不是中间的步骤

如果要在两个步骤之间渲染,则必须将其拆分为多个帧。您可以通过在一组变量中跟踪程序的状态,随时间改变这些变量,并使用这些变量绘制每一帧来实现这一点

无耻的自我提升:是一个关于动画处理的教程,更详细地描述了上述方法