Project 5: Vector Field / Flow Visualization

Ryan Miller -

Task 1 - Glyphs (threeplanes[.py])

This visualization introduced us to the vtkGlyph3D filter, with arrow glyphs being used in this task. The glyphs follow the direction of the velocity vector field, and correspond in color and size to the magnitude. The three planes serve as "slices" of the data, preventing the visual occlusion seen in subsequent tasks.

How were the locations of the planes chosen and what observations led to your decision?
To choose the most visually-interesting plane locations, I used a temporary slider that moved a single plane along the delta wing, sampling the velocity vector field in each location. From here, I noticed a few key spots where the velocity seemed to circulate around parts of the wing and reached varying (non-zero) velocity magnitudes. The front of the wing seemed to have the highest velocities in the data set, but the tail of the wing also showed a large disturbance.

Task 2 - Streamlines, Stream Tubes and Stream Surfaces

These visualizations also observed the velocity vector field, but instead used an integrative approach to construct streamlines, stream tubes, and a stream surface that follow the direction of the vector field.

How were the seeding locations chosen and how do they relate to the observations made in Task 1?
From Task 1, I realized the best seeding locations would either be in front, or behind the tail of the delta wing. For streamlines and stream tubes, I start the seed for them from the front of the wing, letting the natural flow allow them to swirl as they reach the tail of the wing. For the stream surface, however, starting from the front of the wing missed many important structures along the wing, so I instead start with a rake parallel to the tail and integrate backwards toward the front of the wing. Many of the parameters (ie., number of stream lines, location of rake) were chosen based on trial-and-error and seeing what looked best. I chose to make the stream surface somewhat transparent (opacity = 0.4) to show how the surface wraps around itself as the flow swirls.

Task 3 - Combination of Scalar and Vector Visualization (combination.[py])

The vorticity magnitude, although different from the data set for the last project, exhibits many of the same characteristics such as rippling recirculation near the front of the delta wing. Likewise, the stream lines wrap themselves around these vortices, showing a clear relation between the vorticity magnitude and the velocity vector field data. I made the isosurfaces somewhat transparent (opacity = 0.4-0.6) so streamlines swirling within the surfaces remain clear. The isosurface also gives clues as to why the streamlines appear the way they do, such as the rather straight streamlines near the center of the wing following the flat, broad area of the delta wing.

Describe the things you tried before arriving at the proposed solution and explain why your final selection is a good one.
I didn't need to adjust the streamline parameters very much once I found an adequate isosurface to represent the vorticity magnitude data. I used a similar technique from the last project, using sliders to find boundaries in data that I could represent with multiple surfaces (each using a color transfer function) for the final visualization. From here, I adjusted opacity until the streamlines remained clear, and I arrived at the visualization shown below.

Task 4 - Analysis

Considering your results in Task 1 and Task 2 of the assignment, comment on the effectiveness of the resulting visualizations.
Compared to the isosurfaces and volume rendering used in Project 3, visualizing stream lines, stream tubes, and stream surfaces provide entirely new insight into the flow of the vortices surrounding the delta wing. Isosurfaces only provide just that, a surface, which does not offer any information on movement. When looking at the velocity field surrounding a delta wing, movement becomes quite critical to visualize.

What were the pros and cons of each technique?
Glyphs in separate planes helped to isolate important areas in the data that can later be visualized by the integrative approaches. Stream lines, in particular, allow visualizing the flow of the velocity field with minimal occlusion in the visualization. Stream tubes and stream surfaces required more adjusting to be able to actually see important characteristics in the data. All techniques offer a slightly different look at the data, which makes them all important tools in the field of data visualization.

Comment on the results you were able to achieve in Task 3 by integrating isosurfacing and vector visualization. Was that useful? Why?
By combining an isosurface of the vorticity magnitude data along with streamlines following the velocity field surrounding the delta wing, we achieve the best of both worlds. We can see a clearly defined surface (thanks to isosurfacing's clearly defined boundaries around data), as well as information on movement and flow as the velocity field swirls around the resulting vortices. As the goal of visualization is to maximize the amount of information conveyed on screen, combining these two techniques offers and excellent way of achieve a more useful visualization.