Visualization techniques and methods
A D V E R T I S E M E N T
This chapter introduces the visualization techniques and methods which we
will apply on MHD data in the last chapter. The focus is on 3D scalar and vector
techniques, because often data consists of 3D scalar and vector fields. Since
color is involved in most techniques we start with a description of three
frequently used color coding systems.
- Color coding
- Classification of techniques
- Surface rendering techniques
- Volume rendering techniques
- Animation techniques
The first visualization technique discussed is the generation of isosurfaces.
Since the attributes consist of scalar data defined on a three dimensional grid,
isosurfaces served as a natural way to extract surface geometry for this data
set. By appropriate thresholding the colormap so that positive potential is
represented by red, and negative potential by blue, a visualization was
generated that indicated both the shape of the molecular orbits as well as their
potential. An example using this isosurface visualization technique is provided
Another isosurface techique used was to render semi-transparent isosurfaces.
This allowed the user to observe orbitals that were enveloped by other orbitals.
An example of this is shown below.
Another technique implemented in this project was volumetric rendering. As
mentioned in class, volumetric rendering allows the entire data set to be viewed
at once, and lets the user to "see inside" the data. For each pixel in an image
created using volumetric rendering, a ray is cast through the semi-transparent
volume. The resulting color at the pixel is a composite of all the voxels the
ray has intersected. As a consquence, such images tend to be blurry. Another
characteristic volumetric rendering is that it is typically slower than surface
rendering techniques. Volumetric renderings of this data set took over ten times
as long to generate; therefore, volumetric rendering of this data set was not
well suited for realtime visualization. However, it does provide features that
are obscured by surface rendering techniques. An example using volumetric
rendering is provided below.
Slicing was another technique applied to this data set. Slicing through the
grid with a plane provides the user with detailed information of scalar values
within the grid volume. To implement the slicing, I first generated a slice
plane that was positioned at the bottom of the grid volume and parallel to the
xy axis. Then, I moved the slice plane up the z axis incrementally until it
reached the top of the grid. Such a slice appears in the image below. By taking
slices, an animation was produced which shows how the value of the electron
potential through the volume.
Taking 2D contours through this data set was another visualization technique
explored in this project. These were produced by slicing the data using a plane
with a normal oriented up the x-axis, and then applying isosurfaces on the 2D
domain. These contours were found to offer detailed information about the shape
of the atomic orbitals, and were computed in a computationally efficient manner.
An example of this 2D contour technique is provided below.
Since the simulation consists of ten time steps of the system as the oxygen
atom approaches the carbon atom, the data set naturally lends itself to an
animation. The isosurface and volumetric rendering animations demonstrate the
motion and formation of molecular bonds. The slicing animation offers a closer
inspection of each frame. Animations are shown at the theatre.