Präsentation herunterladen
1
Java: Reversi Spielbrett
Richard Göbel
2
Darstellung des Spielbretts
3
Interne Darstellung des Spielbretts
class ReversiBoard { public byte [][] board = new byte[8][8]; public static final byte RED = -1; public static final byte EMPTY = 0; public static final byte GREEN = 1; . . . }
4
Definition eigener Komponenten - Das Reversibrett
class ReversiBoard { public ReversiBoard() {...} public LinkedList validMoves (byte col){...} public boolean doMove(byte col, BoardPos p){...} public boolean finished(byte col){...} public byte winner(){...} }
5
Implementierung der internen Darstellung
6
Grafische Darstellung des Spielbretts - Darstellung auf dem Bildschirm
7
Grafische Darstellung des Spielbretts - Ansatz
Definition einer eigenen Komponente als Unterklasse von JComponent Verwendung der Methode ‚paint‘ zum „Malen“ des Spielbretts Attribute enthalten die darzustellende Information (hier ReversiBoard)
8
Grafische Darstellung des Spielbretts - Methode paint
public void paint (Graphics g){ Graphics2D g2 = (Graphics2D) g; . . . g2.setStroke(new BasicStroke( )); g2.draw(new Line2D.Double( . . .)); g2.setPaint(. . . ); g2.fill (new Ellipse2D.Double( )); }}
9
Grafische Darstellung des Spielbretts - Aufbau der Klasse für die Darstellung
class ReversiDisplay extends JComponent { public ReversiBoard rb = ; public ReversiDisplay(){ setBackground(. . .); setForeground(. . .);} public void paint (Graphics g){ . . . }
10
Implementierung der Grafik
11
Eingabe mit der Maus
12
MouseAdapter für das ReversiBoard
class ReversiDisplay { . . . class ReversiListener() extends MouseAdapter { public void mouseClicked(MouseEvent e) {...} } public ReversiDisplay() { addMouseListener(new ReversiListener());
13
MouseAdapter als Anonyme Klasse
class ReversiDisplay { . . . public ReversiDisplay() { addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { selX = e.getX(); selY = e.getY(); } });
14
Implementierung der Eingabe
Ähnliche Präsentationen
© 2025 SlidePlayer.org Inc.
All rights reserved.