Gruphi - Die Graph GUI
This repository has been archived on 2025-03-12. You can view files and clone it, but cannot push or open issues or pull requests.
Find a file
2021-09-05 22:43:24 +02:00
gradle/wrapper Initial Commit 2021-06-28 23:54:52 +02:00
src Always include default factory 2021-09-05 22:43:24 +02:00
.editorconfig Initial Commit 2021-06-28 23:54:52 +02:00
.gitignore Commit solutions to h07 2021-09-05 22:42:44 +02:00
build.gradle.kts Remove redundant Main class, use RoadTrip instead 2021-06-29 00:00:24 +02:00
gradlew Initial Commit 2021-06-28 23:54:52 +02:00
gradlew.bat Initial Commit 2021-06-28 23:54:52 +02:00
gruphi.png Update README.md 2021-07-11 16:36:36 +02:00
README.md Allow user to specify weight for new connections 2021-09-05 21:49:23 +02:00
settings.gradle.kts Initial Commit 2021-06-28 23:54:52 +02:00

Gruphi - Die Graph GUI

Um diese GUI nutzen zu müssen, muss man die H1, sprich die Klasse h07.graph.DirectedGraphImpl, implementiert haben und eine Factory dafür erstellen. Die Einfachste sieht in etwa so aus:

public static <V, A> DirectedGraphFactory<V, A> defaultFactory() {
    return DirectedGraphImpl::new;
}

Diese kann man in der Klasse de.oshgnacknak.gruphi.GruphiMain angeben und die Main-Methode ausführen. Weiter kann man dort einige Variablen setzten, die in de.oshgnacknak.gruphi.Gruphi definiert sind. Unter anderem kann man hier auch seinen Dijkstra (H5) anmelden. Viel Spaß!

Streuerung

  • Pfeiltasten, Vimkeys, Mittlere Maustaste: Kamera bewegen

  • Mausrad: Zoomen

  • C: Graphen leeren

  • G: Graphen leeren und raster erzeugen

  • Linke Maustaste: Knoten erstellen

  • Rechte Maustaste: Knoten auswählen. Startknoten (grün) auswählen löscht Pfäde.

  • Escape, Q: Beenden

  • U, I: Gewichtung für die nächste Kante verkleinern/vergrößern

  • O: Gewichtung für die nächste Kante auf 1 zurücksetzten

Wenn Knoten ausgewählt (rot)

  • WASD: Knoten bewegen

  • X, Entfernen, Rücktaste: Knoten löschen

  • 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

  • P: Pfäde mit Knoten als Startknoten generieren (grün). Danach andere Knoten auswählen, um Pfäde zu sehen.