2D Vector Field Visualization Flashcards
Welche flow field Quantitäten können durch Messungen oder Simulationen angegeben sein?
- Velocity (Vector Field)
- Pressure (Scalar Field)
- Density (Scalar Field)
- Temperatur (Scalar Field)
Welche flow field Quantitäten können von gegebenen Daten abgeleitet werden?
- Velocity magnitude (Scalar Field)
- Divergence and Vorticity (Scalar Field)
Welche direkten Methoden gibt es um 2D Flow Data zu visualisieren?
- Color coding
- Arrow plots
- Glyphs
Welche indirekten Methoden gibt es um 2D Flow Data zu visualisieren?
- Particle tracing in unstructured grids
- Particle tracing in curvilinear grids
- Streamlets
- Particle path -> Stream lines, Streaklines, Pathlines
- Texture-based Methoden
Wie funktionieren direkte Methoden um 2D Flow Data zu visualisieren?
Direkte Methoden wandeln Flussdaten so direkt wie möglich in visuelle Objekte um
Was ist der Vorteil von direkten Methoden 2D Flow Data zu visualisieren?
Schnelle, unmittelbare Darstellung ohne Vorverarbeitung
Was sind die Nachteile von direkten Methoden 2D Flow Data zu visualisieren?
- Es können nur lokale Eigenschaften dargestellt werden
- Schwer darstellbar sind: Globale Beziehungen zwischen Größen und zeitliches Verhalten
Wie funktioniert der Color Coding Ansatz?
Einfach eine skalare Flussgröße verwenden (oder ableiten) und eine Farbkodierung auf das resultierende Skalarfeld anwenden
Was sind die Vorteile von Color Coding?
Einfach und gut geeignet auch für zeitabhängige Daten (Video)
Was sind die Nachteile von Color Coding?
- Nur scalare Größen, keine Orientierung
- Zeitliche Beziehung nur über Video
Wie funktionieren Arrow Plots?
- Flussrichtungen an Datenpunkten werden durch kurze Linien oder Pfeilsymbole dargestellt
- Bei nahezu laminarer Strömung kann die flow magnitude durch die Länge oder Größe der Pfeile dargestellt werden
Was sind Glyphs/ Icons?
- Verallgemeinerung von Pfeildiagrammen
- Geometrische Objekte stellen weitere lokale Strömungseigenschaften dar
Welche Herausforderungen gibt es bei Glyphs/ Icons?
- Geometrische Eigenschaften sind nicht unabhängig
- Größe muss richtig gehandhabt werden
Was sind die Vorteile von Glyphs/ Icons?
- Scalar und vektorielle Informationen werden einfach dargestellt
- Direkte Darstellung mit geringem Rechenaufwand
Was muss man bei Glyphs/ Icons beachten, damit man die Größe richtig handhabt?
- Länge skaliert linear (Verdopplung der Länge bedeutet Verdopplung der Menge)
- Fläche skaliert quadratisch ( Verdopplung der Fläche bedeutet Skalierung der Menge um Wurzel 2
Was sind Nachteile von Glyphs/ Icons?
- Auflösung des Pfeildiagrammrasters ist begrenzt
- Nur lokale Information (kein räumlichen oder zeitlichen Beziehungen)
- Suche nach intuitiven Glyphs/ Icons ist schwierig
Was erfordern Methoden, die auf Vektorfeldintegration, d.h. Feldlinien, basieren?
Erfordern die Berechnung von particle paths mit numerischen Integrationsmethoden (z.B. Euler, Heun, Runge-Kutta)
Was ist der Vorteil indirekter Methoden gegenüber direkten Methoden?
Zeitliche und globale Beziehungen können besser dargestellt werden
Wie lautet der zweistufige Ansatz von Particle Paths?
Zuerst werden die Startpunkte festgelegt, dann werden die Particles durch die Flüssigkeit verfolgt. Die Verfolgung benötigt eine Stopp-Bedingung
Welche Möglichkeiten gibt es die Startpositionen von Particle Paths festzulegen?
- Benutzerdefinierte flowfield probes
- Gleichmäßiges Gitter (Streamlets)
- Zufällige Verteilung
- Spezielle Seeding-Algorithmen
Wie kann man Particle Paths berechnen?
- Iterative Bahnberechnung mittels numerischer Integration
- Verfolgung auf einem gleichmäßigen Gitter ist relativ einfach
- Verfolgung auf gekrümmten oder unstrukturierten Gittern erfordert eine Zellensuche
Wie funktionieren Streamlets?
Zeichne einen kurzen Particle Path (ein paar Schritte vor und zurück) für jeden Gitterpunkt
Was ist das Ziel von Seed Point Algorithmen?
Das Ziel ist es, Seeding-Punkte zu finden, die eine möglichst gleichmäßige Verteilung der Particle Paths ergeben
Wie lautet die Herangehensweise von Seed Point Placement Algorithmen?
- Unterteile das Gebiet gleichmäßig in Zellen mit gleicher Größe
- Wähle einen beliebigen Startpunkt
- Berechne den Particle Path für diesen Punkt vorwärts und rückwärts
- Markiere alle Zellen, die von diesem Pfad durchschnitten werden
- Wähle den nächsten Startpunkt in einer unmarkierten Zelle
- Beende die Berechnung neuer Particle Paths, wenn eine bereits markierte Zelle gekreuzt wird
Was zeigen Streamlines?
Zeitliche Beziehung in einem statischen Vektorfeld
Wie funktioniert Particle Tracing auf einer regular triangulation (2D triangle mesh)?
- Wähle einen Startpunkt (Zelle bekannt)
- Interpoliere die Geschwindigkeit mit baryzentrischen Koordinaten
- Berechne den nächsten Punkt durch numerische Integration
- Suche nach der Zelle, in der sich dieser Punkt befindet (Zellensuche benötigt)
Wie funktioniert der iterative Ansatz der Zellensuche in Triangle Meshes?
Vom Startpunkt ausgehend suche das benachbarte Dreiecksmesh, das am nächsten am errechneten nächsten Punkt liegt
Wie lautet die Voraussetzung für den iterativen Ansatz der Zellensuche in Triangle Meshes?
Man benötigt eine Datenstruktur, die Referenzen auf die benachbarten Dreiecke speichert
Wie funktioniert die Zellensuche in Triangle Meshes?
- Betrachte die Verbindungslinie zwischen dem Startpunkt und dem nächsten errechneten Punkt
- Berechne die Schnittpunkte mit jeder Kante der aktuellen Zelle
- Betrachte die benachbarte Zellen, die an diese Kante angrenzt
Wie lautet der Spezialfall bei der Zellensuche in Triangle Meshes?
- Die Verbindungslinie schneidet einen Vertex
- Wähle eines der entsprechenden Dreiecke willkürlich aus
Was ist C-Space?
- Computational Space
- Uniform grid
- Interpolation ist einfach
Was ist P-Space?
- Physical Space
- Curvilinear grid
- Hier gelten Vektoren
Wie ist das mapping zwischen C-Space und P-Space?
Das mapping ist bijektiv, es gibt eine eins zu eins Korrespondenz zwischen Punkten im C-Space und Punkten im P-Space
Wie lautet die Analogie für zeitabhängige Pathlines?
Lege ein Styroporkügelchen zum Zeitpunkt 0 in den Fluss und mache ein Bild mit langer Belichtungszeit
Wie lautet die Analogie für zeitabhängige Streamlines?
Es gibt keine. Man kann Zeit nicht stoppen
Wie lautet die Analogie für zeitabhängige Streaklines?
Tue dauerhaft Farbstoff an einer festen Position in den Fluss
Was ist Rauschen?
- Rauschen kann als ein Bild mit zufälligen (Grau-) Werten verstanden werden
- Enthält viele hohe Frequenzen
Was passiert mit Rauschen, wenn man Smoothing entlang einer bestimmten Richtung anwendet?
Die Glättungsrichtung wird sichtbar. Benachbarte Pixel in Kernelrichtung haben ähnliche Intensitäten, orthogonal zur Kernelrichtung variieren die Intensitäten stark
Wie lautet die Idee der Line Integral Convolution?
Glätte 2D-Rauschen entlang der fieldlines des Vektorfeldes
Wie funktioniert Line Integral Convolution?
- Bestimme einen kurzen Particle Path in vorwärts und rückwärts Richtung für jeden Pixel des Ergebnisbildes
- Betrachtung der Werte des Rauschens an diesen Positionen
- Glätte die Werte
Wie lautet die Idee der Texture Advection?
Verzerrung des Eingabebildes anhand der flowlines des Vektorfeldes
Wie lautet die Implementierung von Texture Advection?
- Definiere das Eingabebild als Polygon mit einer Textur
- Teile das Polygon in viele kleine Polygone
- Nehme Sie einen Zeitschritt für jeden Polygon-Eckpunkt
- Rendern Sie die verzerrten Polygone in den Framebuffer
- Nehme das Framebufferbild als neues Eingabebild
Wie lautet eine mögliche Alternative zu der Texture Advection?
Verblende das verzerrte Bild und das Eingabebild in jedem Schritt