For Processing/Java中的圆金字塔循环

For Processing/Java中的圆金字塔循环,java,for-loop,while-loop,drawing,processing,Java,For Loop,While Loop,Drawing,Processing,我试图在处理过程中画一个由10个圆圈组成的金字塔,但我想不出一个好方法来将代码压缩成一个干净的循环。lights[c].display()函数只是在当前翻译的中心绘制一个椭圆和一些文本。我想保留gap变量,作为更新圆之间间距的工具。我只是还没有弄明白如何以一种导致金字塔的方式增加行和列。总有10个圆圈。谢谢你的帮助 您可以从这个简单的解决方案开始 int[] tx = new int[]{0, -1, 1, ...}; int[] ty = new int[]{0, 2, 2, ...};

我试图在处理过程中画一个由10个圆圈组成的金字塔,但我想不出一个好方法来将代码压缩成一个干净的循环。
lights[c].display()
函数只是在当前翻译的中心绘制一个椭圆和一些文本。我想保留
gap
变量,作为更新圆之间间距的工具。我只是还没有弄明白如何以一种导致金字塔的方式增加行和列。总有10个圆圈。谢谢你的帮助




您可以从这个简单的解决方案开始

int[] tx = new int[]{0, -1, 1, ...};
int[] ty = new int[]{0, 2, 2, ...};

for(int c = 0; c < circlesCount; c++) {
  pushMatrix();
  translate(tx[c] * gap, ty[c] * gap);
  lights[c].display();
  popMatrix();
}
int[]tx=新的int[]{0,-1,1,…};
int[]ty=新的int[]{0,2,2,…};
for(int c=0;c
您可以从这个简单的解决方案开始

int[] tx = new int[]{0, -1, 1, ...};
int[] ty = new int[]{0, 2, 2, ...};

for(int c = 0; c < circlesCount; c++) {
  pushMatrix();
  translate(tx[c] * gap, ty[c] * gap);
  lights[c].display();
  popMatrix();
}
int[]tx=新的int[]{0,-1,1,…};
int[]ty=新的int[]{0,2,2,…};
for(int c=0;c
这当然有帮助!那当然有帮助!