mercredi 27 mai 2015
Turm von Hanoi
Posted on 03:29 by verona
Halli hallo,
also ich hatte die Aufgabe die Türme von Hanoi in ein GUI umzusetzen. Ich habe die Türme und die Scheiben per Rectangle erstellt. Nun fehlt mir die Animation. Wenn ich eine Scheibe in eine andere Position setzen möchte, kann ich die alte Scheibe, die in einem Array gespeichert ist nicht löschen. Ich weiß, dass ich jedesmal eine neue Grafik zeichnen muss. Ich kann es aber nicht umsetzen und bin halt zurzeit total verwirrt.
Ich würde mich freuen wenn Ihr mir helfen würdet.
Hier ist der Code:
also ich hatte die Aufgabe die Türme von Hanoi in ein GUI umzusetzen. Ich habe die Türme und die Scheiben per Rectangle erstellt. Nun fehlt mir die Animation. Wenn ich eine Scheibe in eine andere Position setzen möchte, kann ich die alte Scheibe, die in einem Array gespeichert ist nicht löschen. Ich weiß, dass ich jedesmal eine neue Grafik zeichnen muss. Ich kann es aber nicht umsetzen und bin halt zurzeit total verwirrt.
Ich würde mich freuen wenn Ihr mir helfen würdet.
Hier ist der Code:
Java Code:
-
import java.awt.*;
-
-
import javax.swing.*;
-
-
-
-
public static int turmLength = 6;
-
public static int turmSpace = 41;
-
public static int turmWidth = 40;
-
public static int turmX = 20;
-
-
TuermeRunnable(){
-
thread.start();
-
}
-
-
-
public void define(int x, int y, int w){
-
for(int i = 0; i < tuerme.length; i++){
-
}
-
}
-
-
-
define(85, 700, 340);
-
-
//Linien
-
/* ******************************* */
-
g.fillRect(250, 220, 15, 500);
-
-
g.fillRect(855, 220, 15, 500);
-
-
g.fillRect(1500, 220, 15, 500);
-
/* ******************************* */
-
-
//Scheiben
-
for(int i = 0; i < tuerme.length; i++){
-
g.fillRect(tuerme[i].x, tuerme[i].y, tuerme[i].width, tuerme[i].height);
-
}
-
}
-
-
-
public int moveFrame = 1000, moveSpeed = 0;
-
public void bewege(char start, char ablage, char ziel, int scheiben)
-
{
-
if(moveSpeed >= moveFrame){
-
moveFrame = 0;
-
if(scheiben == 1){
-
//System.out.println("Lege die oberste Scheibe von " + "Turm " + a + " auf Turm " + c + ".");
-
-
tuerme[scheiben+4].setLocation(1435, 700);
-
}
-
-
tuerme[scheiben+3].setLocation(768, 700);
-
}
-
}else{
-
bewege(start, ablage, ziel, scheiben-1);
-
bewege(start, ziel, ablage, 1);
-
bewege(ziel, start, ablage, scheiben-1);
-
}
-
}else{
-
moveSpeed += 1;
-
}
-
}
-
-
public void run() {
-
while(true){
-
repaint();
-
try{
-
bewege('a', 'b', 'c', turmLength);
-
}
-
}
-
-
-
-
}
Turm von Hanoi
Categories: Turm von Hanoi
Inscription à :
Publier les commentaires (Atom)
0 commentaires:
Enregistrer un commentaire