You are not logged in.

- Topics: Active | Unanswered

**geforce****Guest**

```
import acm.graphics.*;
import acm.program.*;
import java.awt.Color;
import java.util.Iterator;
import java.util.Random;
import java.util.List;
public class LAB1
{
final static int BLOCKWIDTH = 50;
final static int BLOCKHEIGHT = 10;
final static int NBLOCKS = 10;
final static int BLOCKROWS = 5;
final static int ROWZERO = 50;
final static int ROWSEPARATION = (5*BLOCKHEIGHT);
final static int WIDTH = (BLOCKWIDTH*NBLOCKS);
final static int HEIGHT = 600;
public static java.util.List<acm.graphics.GRect> createPlayfield()
{
Random r = new Random();
List<GRect> l = null;
int x = 0;
int y = ROWZERO - BLOCKHEIGHT;
Color c = new Color(r.nextInt(256));
addBrick(l,x,y,BLOCKWIDTH,BLOCKHEIGHT,c);
for (int i = 0; i < BLOCKROWS; i++)
{
i = (i * ROWSEPARATION) + ROWZERO;
for(int j = 0; j < NBLOCKS; j++)
{
j = j * BLOCKWIDTH;
}
}
}
public static void addBrick(java.util.List<acm.graphics.GRect> l, int x, int y, int width, int height, java.awt.Color c)
{
l.add(createBrick(x,y,WIDTH,HEIGHT,c));
}
public static acm.graphics.GRect createBrick(int x, int y, int width, int height, java.awt.Color c)
{
GRect s = new GRect(x,y,WIDTH,HEIGHT);
return s;
}
public static acm.graphics.GRect intersect(acm.graphics.GObject o,java.util.List<acm.graphics.GRect> l)
{
GRectangle r = o.getBounds();
for(GRect e : l)
{
if(e.getBounds().intersects(r))
return e;
}
return null;
}
```

Problem I have is the createPlayfield() method, I have no idea on what to do, this is the description..

createPlayfield is a static method that returns a List of GRects. Each GRect is coloured randmoly and is

of size BLOCKWIDTH x BLOCKHEIGHT. The blocks are placed in a grid BLOCKROWS height x

NBLOCKS. The i'th row of blocks has its upper edge aligned with row i * ROWSEPARATION +

ROWZERO. The j'th column of blocks has its left edge aligned with j * BLOCKWIDTH. You may

find it useful to implement this method using the addBrick method below.

API's : The acm.graphics.GRect Class.

I really have no Idea what to do, can anyone break down the steps on what to do? I know that for i'th and j'th blocks i need a nested for loop but I don't know how to make the block return the GRects and also have a problem with where to place the GRect constructor (as in the for loop for it to be repeated or anywhere else), thanks for any suggestions.

I would really like to get help on this, I've tryed a lot to fix this for the past couple of days, the following playfield method makes no sense, still trying to figure out what to do.

**geforce****Member**- Registered: 2012-05-21
- Posts: 2

Is this the right section that I should be posting, or should it be somewhere else..?

Offline

**bobbym****Administrator**- From: Bumpkinland
- Registered: 2009-04-12
- Posts: 104,772

Hi geforce;

Welcome to the forum. Yes, you are in the right section.

**In mathematics, you don't understand things. You just get used to them.****If it ain't broke, fix it until it is.**

**Online**

**geforce****Member**- Registered: 2012-05-21
- Posts: 2

Alright, just making sure.

Offline