Source - Dokumentation
Eine Zentrale Rolle, was die Ablaufsteuerung im Programm
betrifft spielt die Klasse flowvisWindow. Sie repräsentiert
Das Hauptfenster der Anwendung, das sämtliche Komponenten
des GUI umfasst. Damit fungiert die Klasse flowvisWindow auch
als Vermittler zwischen User und den Rendering-Algorithmen.
Ein wesentliches GUI-Element im Hauptfenster ist das Ausgabe-
Widget (Klasse OutputWidget). Auf dieses wird das gerenderte
Bild - welches in Form einer QPixmap vorliegt - übertragen.
OutputWidget verfügt weiters über die Fähigkeit, Mausklicks
und damit Seed-Punkte für eine spätere Animation zu speichern.
Was die Daten angeht sind die Klassen Data, Grid, GridPoint,
und Cell von größter Wichtigkeit. Die Klasse Data speichert
die Daten zunächst in einem unregelmäßigen und nach dem
interpolieren in einem regelmäßigen karthesischen grid.
Weiters stellt diese Klasse Funktionen zur Verfügung, die
das Umrechnen von Pixel- in reale Werte und umgekehrt ermöglichen.
Grid stellt ein für die Abstands-Berechnungen für Streamlines
wichtiges Gitter zur Verfügung. Cell repräsentiert in diesem
Zusammenhang eine Zelle in dem Gitter und GridPoint steht
für einen Punkt im Grid.
Für Das Rendering sind die Klassen ArrowField und Streamlines
zuständig. Beide sind von FlowVis abgeleitet. wichtig hierbei
sind die render()-Methoden, die von den Kindern unterschiedlich
implementiert werden. Die Funktionalität der Animation ist
in der Klasse Streamlines untergebracht.
|