Вращающиеся объекты в сетке (GUI, JAVA SWING)
Итак, я пытаюсь сделать этот урок:http://mathcs.slu.edu/~fritts/cse131/labs/lab9/index.html
Но я нене знаю, как вращать объекты
synchronized void moveDown() {
}
Есть какой-то определенный метод для этого, или я должен реализовать свой собственный код? Я думал об изменении формы объекта, но это означало бы, что мне нужно каждый раз менять текущий объект, что может быть немного сложным для реализации.
Метод, который вызывает moveDown:
public void keyPressed(KeyEvent event) {
int key = event.getKeyCode();
switch (key) {
case KeyEvent.VK_UP: // up arrow
case KeyEvent.VK_KP_UP:
currentPiece.rotateCounterclockwise();
break;
case KeyEvent.VK_DOWN: // down arrow
case KeyEvent.VK_KP_DOWN:
currentPiece.rotateClockwise();
break;
case KeyEvent.VK_LEFT: // left arrow
case KeyEvent.VK_KP_LEFT:
currentPiece.moveLeft();
break;
case KeyEvent.VK_RIGHT: // right arrow
case KeyEvent.VK_KP_RIGHT:
currentPiece.moveRight();
break;
case KeyEvent.VK_SPACE: // space bar
currentPiece.drop();
}
}
Я собирался добавить L1a, L1b, L1c и т. Д.Есть ли другой способ?
public static final int[][] L1 =
{{1,1},
{0,1},
{0,1}
};
public static final int[][] L2 =
{{0,1},
{0,1},
{1,1}
};
public static final int[][] T =
{{0,1},
{1,1},
{0,1}
};
public static final int[][] BOX =
{{1,1},
{1,1}
};
public static final int[][] BAR =
{{1,1,1,1}
};
public static final int[][] STEP1 =
{{1,0},
{1,1},
{0,1}
};
public static final int[][] STEP2 =
{{0,1},
{1,1},
{1,0}
};