Создание шахматной доски 3х3 поверх изображения с использованием Graphics2D - PullRequest
0 голосов
/ 23 января 2012

Я хочу создать наложение шахматной доски 3x3, где не сплошные квадраты должны быть прозрачными.

Я не хочу перебирать пиксели, а просто рисовать квадраты, используя Graphics2D для созданияшахматная доска.(Нужен ли цикл for, оператор if или оба?)
Вот мой код:

Picture myPict = new Picture(myPathName);
myPict.show();
Graphics2D graphicsObj = myPict.getGraphics2D();
final int WIDTH = myPict.getWidth() / 3;
final int HEIGHT = myPict.getHeight() / 3;
for (int i = 0; i > WIDTH; i = WIDTH * 2) {
    Rectangle2D.Double shape1 = new Rectangle2D.Double(WIDTH, HEIGHT, 0, 0);
    graphicsObj.draw(shape1);
}

1 Ответ

3 голосов
/ 23 января 2012

Я бы использовал комбинированный (двойной) оператор цикла / if для рисования твердых частей шахматной доски. В псевдокоде это может быть выражено как:

draw image
for each row {
    for each column {
      if 'odd' square number {
        graphics fill rectangle
      }
  }
}
...