2021-06-30 18:43:52 +02:00
|
|
|
# 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
|
2021-07-01 20:50:11 +02:00
|
|
|
und eine entsprechende Fabrik in der `Gruphi.main()` angeben.
|
|
|
|
Die einfachste Fabrik sieht in etwa so aus:
|
2021-06-30 18:43:52 +02:00
|
|
|
|
|
|
|
```java
|
2021-07-01 20:50:11 +02:00
|
|
|
public static <V, A> DirectedGraphFactory<V, A> defaultFactory() {
|
|
|
|
return DirectedGraphImpl::new;
|
2021-06-30 18:43:52 +02:00
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
# 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:
|
2021-06-30 16:49:03 +00:00
|
|
|
Verbingung erstellen bzw. löschen,
|
2021-06-30 18:43:52 +02:00
|
|
|
wenn anderer Knoten geklickt.
|
|
|
|
Sonst Knoten teleportieren
|
|
|
|
|
|
|
|
- Rechte Maustaste:
|
|
|
|
Knoten unauswählen,
|
|
|
|
bwz. neuen Knoten auswählen
|
|
|
|
|
|
|
|
- `M`:
|
2021-06-30 16:49:03 +00:00
|
|
|
Labyrinth mit Knoten als Startknoten generieren
|