40 lines
1.2 KiB
Java
Executable file
40 lines
1.2 KiB
Java
Executable file
import org.w3c.dom.css.Rect;
|
|
|
|
import java.awt.*;
|
|
import java.awt.geom.Rectangle2D;
|
|
import java.util.ArrayList;
|
|
import javax.swing.JPanel;
|
|
import javax.swing.border.StrokeBorder;
|
|
|
|
public class DrawingPanel extends JPanel {
|
|
|
|
public DrawingPanel() {
|
|
this.setPreferredSize(new Dimension(800, 600));
|
|
chessboard = new Chessboard(this);
|
|
new Tower(chessboard, 0, 7);
|
|
new Horse(chessboard, 1, 7);
|
|
new Tower(chessboard, 7, 7);
|
|
new Horse(chessboard, 6, 7);
|
|
new Queen(chessboard, 4, 7);
|
|
new Archer(chessboard, 5, 7);
|
|
new Archer(chessboard, 2, 7);
|
|
new King(chessboard, 3, 7);
|
|
for (int i = 0; i < 8; i++) {
|
|
new Pawn(chessboard, i, 6);
|
|
}
|
|
}
|
|
|
|
private Chessboard chessboard;
|
|
|
|
@Override
|
|
public void paint(Graphics g) {
|
|
RenderingHints rh = new RenderingHints(RenderingHints.KEY_RENDERING,
|
|
RenderingHints.VALUE_RENDER_QUALITY);
|
|
rh.put(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
|
|
Graphics2D g2 = (Graphics2D) g;
|
|
g2.setRenderingHints(rh);
|
|
super.paint(g);
|
|
chessboard.draw(g2);
|
|
}
|
|
|
|
} |