随机绘制不同形状的多边形

时间:2009-10-11 21:51:28

标签: java random drawing coordinates

我的程序以随机​​大小(宽度和高度)绘制10个多边形三角形。使用Random generator = new Random()生成多边形的坐标(点)。由于三角形的点和宽度和高度是随机生成的,我如何控制绘制的尺寸数量?例如总共有10个多边形,但我想限制不同大小的数量,例如只有2或4种不同的尺寸。

for(int i = 0; i < 10; i++) {
   double xWidth = generator.nextDouble() * 50.0 + 20.0; // range width of triangle
   double yHeight = generator.nextDouble() * 50.0 + 20.0; // range height of triangle

   xCoord[0] = generator.nextInt(300);
   yCoord[0] = generator.nextInt(300);

   xCoord[1] = (int) (xCoord[0] - xWidth);
   xCoord[2] = (int) (xCoord[1] + (xWidth/2));         

   yCoord[1] = yCoord[0];
   yCoord[2] = (int) (yCoord[1] - yHeight);         

   triangles.add( new Polygon(xCoord,yCoord, 3));
}

3 个答案:

答案 0 :(得分:0)

为什么不随机生成4个形状,然后运行不同的循环从这四个形状中随机挑选。

答案 1 :(得分:0)

这段代码只生成tringles,必须有一个.draw()某处 - 你只需将它包装在一些选择一到四个三角形的代码中 - 如果你想要那些选择那些,那么再次需要某种随机函数随机。

答案 2 :(得分:0)

int limit = generator.nextInt(4)+1;    // [1,4]
for(int i = 0; i < limit; i++) {
 //...
}