56 lines
985 B
Markdown
56 lines
985 B
Markdown
# Gruphi - Die Graph GUI
|
|
|
|
![](gruphi.png)
|
|
|
|
Um diese GUI nutzen zu müssen,
|
|
muss man die H1,
|
|
sprich die Klasse `h07.graph.DirectedGraphImpl`,
|
|
implementiert haben
|
|
und eine Entsprechende Fabrik in der `Gruphi.main()` angeben.
|
|
Die Einfachste Fabrik sieht in etwa so aus:
|
|
|
|
```java
|
|
public class EmptyGraphFactory<V, A> implements DirectedGraphFactory<V, A> {
|
|
|
|
@Override
|
|
public DirectedGraph<V, A> createDirectedGraph() {
|
|
return new DirectedGraphImpl<>();
|
|
}
|
|
}
|
|
```
|
|
|
|
|
|
# Streuerung
|
|
|
|
- `C`:
|
|
Graphen leeren
|
|
|
|
- `G`:
|
|
Graphen leeren und raster erzeugen
|
|
|
|
- Linke Maustaste:
|
|
Knoten erstellen
|
|
|
|
- Rechte Maustaste:
|
|
Knoten auswählen
|
|
|
|
- Escape, `Q`:
|
|
Beenden
|
|
|
|
## Wenn Knoten ausgewählt (rot)
|
|
|
|
- WASD, Pfeiltasten, Vimkeys:
|
|
Knoten bewegen
|
|
|
|
- Linke Maustaste:
|
|
Verbingung erstellen bzw. löschen,
|
|
wenn anderer Knoten geklickt.
|
|
Sonst Knoten teleportieren
|
|
|
|
- Rechte Maustaste:
|
|
Knoten unauswählen,
|
|
bwz. neuen Knoten auswählen
|
|
|
|
- `M`:
|
|
Labyrinth mit Knoten als Startknoten generieren
|